/*!
Theme Name: LC Decoracion
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.5
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: lc-decoracion
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.

LC Decoracion 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

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

/*--------------------------------------------------------------
# STICKY FOOTER LAYOUT
--------------------------------------------------------------*/

/* Ensure html and body take full height */
html,
body {
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Main site container - Flexbox layout */
#page.site {
    min-height: 100vh !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Main content area - grows to fill available space */
#primary.site-main,
.site-main {
    flex: 1 !important;
    min-height: 0 !important; /* Prevents flex item from shrinking below content size */
}

/* Footer - always at bottom */
#colophon.site-footer,
.site-footer {
    flex-shrink: 0 !important;
    margin-top: auto !important;
}

/* Special handling for catalog page */
.catalogo-fullscreen #page.site {
    min-height: 100vh !important;
}

/* Ensure sidebar doesn't interfere with sticky footer */
#secondary.widget-area,
.widget-area {
    flex-shrink: 0 !important;
}

/* Handle pages with floating glassmorphism header */
body.page #page.site,
body.single #page.site,
body.archive #page.site,
body.home #page.site {
    min-height: 100vh !important;
}

/* Prevent conflicts with existing layout styles */
body.admin-bar #page.site {
    min-height: calc(100vh - 32px) !important;
}

@media screen and (max-width: 782px) {
    body.admin-bar #page.site {
        min-height: calc(100vh - 46px) !important;
    }
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

html {
	box-sizing: border-box;
}

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

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

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

p {
	margin-bottom: 1.5em;
}

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

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

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

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

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

big {
	font-size: 125%;
}

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

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

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

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

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

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

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

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

figure {
	margin: 1em 0;
}

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

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

a:visited {
	color: #800080;
}

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

a:focus {
	outline: thin dotted;
}

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

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

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

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

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	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;
}

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

/*--------------------------------------------------------------
# Shipping Features Section
--------------------------------------------------------------*/

/* Container utility */
.lcd-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.lcd-shipping-features {
	background: #f8f9fa;
	border-bottom: 1px solid #e9ecef;
	padding: 40px 0;
	width: 100%;
}

.lcd-features-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 40px;
	align-items: center;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.lcd-feature-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 20px;
	background: white;
	border-radius: 12px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
	transition: all 0.3s ease;
}

.lcd-feature-item:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.lcd-feature-icon {
	margin-bottom: 16px;
}

.lcd-feature-icon-svg {
	width: 48px;
	height: 48px;
	color: #333;
	stroke-width: 1.2;
}

.lcd-feature-title {
	font-size: 18px;
	font-weight: 600;
	color: #333;
	margin: 0 0 8px 0;
	line-height: 1.3;
}

.lcd-feature-description {
	font-size: 14px;
	color: #666;
	margin: 0;
	line-height: 1.4;
}

/* Footer compact version */
.lcd-shipping-features-footer {
	background: #333;
	color: white;
	padding: 20px 0;
	width: 100%;
	display: block;
}


.lcd-shipping-features-footer .lcd-features-grid {
	gap: 20px;
	padding: 0;
}

.lcd-shipping-features-footer .lcd-feature-item {
	flex-direction: row;
	text-align: left;
	padding: 12px;
	background: transparent;
	box-shadow: none;
	border-radius: 0;
}

.lcd-shipping-features-footer .lcd-feature-item:hover {
	transform: none;
	box-shadow: none;
}

.lcd-shipping-features-footer .lcd-feature-icon {
	margin-bottom: 0;
	margin-right: 12px;
}

.lcd-shipping-features-footer .lcd-feature-icon-svg {
	width: 28px;
	height: 28px;
	color: white;
}

.lcd-shipping-features-footer .lcd-feature-title {
	font-size: 14px;
	color: white;
	margin: 0 0 4px 0;
}

.lcd-shipping-features-footer .lcd-feature-description {
	font-size: 12px;
	color: #ccc;
}

/* Responsive Design */
@media (max-width: 1024px) {
	.lcd-features-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 30px;
	}
}

@media (max-width: 768px) {
	.lcd-shipping-features {
		padding: 30px 0;
		overflow: hidden;
	}

	.lcd-shipping-features .lcd-container {
		max-width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	.lcd-features-slider-wrapper {
		position: relative;
		overflow: hidden;
		padding: 0;
		width: 100%;
		margin: 0 auto;
	}

	/* Convert grid to flexbox for horizontal scrolling */
	.lcd-features-grid {
		display: flex;
		gap: 20px;
		align-items: center;
		padding: 0;
		max-width: none !important;
		margin: 0 !important;
		will-change: transform;
	}

	/* Footer shipping features - reset container width */
	.lcd-shipping-features-footer {
		overflow: hidden;
	}

	.lcd-shipping-features-footer .lcd-container {
		max-width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
		overflow: hidden;
		position: relative;
		width: 100%;
	}

	.lcd-shipping-features-footer .lcd-features-grid {
		display: flex !important;
		align-items: center;
		gap: 20px;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		will-change: transform;
	}

	.lcd-shipping-features-footer .lcd-feature-item {
		flex: 0 0 auto;
		min-width: 280px;
	}

	/* Show duplicates on mobile for seamless loop */
	.lcd-shipping-features-footer .lcd-feature-duplicate {
		display: flex !important;
	}

	.lcd-feature-item {
		flex: 0 0 auto;
		min-width: 280px;
		padding: 16px;
	}

	/* Show duplicates on mobile for seamless loop */
	.lcd-feature-duplicate {
		display: flex;
	}

	.lcd-feature-icon-svg {
		width: 40px;
		height: 40px;
	}

	.lcd-feature-title {
		font-size: 16px;
	}

	.lcd-feature-description {
		font-size: 13px;
	}
}

/* Hide duplicates on desktop/tablet */
@media (min-width: 769px) {
	.lcd-feature-duplicate,
	.lcd-shipping-features-footer .lcd-feature-duplicate {
		display: none !important;
	}
}

@media (max-width: 480px) {
	.lcd-feature-item {
		min-width: 240px;
	}

	.lcd-shipping-features-footer .lcd-features-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.lcd-shipping-features-footer .lcd-feature-item {
		flex-direction: column;
		text-align: center;
	}

	.lcd-shipping-features-footer .lcd-feature-icon {
		margin-right: 0;
		margin-bottom: 8px;
	}
}

/* Footer Site Info */
.site-footer .site-info {
	background: #222;
	color: #ccc;
	padding: 20px 0;
	border-top: 1px solid #444;
}

.site-info-content {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 16px;
}

.site-info-copyright {
	margin: 0;
	font-size: 14px;
}

.site-info-links {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 14px;
}

.site-info-links a,
.site-info-links a:visited {
	color: #fff;
	text-decoration: none;
	transition: opacity 0.3s ease;
}

.site-info-links a:hover {
	opacity: 0.7;
}

.site-info-separator {
	color: #666;
}

@media (max-width: 768px) {
	.site-info-content {
		flex-direction: column;
		text-align: center;
		gap: 12px;
	}
}

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

/*--------------------------------------------------------------
# LC Decoracion Header Styles
--------------------------------------------------------------*/

/* Header Layout */
.lcd-hero {
	background: #fefefe;
	border-bottom: 1px solid #e0e0e0;
	padding: 20px 0;
	position: sticky;
	top: 0;
	z-index: 1000;
	transition: box-shadow 0.3s ease, padding 0.3s ease;
}

.lcd-hero.scrolled {
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	padding: 10px 0;
}

.lcd-hero-content {
	transition: all 0.3s ease;
}

.lcd-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.lcd-brand-section {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	position: relative;
}

.lcd-brand-logo {
	display: flex;
	align-items: center;
}

.lcd-logo-img {
	max-height: 60px;
	width: auto;
	transition: transform 0.3s ease, max-height 0.3s ease;
}

.lcd-logo-img:hover {
	transform: scale(1.05);
}

.lcd-hero.scrolled .lcd-logo-img {
	max-height: 40px;
}

/* Mobile Menu Toggle */
.lcd-mobile-menu-toggle {
	display: none;
	flex-direction: column;
	background: none;
	border: none;
	cursor: pointer;
	padding: 8px;
	gap: 4px;
	order: 3;
	z-index: 1002;
}

.lcd-hamburger-line {
	width: 24px;
	height: 2px;
	background: #666;
	transition: all 0.3s ease;
	transform-origin: center;
	display: block;
}

.lcd-mobile-menu-toggle.active .lcd-hamburger-line:nth-child(1) {
	transform: rotate(45deg) translate(6px, 6px);
}

.lcd-mobile-menu-toggle.active .lcd-hamburger-line:nth-child(2) {
	opacity: 0;
}

.lcd-mobile-menu-toggle.active .lcd-hamburger-line:nth-child(3) {
	transform: rotate(-45deg) translate(6px, -6px);
}

/* User Actions */
.lcd-user-actions {
	display: flex;
	align-items: center;
	gap: 20px;
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 1px;
	order: 2;
}

.lcd-user-actions .lcd-icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	display: inline-block;
	vertical-align: middle;
}

.lcd-user-actions a,
.lcd-user-actions .lcd-currency {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #666;
	text-decoration: none;
	transition: color 0.3s ease;
}

.lcd-user-actions a:hover {
	color: #333;
}

.lcd-cart-count {
	font-weight: normal;
}

/* Mobile Styles */
@media (max-width: 768px) {
	.lcd-mobile-menu-toggle {
		display: flex !important;
	}

	.lcd-brand-nav {
		display: none;
	}

	.lcd-user-actions .lcd-text {
		display: none;
	}

	.lcd-user-actions {
		gap: 12px;
	}

	.lcd-user-actions .lcd-icon {
		width: 24px;
		height: 24px;
	}

	.lcd-cart-count {
		position: absolute;
		top: -8px;
		right: -8px;
		background: #e74c3c;
		color: white;
		border-radius: 10px;
		padding: 2px 6px;
		font-size: 0.7rem;
		line-height: 1;
		min-width: 16px;
		text-align: center;
	}

	.lcd-cart-link {
		position: relative;
	}
}

/* Mobile Menu Overlay */
.lcd-mobile-menu-overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.5);
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
	z-index: 999;
}

.lcd-mobile-menu-overlay.active {
	opacity: 1;
	visibility: visible;
}

/* Mobile Menu */
.lcd-mobile-menu {
	position: fixed;
	top: 0;
	right: -320px;
	width: 320px;
	height: 100vh;
	background: #fff;
	transition: right 0.3s ease;
	z-index: 1001;
	overflow-y: auto;
}

.lcd-mobile-menu.active {
	right: 0;
}

.lcd-mobile-menu-content {
	padding: 80px 30px 30px;
}

.lcd-mobile-nav {
	list-style: none;
	padding: 0;
	margin: 0;
}

.lcd-mobile-nav li {
	border-bottom: 1px solid #f0f0f0;
}

.lcd-mobile-nav li a {
	display: block;
	padding: 15px 0;
	color: #333;
	text-decoration: none;
	font-size: 1rem;
	text-transform: uppercase;
	letter-spacing: 1px;
	transition: color 0.3s ease;
}

.lcd-mobile-nav li a:hover {
	color: #666;
}

/* Mobile Navigation Dropdowns */
.lcd-mobile-nav .menu-item-has-children > a::after {
	content: '▼';
	float: right;
	font-size: 0.8rem;
	transition: transform 0.3s ease;
}

.lcd-mobile-nav .menu-item-has-children.open > a::after {
	transform: rotate(180deg);
}

.lcd-mobile-nav .sub-menu {
	display: none;
	background: #f8f8f8;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lcd-mobile-nav .menu-item-has-children.open .sub-menu {
	display: block;
}

.lcd-mobile-nav .sub-menu li {
	border-bottom: 1px solid #e8e8e8;
}

.lcd-mobile-nav .sub-menu li a {
	padding: 12px 20px;
	font-size: 0.9rem;
	color: #666;
}

.lcd-mobile-nav .sub-menu li a:hover {
	color: #333;
}

/* Desktop Navigation Dropdowns */
.lcd-main-nav {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 30px;
}

.lcd-main-nav li {
	position: relative;
}

.lcd-main-nav li a {
	text-decoration: none;
	color: #FFF;
	font-size: 0.9rem;
	text-transform: uppercase;
	letter-spacing: 1px;
	transition: color 0.3s ease, font-size 0.3s ease, padding 0.3s ease;
	display: flex;
	align-items: center;
	gap: 5px;
	padding: 5px 0;
}

.lcd-main-nav li a:hover {
	color: #333;
}

/* Dropdown Styles */
.lcd-main-nav .menu-item-has-children > a::after {
	content: '▼';
	font-size: 0.6rem;
	transition: transform 0.3s ease;
}

.lcd-main-nav .menu-item-has-children:hover > a::after {
	transform: rotate(180deg);
}

.lcd-main-nav .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	background: #fff;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
	border: 1px solid #e0e0e0;
	border-radius: 4px;
	min-width: 200px;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-10px);
	transition: all 0.3s ease;
	list-style: none;
	padding: 10px 0;
	margin: 0;
	z-index: 10000;
}

.lcd-main-nav .menu-item-has-children:hover .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.lcd-main-nav .sub-menu li {
	width: 100%;
}

.lcd-main-nav .sub-menu li a {
	padding: 12px 20px;
	display: block;
	color: #666;
	font-size: 0.85rem;
	text-transform: none;
	letter-spacing: 0.5px;
	border-bottom: 1px solid #f5f5f5;
}

.lcd-main-nav .sub-menu li:last-child a {
	border-bottom: none;
}

.lcd-main-nav .sub-menu li a:hover {
	background: #f8f8f8;
	color: #333;
}

/* Estilos específicos para submenu cuando header tiene clase scrolled */
.lcd-hero.scrolled .lcd-main-nav .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	background: #fff;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
	border: 1px solid #e0e0e0;
	border-radius: 4px;
	min-width: 200px;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-10px);
	transition: all 0.3s ease;
	list-style: none;
	padding: 10px 0;
	margin: 0;
	z-index: 10000;
}

.lcd-hero.scrolled .lcd-main-nav .menu-item-has-children:hover .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.lcd-hero.scrolled .lcd-main-nav .sub-menu li {
	width: 100%;
}

.lcd-hero.scrolled .lcd-main-nav .sub-menu li a {
	padding: 12px 20px;
	display: block;
	color: #666;
	font-size: 0.85rem;
	text-transform: none;
	letter-spacing: 0.5px;
	border-bottom: 1px solid #f5f5f5;
}

.lcd-hero.scrolled .lcd-main-nav .sub-menu li:last-child a {
	border-bottom: none;
}

.lcd-hero.scrolled .lcd-main-nav .sub-menu li a:hover {
	background: #f8f8f8;
	color: #333;
}

/* === DIMENSIONS AND QUANTITY ROW === */
.lcd-dimensions-quantity-row {
	display: flex;
	align-items: flex-start;
	gap: 20px;
}

/* === COMPARTIR PRODUCTO === */
.lcd-product-modal-share-section {
	text-align: center;
	/* min-width: 120px; */
}

.lcd-share-title {
	font-size: 14px;
	font-weight: 600;
	color: #333;
	margin-bottom: 10px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.lcd-product-modal-share {
	display: flex;
	justify-content: center;
}

.lcd-share-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f8f9fa;
	border: 2px solid #e9ecef;
	border-radius: 8px;
	padding: 0;
	color: #495057;
	cursor: pointer;
	transition: all 0.3s ease;
	text-decoration: none;
	width: 45px;
	height: 45px;
}

.lcd-share-btn:hover {
	background: #e9ecef;
	border-color: #dee2e6;
	color: #343a40;
	transform: translateY(-1px);
}

.lcd-share-btn:active {
	transform: translateY(0);
}

.lcd-share-btn svg {
	width: 24px;
	height: 24px;
	flex-shrink: 0;
	stroke: currentColor;
}

.lcd-share-text {
	font-weight: 500;
}

/* Responsive para botón compartir */
@media (max-width: 768px) {
	.lcd-dimensions-quantity-row {
		flex-direction: column;
		gap: 20px;
	}

	.lcd-product-modal-share-section {
		min-width: auto;
	}

	.lcd-share-btn {
		width: 60px;
		height: 60px;
	}

	.lcd-share-btn svg {
		width: 20px;
		height: 20px;
	}
}

/* === SINGLE PRODUCT PAGE === */
/* Override WooCommerce default styles */
body.single-product .woocommerce div.product {
	margin: 0 !important;
	padding: 0 !important;
}

body.single-product .woocommerce .summary {
	margin: 0 !important;
	padding: 0 !important;
}

/* Custom Breadcrumb Styles */
body.single-product .lc-breadcrumb-wrapper {
	/* background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
	margin: 0 0 30px 0 !important;
	padding: 15px 0 !important;
	border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
	position: relative !important; */
}

body.single-product .lc-breadcrumb-wrapper .container {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 0 20px !important;
}

body.single-product .woocommerce-breadcrumb {
	font-size: 14px !important;
	color: #6c757d !important;
	margin: 0 !important;
	font-weight: 500 !important;
}

body.single-product .woocommerce-breadcrumb a {
	color: #007cba !important;
	text-decoration: none !important;
	transition: all 0.3s ease !important;
	font-weight: 500 !important;
}

body.single-product .woocommerce-breadcrumb a:hover {
	color: #005a87 !important;
	text-decoration: none !important;
	transform: translateY(-1px) !important;
}

body.single-product .woocommerce-breadcrumb .breadcrumb-separator,
body.single-product .woocommerce-breadcrumb > span::after {
	content: '→' !important;
	margin: 0 12px !important;
	color: #adb5bd !important;
	font-weight: 300 !important;
}

body.single-product .lcd-single-product-page {
	padding: 0 !important;
	margin: 0 !important;
}

body.single-product .lcd-single-product-container {
	max-width: 1200px !important;
	margin: 40px auto !important;
	padding: 0 20px !important;
}

body.single-product .lcd-single-product-content {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 60px !important;
	align-items: start !important;
}

/* Single Product Images */
body.single-product .lcd-single-product-images {
	position: relative !important;
}

body.single-product .lcd-single-product-main-image {
	width: 100% !important;
	background: #f8f9fa !important;
	border-radius: 12px !important;
	overflow: hidden !important;
	aspect-ratio: 1 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
}

body.single-product .lcd-single-product-main-image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

body.single-product .lcd-single-product-thumbs {
	position: absolute !important;
	bottom: 15px !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	display: flex !important;
	gap: 8px !important;
	background: rgba(0, 0, 0, 0.6) !important;
	padding: 10px 15px !important;
	border-radius: 25px !important;
	backdrop-filter: blur(10px) !important;
	-webkit-backdrop-filter: blur(10px) !important;
	z-index: 10 !important;
}

body.single-product .lcd-single-product-thumb {
	width: 50px !important;
	height: 50px !important;
	background: #f8f9fa !important;
	border-radius: 6px !important;
	overflow: hidden !important;
	cursor: pointer !important;
	opacity: 0.7 !important;
	transition: all 0.3s ease !important;
	border: 2px solid transparent !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

body.single-product .lcd-single-product-thumb:hover {
	opacity: 1 !important;
	transform: scale(1.1) !important;
	border-color: rgba(255, 255, 255, 0.8) !important;
}

body.single-product .lcd-single-product-thumb.active {
	opacity: 1 !important;
	border-color: #fff !important;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.5) !important;
}

body.single-product .lcd-single-product-thumb img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

/* Single Product Details */
.lcd-single-product-details {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.lcd-single-product-info h1 {
	font-size: 32px;
	font-weight: 700;
	color: #333;
	margin: 0 0 20px 0;
	line-height: 1.2;
}

.lcd-single-product-price-section {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 25px;
}

.lcd-sale-badge-single {
	background: #e74c3c;
	color: white;
	padding: 6px 12px;
	border-radius: 6px;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.lcd-single-product-price {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 24px;
	font-weight: 600;
}

.lcd-single-product-price .lcd-sale-price.is-on-sale {
	color: #e74c3c;
}

.lcd-single-product-price .lcd-regular-price {
	text-decoration: line-through;
	color: #666;
	font-size: 20px;
}

.lcd-single-product-description {
	color: #666;
	line-height: 1.6;
	font-size: 16px;
}

.lcd-single-product-description p {
	margin-bottom: 15px;
}

/* Single Product Options */
.lcd-single-product-options {
	display: flex;
	flex-direction: column;
	gap: 25px;
}

.lcd-single-product-variations {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.lcd-single-product-actions {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

/* Make sure all the existing modal styles work for single product page */
.lcd-single-product-page .lcd-variation-group,
.lcd-single-product-page .lcd-variation-options,
.lcd-single-product-page .lcd-variation-option,
.lcd-single-product-page .lcd-dimensions-quantity-row,
.lcd-single-product-page .lcd-product-modal-dimensions,
.lcd-single-product-page .lcd-dimensions-header,
.lcd-single-product-page .lcd-dimensions-values,
.lcd-single-product-page .lcd-product-modal-quantity-section,
.lcd-single-product-page .lcd-quantity-title,
.lcd-single-product-page .lcd-product-modal-quantity,
.lcd-single-product-page .lcd-quantity-controls,
.lcd-single-product-page .lcd-quantity-btn,
.lcd-single-product-page .lcd-product-modal-share-section,
.lcd-single-product-page .lcd-product-modal-share,
.lcd-single-product-page .lcd-share-btn,
.lcd-single-product-page .lcd-add-to-cart-btn,
.lcd-single-product-page .lcd-shipping-note {
	/* These inherit the existing modal styles */
}

/* Responsive Design for Single Product */
@media (max-width: 768px) {
	/* Mobile breadcrumb styles */
	body.single-product .lc-breadcrumb-wrapper {
		padding: 0 !important;
		margin: 0 !important;
	}

	body.single-product .lc-breadcrumb-wrapper .container {
		padding: 0 15px !important;
	}

	body.single-product .woocommerce-breadcrumb {
		font-size: 13px !important;
		margin-bottom: 0 !important;
	}

	body.single-product .woocommerce-breadcrumb .breadcrumb-separator,
	body.single-product .woocommerce-breadcrumb > span::after {
		margin: 0 8px !important;
	}

	/* Mobile primary content area */
	body.single-product #primary.content-area {
		margin-top: 130px !important;
	}

	/* Mobile image thumbs styles */
	body.single-product .lcd-single-product-thumbs {
		bottom: 10px !important;
		padding: 8px 12px !important;
		gap: 6px !important;
	}

	body.single-product .lcd-single-product-thumb {
		width: 45px !important;
		height: 45px !important;
	}

	body.single-product .lcd-single-product-container {
		margin-top: 0 !important;
		margin-bottom: 20px !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding: 0 15px !important;
	}

	body.single-product .lcd-single-product-content {
		display: flex !important;
		flex-direction: column;
		gap: 30px;
	}

	.lcd-single-product-info h1 {
		font-size: 26px;
	}

	.lcd-single-product-price {
		font-size: 20px;
	}

	.lcd-single-product-thumb {
		width: 60px;
		height: 60px;
	}

	.lcd-dimensions-quantity-row {
		flex-direction: column;
		gap: 20px;
	}

	.lcd-single-dimensions,
	.lcd-product-modal-dimensions {
		width: 95% !important;
	}

	.lcd-product-modal-share-section {
		display: none !important;
	}

	.lcd-product-modal-quantity-section {
		width: 100% !important;
		padding: 0 5% !important;
	}

	.lc-reviews-carousel-container {
		padding: 0 5% !important;
	}

	.lcd-single-product-description ul {
		margin: 0;
	}
}

/* === PRODUCT MODAL STYLES === */
.lcd-product-modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10000;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
}

.lcd-product-modal.active {
	opacity: 1;
	visibility: visible;
}

.lcd-product-modal-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.8);
	cursor: pointer;
}

.lcd-product-modal-content {
	position: relative;
	width: 90%;
	max-width: 1200px;
	height: 90%;
	max-height: 800px;
	margin: 5% auto;
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
	transform: scale(0.8);
	transition: transform 0.3s ease;
}

.lcd-product-modal.active .lcd-product-modal-content {
	transform: scale(1);
}

.lcd-product-modal-close {
	position: absolute;
	top: 20px;
	right: 20px;
	background: none;
	border: none;
	font-size: 2rem;
	color: #999;
	cursor: pointer;
	z-index: 10001;
	transition: color 0.3s ease;
}

.lcd-product-modal-close:hover {
	color: #333;
}

.lcd-product-modal-inner {
	display: flex;
	height: 100%;
}

.lcd-product-modal-images {
	flex: 1;
	padding: 0;
	background: #f8f8f8;
	position: relative;
}

/* Thumbnails floating over the image */
.lcd-product-modal-thumbs {
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	flex-direction: row;
	gap: 8px;
	z-index: 10;
	background: rgba(0, 0, 0, 0.5);
	padding: 10px;
	border-radius: 8px;
	backdrop-filter: blur(5px);
}

.lcd-product-modal-thumb {
	width: 50px;
	height: 50px;
	border: 2px solid transparent;
	cursor: pointer;
	transition: all 0.3s ease;
	overflow: hidden;
	border-radius: 6px;
}

.lcd-product-modal-thumb.active,
.lcd-product-modal-thumb:hover {
	border-color: #fff;
	transform: scale(1.1);
}

.lcd-product-modal-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Main image container - improved sizing */
.lcd-product-modal-main-image {
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
	background: #fff;
}

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

.lcd-product-modal-details {
	flex: 1;
	padding: 40px;
	display: flex;
	flex-direction: column;
	gap: 0px;
	overflow-y: auto;
}

.lcd-product-modal-info h2 {
	font-size: 1.8rem;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin: 0 0 15px 0;
	color: #333;
	line-height: 1.3;
}

.lcd-product-modal-price {
	font-size: 1.2rem;
	color: #666;
	margin-bottom: 20px;
	font-weight: 500;
	display: flex;
	align-items: center;
	gap: 12px;
}

.lcd-sale-badge-modal {
	display: inline-block;
	background: #e74c3c;
	color: #fff;
	padding: 4px 8px;
	font-size: 0.75rem;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 1px;
	border-radius: 3px;
	margin-bottom: 8px;
}

.lcd-sale-price {
	font-size: 1.4rem;
	font-weight: 600;
	color: #333;
}

.lcd-sale-price.is-on-sale {
	color: #e74c3c;
}

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

.lcd-product-modal-description {
	color: #666;
	line-height: 1.6;
	font-size: 0.95rem;
}

.lcd-kueski-banner {
	margin-bottom: 40px;
}

.lcd-modal-variations {
	margin-bottom: 20px;
}

.lcd-modal-variations:empty {
	margin-bottom: 0;
}

.lcd-product-modal-description p {
	margin-bottom: 15px;
}

.lcd-product-modal-description ul,
.lcd-product-modal-description ol {
	margin-left: 20px;
	margin-bottom: 15px;
}

.lcd-product-modal-variations {
	margin-bottom: 20px;
}

.lcd-variation-group {
	margin-bottom: 20px;
}

.lcd-variation-group h4 {
	font-size: 0.9rem;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 10px;
	color: #333;
	font-weight: 500;
}

.lcd-variation-options {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.lcd-variation-option {
	padding: 8px 16px;
	border: 1px solid #ddd;
	background: #fff;
	cursor: pointer;
	transition: all 0.3s ease;
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	border-radius: 3px;
}

.lcd-variation-option:hover,
.lcd-variation-option.selected {
	background: #333;
	color: #fff;
	border-color: #333;
}

/* Product Dimensions */
.lcd-product-modal-dimensions {
	flex: 1;
}

.lcd-dimensions-header {
	display: flex;
	justify-content: space-between;
	margin-bottom: 8px;
	color: #666;
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.lcd-dimensions-values {
	display: flex;
	justify-content: space-between;
	color: #333;
	font-size: 0.9rem;
	font-weight: 500;
}

.lcd-dimensions-values .no-data {
	color: #999;
	font-style: italic;
}

/* Quantity Section */
.lcd-product-modal-quantity-section {
	margin-bottom: 30px;
}

.lcd-quantity-title {
	font-size: 0.9rem;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #333;
	font-weight: 500;
	margin: 0 0 10px 0;
	display: none;
}

.lcd-product-modal-quantity {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.lcd-quantity-controls {
	display: flex;
	align-items: center;
	border: 1px solid #ddd;
	border-radius: 3px;
	overflow: hidden;
}

.lcd-quantity-btn {
	width: 40px;
	height: 40px;
	border: none;
	background: #f8f8f8;
	color: #333;
	cursor: pointer;
	font-size: 1.2rem;
	font-weight: bold;
	transition: background 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
}

.lcd-quantity-btn:hover {
	background: #e8e8e8;
}

.lcd-quantity-btn:active {
	background: #ddd;
}

.lcd-product-modal-quantity input {
	width: 60px;
	height: 40px;
	padding: 0;
	border: none;
	text-align: center;
	font-size: 1rem;
	background: #fff;
	outline: none;
}

.lcd-add-to-cart-btn {
	background: #333;
	color: #fff;
	border: none;
	padding: 15px 30px;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-size: 0.85rem;
	cursor: pointer;
	transition: background 0.3s ease;
	width: 100%;
	border-radius: 3px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	line-height: 1.2;
}

.lcd-add-to-cart-btn:hover {
	background: #555;
}

.lcd-add-to-cart-btn:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.lcd-cart-btn-text {
	font-size: 0.9rem;
}

.lcd-cart-btn-price {
	font-size: 0.8rem;
	font-weight: normal;
	opacity: 0.9;
}

.lcd-shipping-note {
	margin-top: 15px;
	font-size: 0.75rem;
	color: #666;
	line-height: 1.4;
	text-align: left;
	margin-bottom: 0;
}

/* Mobile Modal Styles */
@media (max-width: 768px) {
	.lcd-product-modal-content {
		width: 95%;
		height: 90vh;
		max-height: 90vh;
		margin: 5vh auto;
	}

	.lcd-product-modal-inner {
		flex-direction: column;
	}

	.lcd-product-modal-images {
		flex: 0 0 40%;
		padding: 0;
		position: relative;
		max-height: 40vh;
	}

	.lcd-product-modal-thumbs {
		position: absolute;
		bottom: 10px;
		left: 50%;
		transform: translateX(-50%);
		display: flex;
		flex-direction: row;
		gap: 6px;
		z-index: 10;
		background: rgba(0, 0, 0, 0.5);
		padding: 8px;
		border-radius: 8px;
		backdrop-filter: blur(5px);
	}

	.lcd-product-modal-thumb {
		width: 40px;
		height: 40px;
		border: 2px solid transparent;
		cursor: pointer;
		transition: all 0.3s ease;
		overflow: hidden;
		border-radius: 6px;
	}

	.lcd-product-modal-thumb.active,
	.lcd-product-modal-thumb:hover {
		border-color: #fff;
		transform: scale(1.1);
	}

	.lcd-product-modal-thumb img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.lcd-product-modal-main-image {
		width: 100%;
		height: 100%;
		display: block;
		overflow: hidden;
		background: #fff;
	}

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

	.lcd-product-modal-details {
		flex: 1;
		padding: 20px;
		gap: 20px;
	}

	.lcd-product-modal-info h2 {
		font-size: 1.4rem;
	}

	.lcd-product-modal-close {
		top: 10px;
		right: 10px;
		font-size: 1.5rem;
	}

	.lcd-single-dimensions,
	.lcd-product-modal-dimensions {
		width: 95% !important;
	}

	.lcd-product-modal-share-section {
		display: none !important;
	}

	.lcd-product-modal-quantity-section {
		width: 100% !important;
		padding: 0 5% !important;
	}

	.lc-reviews-carousel-container {
		padding: 0 5% !important;
	}
}

/* ===============================================
   WOOCOMMERCE CART STYLING - LC DECORACIÓN
   =============================================== */

/* Cart Page Container */
.lc-cart-page {
	max-width: 1200px;
	margin: 90px auto 0;
	padding: 0;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.lc-cart-container {
	background: #ffffff;
	border-radius: 12px;
	overflow: hidden;
	margin-top: 60px!important;
	box-shadow: 0 0 0 0 transparent!important;
}

/* Cart Header */
.lc-cart-header {
	/* background: linear-gradient(135deg, #1f2937 0%, #374151 100%);
	color: white;
	padding: 32px;
	border-radius: 12px;
	margin-bottom: 32px; */
	/* box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); */
	background: linear-gradient(135deg, #1f2937 0%, #374151 100%)!important;
	color: white!important;
	padding: 32px!important;
	border-radius: 12px!important;
	margin-bottom: 32px!important;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1)!important;
}
.lc-checkout-button {
	width: 100%;
	background: #000;
	color: white!important;
	padding: 12px 24px;
	border: none;
	border-radius: 8px;
	font-size: 1rem;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.3s ease;
	text-decoration: none;
	display: flex;
    justify-content: space-between;
}
.lc-checkout-button .lc-next-arrow {
	margin-left: 8px;
	width: 25px!important;
	height: 25px!important;
	vertical-align: middle;
	fill: white;
	color: #fff !important;
    stroke: #fff !important;
}
.lc-checkout-button:hover {
	background: #333333;
    transform: translateY(-2px);
    box-shadow: 0 8px 15px -3px rgba(0, 0, 0, 0.3);
    color: white !important;
}
.lc-continue-shopping-wrapper a, .lc-continue-shopping-wrapper a:hover {
	color: #000;
	text-decoration: none;
}
.lc-continue-shopping-wrapper a svg {
	display: none;
}

/* Payment Steps */
.lc-payment-steps {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	position: relative;
}

.lc-step {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	position: relative;
	z-index: 2;
}

.lc-step-circle {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.2);
	border: 2px solid rgba(255, 255, 255, 0.3);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 12px;
	transition: all 0.3s ease;
	position: relative;
}

.lc-step-number {
	font-size: 1.125rem;
	font-weight: 600;
	color: white;
	transition: all 0.3s ease;
}

.lc-step-check {
	width: 20px;
	height: 20px;
	stroke-width: 3;
	opacity: 0;
	transition: all 0.3s ease;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.lc-step-info {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.lc-step-title {
	font-size: 0.875rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.9);
}

.lc-step-description {
	font-size: 0.75rem;
	color: rgba(255, 255, 255, 0.7);
}

.lc-step-connector {
	width: 80px;
	height: 2px;
	background: rgba(255, 255, 255, 0.2);
	position: relative;
	z-index: 1;
}

.lc-step-connector::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	background: rgba(255, 255, 255, 0.6);
	width: 0;
	transition: width 0.3s ease;
}

/* Active Step */
.lc-step-active .lc-step-circle {
	background: rgba(255, 255, 255, 0.9);
	border-color: white;
}

.lc-step-active .lc-step-number {
	color: #667eea;
}

.lc-step-active .lc-step-title {
	color: white;
}

/* Completed Step */
.lc-step-completed .lc-step-circle {
	background: rgba(255, 255, 255, 0.9);
	border-color: white;
}

.lc-step-completed .lc-step-number {
	opacity: 0;
}

.lc-step-completed .lc-step-check {
	opacity: 1;
	color: #667eea;
}

.lc-step-completed .lc-step-title {
	color: white;
}

.lc-step-completed + .lc-step-connector::after {
	width: 100%;
}

/* Empty Cart Styling */
.lc-cart-empty {
	text-align: center;
	padding: 80px 40px;
	color: #6b7280;
}

.lc-empty-cart-icon {
	margin: 0 0 24px 0;
	color: #000000;
}

.lc-empty-cart-icon svg {
	width: 40px;
	height: 40px;
	max-width: 40px;
	max-height: 40px;
}

.lc-cart-empty h2 {
	font-size: 1.875rem;
	font-weight: 600;
	color: #374151;
	margin: 0 0 12px 0;
}

.lc-cart-empty p {
	font-size: 1.125rem;
	margin: 0 0 32px 0;
}

.lc-continue-shopping {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	color: white;
	text-decoration: none;
	padding: 14px 28px;
	border-radius: 8px;
	font-weight: 600;
	transition: all 0.2s;
}

.lc-continue-shopping:hover {
	transform: translateY(-1px);
	box-shadow: 0 8px 15px -3px rgba(0, 0, 0, 0.1);
	color: white;
}

/* Cart Content Layout */
.lc-cart-content {
	display: grid;
	grid-template-columns: 1fr 350px;
	gap: 30px;
	padding: 30px;
}

/* Cart Content Header */
.lc-cart-content-header {
	grid-column: 1 / -1;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 2px solid #e2e8f0;
}

.lc-cart-content-title {
	margin: 0;
	font-size: 1.875rem;
	font-weight: 600;
	color: #1f2937;
}

.lc-cart-content-count {
	background: #f3f4f6;
	color: #374151;
	padding: 8px 16px;
	border-radius: 20px;
	font-weight: 600;
	font-size: 0.875rem;
}

/* Cart Items Table */
.lc-cart-items {
	overflow-x: auto;
	border-radius: 12px;
}

/* Cart Actions Section - Outside of table */
.lc-cart-actions-section {
	margin-top: 20px;
	padding: 20px;
	background: #f8fafc;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
}

.lc-cart-items .shop_table {
	width: 100%;
	border-collapse: collapse;
	background: white;
	border-radius: 8px;
	border: 1px solid #ebebeb;
	/* overflow: hidden; */
	/* margin: 0!important; */
}

.lc-cart-items .shop_table thead {
	background: #f8fafc;
	border-bottom: 2px solid #e2e8f0;
}

.lc-cart-items .shop_table th {
	padding: 16px;
	text-align: left;
	font-weight: 600;
	color: #374151;
	font-size: 0.875rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.lc-cart-items .shop_table td {
	padding: 20px 16px;
	border-bottom: 1px solid #f1f5f9;
	vertical-align: middle;
}

.lc-cart-items .shop_table tbody tr:hover {
	background: #fafafa;
}

/* Fix WooCommerce cart image width */
.woocommerce-cart table.cart img {
	width: auto !important;
	max-width: 80px !important;
	height: auto !important;
}

/* Cart Item Image */
.lc-cart-item-image {
	width: 80px;
	height: 80px;
	border-radius: 8px;
	overflow: hidden;
	background: #f8fafc;
}

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

/* Cart Item Details */
.lc-cart-item-details .lc-product-name {
	color: #1f2937;
	text-decoration: none;
	font-weight: 600;
	font-size: 1.125rem;
}

.lc-cart-item-details .lc-product-name:hover {
	color: #667eea;
}

/* Cart Item Price */
.lc-cart-item-price {
	font-weight: 600;
	color: #000000;
	font-size: 1.125rem;
}

/* WooCommerce price formatting to match product pages */
.woocommerce-cart .amount {
	font-weight: 700;
	color: #000000;
	font-size: 15px;
}

.woocommerce-cart del .amount {
	color: #999999;
	text-decoration: none;
	font-weight: 400;
	font-size: 15px;
}

.woocommerce-cart ins .amount {
	color: #000000;
	text-decoration: none;
	font-weight: 700;
	font-size: 16px;
}


/* Add MXN currency to discounted prices */
.woocommerce-cart ins .amount:after {
	content: " MXN";
	font-size: 14px;
	font-weight: 400;
	color: #666;
	margin-left: 4px;
}

/* Apply same styling to subtotal */
.lc-cart-item-subtotal {
	display: flex;
	flex-direction: column-reverse;
	align-items: flex-end;
	gap: 2px;
}

/* Multi-Step Cart Forms */
.lc-step-form {
	background: white;
	border-radius: 12px;
	padding: 32px;
	box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
	margin-bottom: 24px;
}

/* Cart Items Replacement - Match exact positioning */
.lc-cart-items-replacement {
	/* Match the exact styles of .lc-cart-items */
	background: white;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
	padding: 0;
	margin-bottom: 0;
}

.lc-cart-items-replacement .lc-step-form-header {
	padding: 32px;
	margin-bottom: 0;
	border-bottom: 1px solid #f1f5f9;
}

.lc-cart-items-replacement .lc-customer-info-form,
.lc-cart-items-replacement .lc-payment-form {
	padding: 32px;
}

.lc-step-form-header {
	text-align: center;
	margin-bottom: 32px;
}

.lc-step-form-header h2 {
	font-size: 1.875rem;
	font-weight: 700;
	color: #1f2937;
	margin-bottom: 8px;
}

.lc-step-form-header p {
	color: #6b7280;
	font-size: 1rem;
}

.lc-form-row {
	margin-bottom: 24px;
}

.lc-form-row-dual {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.lc-form-group {
	display: flex;
	flex-direction: column;
}

.lc-form-group label {
	font-weight: 600;
	color: #374151;
	margin-bottom: 8px;
	font-size: 0.875rem;
}

.lc-form-group input {
	padding: 12px 16px;
	border: 2px solid #e5e7eb;
	border-radius: 8px;
	font-size: 16px;
	transition: border-color 0.2s ease;
}

.lc-form-group input:focus {
	outline: none;
	border-color: #000000;
	box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.1);
}

.lc-form-actions {
	display: flex;
	gap: 16px;
	margin-top: 32px;
}

.lc-back-button,
.lc-continue-button,
.lc-place-order-button {
	flex: 1;
	padding: 16px 24px;
	border-radius: 8px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.2s ease;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-size: 16px;
	border: none;
}

.lc-back-button {
	background: #f3f4f6;
	color: #374151;
}

.lc-back-button:hover {
	background: #e5e7eb;
	transform: translateY(-1px);
}

.lc-continue-button,
.lc-place-order-button {
	background: #000000;
	color: white;
}

.lc-continue-button:hover,
.lc-place-order-button:hover {
	background: #333333;
	transform: translateY(-2px);
	box-shadow: 0 8px 15px -3px rgba(0, 0, 0, 0.3);
}

/* Step indicators */
.lc-step-completed .lc-step-circle {
	background: #000000;
	color: white;
}

.lc-step-completed .lc-step-number {
	display: none;
}

.lc-step-completed .lc-step-check {
	display: block;
}

.lc-step-check {
	display: none;
	width: 16px;
	height: 16px;
}

/* Payment Methods */
.lc-payment-methods {
	margin-bottom: 24px;
}

.lc-payment-methods h3 {
	font-size: 1.25rem;
	font-weight: 600;
	color: #1f2937;
	margin-bottom: 16px;
}

.lc-payment-option {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px;
	border: 2px solid #e5e7eb;
	border-radius: 8px;
	margin-bottom: 12px;
	cursor: pointer;
	transition: all 0.2s ease;
}

.lc-payment-option:hover {
	border-color: #d1d5db;
}

.lc-payment-option input[type="radio"] {
	margin: 0;
}

.lc-payment-option label {
	margin: 0;
	cursor: pointer;
	font-weight: 500;
	color: #374151;
}

@media (max-width: 768px) {
	.lc-step-form {
		padding: 24px 16px;
	}

	.lc-form-row-dual {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.lc-form-actions {
		flex-direction: column;
	}

	.lc-step-form-header h2 {
		font-size: 1.5rem;
	}
}

/* Cart Quantity */
.lc-cart-quantity-wrapper .quantity input[type="number"] {
	width: 70px;
	padding: 8px 12px;
	border: 2px solid #e5e7eb;
	border-radius: 6px;
	text-align: center;
	font-weight: 600;
	transition: border-color 0.2s;
}

.lc-cart-quantity-wrapper .quantity input[type="number"]:focus {
	outline: none;
	border-color: #667eea;
	box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

/* Cart Item Subtotal */
.lc-cart-item-subtotal {
	font-weight: 700;
	color: #000000;
	font-size: 1.25rem;
}

/* Cart Item Remove */
.lc-cart-item-remove .remove {
	color: #ef4444;
	text-decoration: none;
	padding: 8px;
	border-radius: 6px;
	transition: all 0.2s;
	display: inline-flex;
}

.lc-cart-item-remove .remove:hover {
	background: #fef2f2;
	color: #dc2626;
}

/* Cart Actions Row */
.lc-cart-actions-row td {
	background: #f8fafc;
	padding: 24px 16px !important;
}

.lc-cart-actions {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
}

.lc-cart-coupon .coupon {
	display: flex;
	gap: 8px;
}

.lc-cart-coupon input[type="text"] {
	padding: 12px 16px;
	border: 2px solid #e5e7eb;
	border-radius: 6px;
	font-size: 0.875rem;
	min-width: 200px;
	transition: border-color 0.2s;
}

.lc-cart-coupon input[type="text"]:focus {
	outline: none;
	border-color: #667eea;
}

/* Unified Button Styles for Cart */
.lc-cart-coupon button,
.lc-cart-update button,
.lc-next-step-button,
.lc-checkout-section .checkout-button {
	background: #000000;
	color: white !important;
	border: none;
	padding: 16px 24px;
	border-radius: 8px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.2s ease;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-size: 16px;
	width: 100%;
}

.lc-cart-coupon button:hover,
.lc-cart-update button:hover,
.lc-next-step-button:hover,
.lc-checkout-section .checkout-button:hover {
	background: #333333;
	transform: translateY(-2px);
	box-shadow: 0 8px 15px -3px rgba(0, 0, 0, 0.3);
	color: white !important;
}

.lc-cart-coupon button:visited,
.lc-cart-update button:visited,
.lc-next-step-button:visited,
.lc-checkout-section .checkout-button:visited {
	color: white !important;
}

/* Cart Sidebar (Totals) */
.lc-cart-sidebar {
	position: sticky;
	top: 20px;
	height: fit-content;
}

.lc-cart-totals {
	background: #f8fafc;
	border-radius: 12px;
	padding: 24px;
	border: 1px solid #e2e8f0;
}

.lc-cart-totals-header h2 {
	margin: 0 0 20px 0;
	font-size: 1.5rem;
	font-weight: 600;
	color: #1f2937;
}

.lc-cart-totals .shop_table {
	width: 100%;
	margin-bottom: 24px;
}

.lc-cart-totals .shop_table th,
.lc-cart-totals .shop_table td {
	padding: 12px 0;
	border-bottom: 1px solid #e2e8f0;
}

.lc-cart-totals .shop_table th {
	font-weight: 500;
	color: #6b7280;
}

.lc-cart-totals .shop_table td {
	text-align: right;
	font-weight: 600;
	color: #1f2937;
}

.lc-cart-totals .order-total th,
.lc-cart-totals .order-total td {
	font-size: 1.25rem;
	font-weight: 700;
	color: #000000;
	border-bottom: 2px solid #000000;
	padding-top: 16px;
}

/* Checkout Section */
.lc-checkout-section {
	margin: 0;
}





.lc-next-arrow {
	width: 20px;
	height: 20px;
	stroke-width: 2;
	color: white;
}

.lc-continue-shopping-wrapper {
	margin-top: 16px;
	text-align: center;
}

.lc-continue-shopping-link {
	color: #6b7280;
	text-decoration: underline;
	font-size: 0.875rem;
	display: inline-block;
	transition: color 0.2s;
}

.lc-continue-shopping-link:hover {
	color: #667eea;
}

/* Trust Badges - HIDDEN */
.lc-trust-badges {
	display: none;
}

.lc-trust-item {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #000000;
	font-size: 0.875rem;
	font-weight: 500;
}

.lc-trust-item svg {
	width: 40px;
	height: 40px;
	max-width: 40px;
	max-height: 40px;
}

/* Global icon sizing for all cart icons */
.lc-cart-page svg,
.lc-cart-container svg,
.lc-checkout-section svg,
.lc-trust-badges svg,
.lc-empty-cart-icon svg,
.lc-continue-shopping-link svg {
	width: 40px;
	height: 40px;
	max-width: 40px;
	max-height: 40px;
	color: #000000;
	stroke: #000000;
	fill: none !important;
}

/* Exception for remove buttons - keep smaller */
.lc-cart-item-remove svg {
	width: 20px !important;
	height: 20px !important;
	max-width: 20px !important;
	max-height: 20px !important;
}

/* Responsive Design */
@media (max-width: 1024px) {
	.lc-cart-content {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.lc-cart-sidebar {
		position: static;
	}
}

@media (max-width: 768px) {
	.lc-cart-page {
		padding: 10px;
	}

	.lc-cart-header {
		padding: 24px;
	}

	.lc-cart-content-header {
		flex-direction: column;
		gap: 12px;
		text-align: center;
	}

	.lc-cart-content-title {
		font-size: 1.5rem;
	}

	/* Mobile Payment Steps */
	.lc-payment-steps {
		gap: 0;
		justify-content: space-between;
	}

	.lc-step-circle {
		width: 40px;
		height: 40px;
		margin-bottom: 8px;
	}

	.lc-step-number {
		font-size: 1rem;
	}

	.lc-step-title {
		font-size: 0.75rem;
	}

	.lc-step-description {
		font-size: 0.65rem;
	}

	.lc-step-connector {
		width: 50px;
	}

	.lc-step-check {
		width: 16px;
		height: 16px;
	}

	.lc-cart-content {
		padding: 20px;
	}

	/* Make table responsive */
	.lc-cart-items .shop_table,
	.lc-cart-items .shop_table thead,
	.lc-cart-items .shop_table tbody,
	.lc-cart-items .shop_table th,
	.lc-cart-items .shop_table td,
	.lc-cart-items .shop_table tr {
		display: block;
	}

	.lc-cart-items .shop_table thead tr {
		position: absolute;
		top: -9999px;
		left: -9999px;
	}

	.lc-cart-items .shop_table tr {
		border: 1px solid #e2e8f0;
		border-radius: 8px;
		margin-bottom: 16px;
		padding: 16px;
	}

	.lc-cart-items .shop_table td {
		border: none;
		position: relative;
		padding: 12px 0 12px 120px;
		text-align: right;
	}

	.lc-cart-items .shop_table td:before {
		content: attr(data-title) ": ";
		position: absolute;
		left: 0;
		width: 110px;
		padding-right: 10px;
		white-space: nowrap;
		font-weight: 600;
		color: #6b7280;
	}

	.lc-cart-items .shop_table td.product-thumbnail,
	.lc-cart-items .shop_table td.product-name {
		padding-left: 0;
		text-align: left;
	}

	.lc-cart-items .shop_table td.product-thumbnail:before,
	.lc-cart-items .shop_table td.product-name:before {
		display: none;
	}

	.lc-cart-actions {
		flex-direction: column;
		align-items: stretch;
		gap: 16px;
	}

	.lc-cart-coupon .coupon {
		flex-direction: column;
		gap: 12px;
	}

	.lc-cart-coupon input[type="text"] {
		min-width: 100%;
		width: 100%;
	}

	.lc-cart-coupon button {
		width: 100%;
	}
}

@media (max-width: 480px) {
	.lc-cart-empty {
		padding: 60px 20px;
	}

	.lc-cart-empty h2 {
		font-size: 1.5rem;
	}

	.lc-cart-totals {
		padding: 16px;
	}

	.lc-trust-badges {
		grid-template-columns: 1fr;
	}
}

/* ================================
   CHECKOUT PAGE STYLES
   ================================ */

/* Hide coupon toggle in checkout */
.woocommerce-form-coupon-toggle {
	display: none !important;
}

/* Remove max-width and padding from checkout body */
body.woocommerce-checkout {
	max-width: none !important;
	padding: 0 !important;
}

.woocommerce-checkout {
	max-width: none !important;
	padding: 0 !important;
}

/* Full width checkout in content header */
.lc-checkout-content-header .woocommerce-checkout {
	width: 100% !important;
}

/* Hide trust badges in checkout sidebar */
.lc-checkout-sidebar .lc-trust-badges {
	display: none !important;
}

/* Make step 1 clickable */
.lc-step-clickable {
	cursor: pointer !important;
	transition: opacity 0.2s ease !important;
}

.lc-step-clickable:hover {
	opacity: 0.8 !important;
}

/* Checkout Container */
.lc-checkout-page {
	max-width: 1200px;
	margin: 0 auto;
	background: #f8fafc;
	margin-top: 140px;
}

.lc-checkout-container {
	background: #f8fafc;
	border-radius: 16px;
}

/* Checkout Header - Same as Cart */
.lc-checkout-header {
	background: linear-gradient(135deg, #1f2937 0%, #374151 100%);
	color: white;
	padding: 32px;
	border-radius: 12px;
	margin-bottom: 32px;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

/* Checkout Content Layout */
.lc-checkout-content {
	display: grid;
	grid-template-columns: 1fr 400px;
	gap: 32px;
	align-items: start;
}

.lc-checkout-content-header {
	grid-column: 1 / -1;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 24px;
}

.lc-checkout-content-title {
	font-size: 1.875rem;
	font-weight: 700;
	color: #1f2937;
	margin: 0;
}

.lc-checkout-content-count {
	background: #e5e7eb;
	color: #374151;
	padding: 8px 16px;
	border-radius: 20px;
	font-size: 0.875rem;
	font-weight: 500;
}

/* Checkout Form */
.lc-checkout-form {
	display: grid;
	grid-template-columns: 1fr 400px;
	gap: 32px;
	grid-column: 1 / -1;
	width: 100%;
}

/* Checkout Details */
.lc-checkout-details {
	background: white;
	border-radius: 12px;
	padding: 32px;
	box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
}

.lc-customer-details h3 {
	font-size: 1.25rem;
	font-weight: 600;
	color: #1f2937;
	margin-bottom: 24px;
	padding-bottom: 12px;
	border-bottom: 2px solid #f1f5f9;
}

.lc-billing-details,
.lc-shipping-details {
	margin-bottom: 32px;
}

.lc-shipping-details:last-child {
	margin-bottom: 0;
}

/* Checkout Sidebar */
.lc-checkout-sidebar {
	position: sticky;
	top: 20px;
	height: fit-content;
}

.lc-order-review {
	background: #f8fafc;
	border-radius: 12px;
	padding: 24px 0 0 0;
	/* box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1); */
}

.lc-order-review h3 {
	font-size: 1.25rem;
	font-weight: 600;
	color: #1f2937;
	margin-bottom: 24px;
	text-align: center;
}

/* WooCommerce Field Overrides */
.lc-checkout-form .form-row {
	margin-bottom: 20px;
}

.lc-checkout-form .form-row label {
	font-weight: 600;
	color: #374151;
	margin-bottom: 8px;
	display: block;
	font-size: 0.875rem;
}

.lc-checkout-form .form-row input,
.lc-checkout-form .form-row select,
.lc-checkout-form .form-row textarea {
	width: 100%;
	padding: 12px 16px;
	border: 2px solid #e5e7eb;
	border-radius: 8px;
	font-size: 16px;
	transition: border-color 0.2s ease;
	background: white;
}

.lc-checkout-form .form-row input:focus,
.lc-checkout-form .form-row select:focus,
.lc-checkout-form .form-row textarea:focus {
	outline: none;
	border-color: #000000;
	box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.1);
}

/* Payment Methods */
.lc-checkout-form .wc_payment_methods {
	background: white;
	border-radius: 8px;
	overflow: hidden;
	border: 1px solid #e5e7eb;
}

.lc-checkout-form .wc_payment_method {
	border-bottom: 1px solid #f1f5f9;
	padding: 16px;
}

.lc-checkout-form .wc_payment_method:last-child {
	border-bottom: none;
}

.lc-checkout-form .wc_payment_method label {
	font-weight: 500;
	color: #374151;
	cursor: pointer;
	margin: 0;
}

/* Place Order Button */
.lc-checkout-form #place_order {
	width: 100%;
	background: #000000;
	color: white !important;
	border: none;
	padding: 16px 24px;
	border-radius: 8px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.2s ease;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-size: 16px;
	margin-top: 24px;
}

.lc-checkout-form #place_order:hover {
	background: #333333;
	transform: translateY(-2px);
	box-shadow: 0 8px 15px -3px rgba(0, 0, 0, 0.3);
	color: white !important;
}

/* Responsive Design */
@media (max-width: 1024px) {
	.lc-checkout-content,
	.lc-checkout-form {
		grid-template-columns: 1fr;
	}

	.lc-checkout-content-header {
		grid-column: 1;
	}

	.lc-checkout-sidebar {
		position: static;
		order: -1;
	}
}

@media (max-width: 768px) {
	.lc-checkout-container {
		padding: 20px;
	}

	.lc-checkout-header {
		padding: 24px;
	}

	.lc-checkout-details {
		padding: 24px;
	}

	.lc-order-review {
		padding: 20px;
	}

	.lc-checkout-content-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}

	.lc-checkout-content-title {
		font-size: 1.5rem;
	}

	/* Reorder: Billing info first, then order summary */
	.lc-checkout-form {
		display: flex;
		flex-direction: column;
	}

	.lc-checkout-main {
		order: 1;
	}

	.lc-checkout-sidebar {
		order: 2;
		position: static;
	}
}

/* ===============================================
   WOOCOMMERCE NOTIFICATIONS STYLING
   =============================================== */

/* WooCommerce Notices - Fixed Bottom Toast Style */
.woocommerce-notices-wrapper {
    position: fixed !important;
    bottom: 30px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 9999 !important;
    max-width: 500px !important;
    width: calc(100% - 40px) !important;
    pointer-events: none !important;
}

.woocommerce-notices-wrapper * {
    pointer-events: auto !important;
}

.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-notice {
    background: rgba(60, 60, 60, 0.95) !important;
    color: white !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 16px 20px !important;
    margin-bottom: 10px !important;
    text-align: center !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    animation: slideInUp 0.3s ease-out !important;
}

/* Remove default list styling and icons */
.woocommerce-notices-wrapper .woocommerce-message::before,
.woocommerce-notices-wrapper .woocommerce-info::before,
.woocommerce-notices-wrapper .woocommerce-error::before,
.woocommerce-notices-wrapper .woocommerce-notice::before {
    display: none !important;
}

/* Success messages - slightly green tint */
.woocommerce-notices-wrapper .woocommerce-message {
    background: rgba(34, 197, 94, 0.9) !important;
    border: 1px solid rgba(34, 197, 94, 0.3) !important;
}

/* Error messages - slightly red tint */
.woocommerce-notices-wrapper .woocommerce-error {
    background: rgba(239, 68, 68, 0.9) !important;
    border: 1px solid rgba(239, 68, 68, 0.3) !important;
}

/* Info messages - slightly blue tint */
.woocommerce-notices-wrapper .woocommerce-info {
    background: rgba(59, 130, 246, 0.9) !important;
    border: 1px solid rgba(59, 130, 246, 0.3) !important;
}

/* Remove any links styling */
.woocommerce-notices-wrapper a {
    color: white !important;
    text-decoration: underline !important;
}

.woocommerce-notices-wrapper a:hover {
    color: rgba(255, 255, 255, 0.8) !important;
}

/* Auto-hide animation */
.woocommerce-notices-wrapper.lc-auto-hide {
    animation: slideOutDown 0.3s ease-in forwards !important;
}

@keyframes slideInUp {
    from {
        opacity: 0;
        transform: translateY(100%);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideOutDown {
    from {
        opacity: 1;
        transform: translateY(0);
    }
    to {
        opacity: 0;
        transform: translateY(100%);
    }
}

/* Mobile responsiveness */
@media (max-width: 640px) {
    .woocommerce-notices-wrapper {
        max-width: calc(100% - 20px) !important;
        width: calc(100% - 20px) !important;
        bottom: 20px !important;
    }

    .woocommerce-notices-wrapper .woocommerce-message,
    .woocommerce-notices-wrapper .woocommerce-info,
    .woocommerce-notices-wrapper .woocommerce-error,
    .woocommerce-notices-wrapper .woocommerce-notice {
        padding: 14px 16px !important;
        font-size: 13px !important;
    }
}

/* ================================
   HEADER GLASSMORPHISM DESIGN
   ================================ */

/* Site Header with Glassmorphism Design */
.site-header,
.lcd-custom-header.lcd-hero {
	position: sticky !important;
	top: 0;
	z-index: 1000;
	position: relative;
	overflow: visible;
}

/* Base background with border-radius on pseudo-element */
.site-header::after,
.lcd-custom-header.lcd-hero::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(255, 255, 255, 0.7);
	backdrop-filter: blur(10px);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 72px;
	z-index: -1;
	pointer-events: none;
	transition: all 0.5s ease;
}

/* Pseudo-elemento para el gradiente opaco con transición */
.site-header::before,
.lcd-custom-header.lcd-hero::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(135deg,
		rgba(255, 255, 255, 0.75) 0%,
		rgba(255, 255, 255, 0.78) 25%,
		rgba(255, 255, 255, 0.82) 50%,
		rgba(255, 255, 255, 0.98) 75%,
		rgba(255, 255, 255, 1) 100%);
	opacity: 0;
	transition: opacity 0.5s ease;
	pointer-events: none;
	border-radius: 72px;
	z-index: -1;
}

/* Cuando tiene glass-opaque, mostrar el gradiente y hacer el fondo más opaco */
#masthead.site-header.glass-opaque::before,
.site-header.glass-opaque::before,
.site-header.lcd-hero.glass-opaque::before,
#masthead.glass-opaque::before,
.lcd-hero.glass-opaque::before,
.lcd-custom-header.lcd-hero.glass-opaque::before {
	opacity: 1;
}

#masthead.site-header.glass-opaque::after,
.site-header.glass-opaque::after,
.site-header.lcd-hero.glass-opaque::after,
#masthead.glass-opaque::after,
.lcd-hero.glass-opaque::after,
.lcd-custom-header.lcd-hero.glass-opaque::after {
	background: rgba(255, 255, 255, 0.95);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

/* Logo-only header for cart and checkout pages */
.site-header.logo-only-header {
	width: fit-content;
	width: -moz-fit-content;
}

.site-header.logo-only-header .lcd-container {
	max-width: none;
	width: auto;
	display: block;
	padding: 15px 20px;
}

.site-header.logo-only-header .lcd-hero-content {
	width: auto;
	display: block;
}

.site-header.logo-only-header .lcd-brand-section {
	justify-content: flex-start;
	width: auto;
}

.site-header.logo-only-header .lcd-brand-logo {
	margin: 0;
}

.site-header .lcd-hero,
.lcd-custom-header.lcd-hero .lcd-container {
	max-width: 1400px;
	margin: 0 auto;
	padding: 12px 24px;
	border-radius: 0;
	background: transparent !important;
	box-shadow: none !important;
	position: relative;
	z-index: 10;
}

/* Header content styling */
.site-header .lcd-hero .site-branding,
.site-header .lcd-hero .main-navigation,
.site-header .lcd-hero .header-actions,
.lcd-custom-header.lcd-hero .lcd-brand-section,
.lcd-custom-header.lcd-hero .lcd-nav-section,
.lcd-custom-header.lcd-hero .lcd-actions-section {
	background: transparent !important;
}

/* Navigation links styling - only for top-level menu items */
.site-header .main-navigation > div > ul > li > a,
.lcd-custom-header.lcd-hero .lcd-nav-section > ul > li > a {
	color: #1f2937 !important;
	font-weight: 500;
	transition: all 0.3s ease;
}

.site-header .main-navigation > div > ul > li > a:hover,
.lcd-custom-header.lcd-hero .lcd-nav-section > ul > li > a:hover {
	color: #374151 !important;
	background: rgba(31, 41, 55, 0.1) !important;
	border-radius: 8px;
	padding: 8px 12px;
}

/* Header actions (cart, user icons) */
.site-header .header-actions a,
.lcd-custom-header.lcd-hero .lcd-actions-section a {
	background: rgba(255, 255, 255, 0.3) !important;
	border: 1px solid rgba(255, 255, 255, 0.2) !important;
	backdrop-filter: blur(5px);
	transition: all 0.3s ease;
}

.site-header .header-actions a:hover,
.lcd-custom-header.lcd-hero .lcd-actions-section a:hover {
	background: rgba(255, 255, 255, 0.5) !important;
	border-color: rgba(255, 255, 255, 0.4) !important;
	transform: translateY(-1px);
}

/* Logo styling */
.site-header .site-branding a,
.lcd-custom-header.lcd-hero .lcd-brand-logo a {
	color: #1f2937 !important;
	font-weight: 700;
}

/* Mobile menu button */
.site-header .menu-toggle,
.lcd-custom-header.lcd-hero .lcd-mobile-menu-toggle {
	background: rgba(255, 255, 255, 0.3) !important;
	border: 1px solid rgba(255, 255, 255, 0.2) !important;
	backdrop-filter: blur(5px);
	border-radius: 8px;
}

.site-header .menu-toggle:hover,
.lcd-custom-header.lcd-hero .lcd-mobile-menu-toggle:hover {
	background: rgba(255, 255, 255, 0.5) !important;
}

/* Responsive adjustments */
@media (max-width: 1440px) {
	.site-header .lcd-hero,
	.lcd-custom-header.lcd-hero .lcd-container {
		max-width: 95%;
		padding: 12px 20px;
	}
}

@media (max-width: 768px) {
	.site-header .lcd-hero,
	.lcd-custom-header.lcd-hero .lcd-container {
		padding: 10px 16px;
	}

	.site-header .main-navigation > div > ul > li > a:hover,
	.lcd-custom-header.lcd-hero .lcd-nav-section > ul > li > a:hover {
		padding: 6px 10px;
	}
}

/* ========================================
   PACKAGING BOX STYLES - Checkout
   ======================================== */

/* Packaging box row in checkout */
.lc-packaging-box-row {
	background-color: #f9f9f9;
	border-top: none !important;
}

.lc-packaging-box-row td {
	border-top: none !important;
}

/* Checkbox label styling */
.lc-packaging-box-checkbox {
	width: 18px;
	height: 18px;
	cursor: pointer;
	accent-color: #1f2937;
}

.lc-packaging-box-row label {
	cursor: pointer;
	user-select: none;
	transition: color 0.2s ease;
}

.lc-packaging-box-row label:hover {
	color: #1f2937;
}

.lc-packaging-box-row strong {
	color: #1f2937;
}

/* Order details styling */
.lc-packaging-boxes-order-details {
	margin-top: 20px;
	padding: 15px;
	background: #f8f9fa;
	border: 1px solid #dee2e6;
	border-radius: 4px;
}

.lc-packaging-boxes-order-details h3 {
	margin-top: 0;
	margin-bottom: 15px;
	color: #1f2937;
	font-size: 1.2em;
}

.lc-packaging-boxes-order-details table {
	width: 100%;
	border-collapse: collapse;
}

.lc-packaging-boxes-order-details th {
	font-weight: 600;
	color: #1f2937;
	padding: 8px;
}

.lc-packaging-boxes-order-details td {
	padding: 8px;
}

/* Mobile responsive */
@media (max-width: 768px) {
	.lc-packaging-box-row td {
		padding-left: 20px !important;
	}

	.lc-packaging-box-row label {
		font-size: 0.85em;
	}

	.lc-packaging-boxes-order-details {
		overflow-x: auto;
	}

	.lc-packaging-boxes-order-details table {
		font-size: 0.9em;
	}

	.lc-packaging-boxes-order-details th,
	.lc-packaging-boxes-order-details td {
		padding: 6px;
	}
}

/* ========================================
   CLIENT LOGOS SLIDER
   ======================================== */

.lcd-client-logos-section {
	padding: 60px 0;
	background: #ffffff;
	overflow: hidden;
}

.lcd-client-logos-title {
	text-align: center;
	font-size: 18px;
	font-weight: 600;
	color: #333;
	margin-bottom: 10px;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.lcd-client-logos-slider-wrapper {
	overflow: hidden;
	position: relative;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}

.lcd-client-logos-slider {
	display: flex;
	align-items: center;
	gap: 60px;
	will-change: transform;
}

.lcd-client-logo-item {
	flex: 0 0 auto;
	width: 250px;
	height: 120px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	transition: transform 0.3s ease;
}

.lcd-client-logo-item a,
.lcd-client-logo-no-link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.lcd-client-logo-item img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	filter: grayscale(100%);
	opacity: 0.6;
	transition: all 0.3s ease;
}

.lcd-client-logo-item a:hover img,
.lcd-client-logo-item a:focus img {
	filter: grayscale(0%);
	opacity: 1;
	transform: scale(1.05);
}

/* Fade effect on edges */
.lcd-client-logos-slider-wrapper::before,
.lcd-client-logos-slider-wrapper::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	width: 100px;
	pointer-events: none;
	z-index: 10;
}

.lcd-client-logos-slider-wrapper::before {
	left: 0;
	background: linear-gradient(to right, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
}

.lcd-client-logos-slider-wrapper::after {
	right: 0;
	background: linear-gradient(to left, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
}

/* Responsive */
@media (max-width: 768px) {
	.lcd-client-logos-section {
		padding: 40px 0;
	}

	.lcd-client-logos-title {
		font-size: 1.4rem;
		margin-bottom: 30px;
	}

	.lcd-client-logos-slider {
		gap: 40px;
	}

	.lcd-client-logo-item {
		width: 150px;
		height: 80px;
		padding: 15px;
	}

	.lcd-client-logos-slider-wrapper::before,
	.lcd-client-logos-slider-wrapper::after {
		width: 50px;
	}
}

@media (max-width: 480px) {
	.lcd-client-logos-section {
		padding: 30px 0;
	}

	.lcd-client-logos-title {
		font-size: 1.2rem;
		margin-bottom: 20px;
	}

	.lcd-client-logos-slider {
		gap: 30px;
	}

	.lcd-client-logo-item {
		width: 120px;
		height: 60px;
		padding: 10px;
	}

	.lcd-client-logos-slider-wrapper::before,
	.lcd-client-logos-slider-wrapper::after {
		width: 30px;
	}
}
