/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/
/* --- SKINSOUS: DESIGN SYSTEM TOKENS --- */
:root {
	/* Brand Colors */
	--skinsous-ivory: #FAF7F2;
	--skinsous-cream: #F2EDE4;
	--skinsous-warm-sand: #E8DDD0;
	--skinsous-gold: #B8965A;
	--skinsous-ink: #1A1917;
	--skinsous-muted: #7A756D;

	/* Animation Patterns */
	--ease-out-quint: cubic-bezier(0.23, 1, 0.32, 1);
	--ease-in-out-cubic: cubic-bezier(0.645, 0.045, 0.355, 1);
	--ease-out-cubic: cubic-bezier(0.33, 1, 0.68, 1);
	--duration-fast: 150ms;
	--duration-normal: 300ms;
	--duration-slow: 500ms;
}

/* --- EXPERT MOTION SYSTEM --- */
.js-reveal-up,
.js-reveal-item,
.js-reveal-img,
.js-reveal-grid .product {
	opacity: 0;
	visibility: hidden;
	will-change: transform, opacity;
}

/* Fallback for users who disable JS or prefer reduced motion */
.no-js .js-reveal-up,
.no-js .js-reveal-item,
.no-js .js-reveal-img {
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
}

@media (prefers-reduced-motion: reduce) {

	.js-reveal-up,
	.js-reveal-item,
	.js-reveal-img,
	.js-reveal-grid .product {
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
	}
}

/* ── Mobile failsafe ──────────────────────────────────────────
   On screens ≤ 921 px (all phones & most tablets), GSAP
   animations are non-essential and CDN latency can prevent the
   scripts from executing before the user scrolls. Force every
   reveal target to be visible so shop product images never
   disappear on mobile.
   ──────────────────────────────────────────────────────────── */
@media (max-width: 921px) {

	.js-reveal-up,
	.js-reveal-item,
	.js-reveal-img,
	.js-reveal-grid .product,
	.products .product,
	.woocommerce ul.products,
	.woocommerce ul.products li.product,
	.astra-shop-thumbnail-wrap,
	.skinsous-interactive-wrap,
	.skinsous-utility-bar {
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		transition: none !important;
		display: flex !important;
	}

	.woocommerce ul.products {
		display: grid !important;
	}
}


html.lenis {
	height: auto;
}

.lenis.lenis-smooth {
	scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
	overscroll-behavior: contain;
}

.lenis.lenis-stopped {
	overflow: hidden;
}

.lenis.lenis-scrolling iframe {
	pointer-events: none;
}

html {
	scroll-behavior: smooth;
	overflow-x: hidden;
}

body {
	overflow-x: hidden;
}

body.skinsous-modal-open {
	overflow: hidden !important;
	height: 100vh !important;
}


/* Global Hover/Active Patterns */
.button,
.skinsous-quick-buy,
.skinsous-cod-submit,
#place_order,
.woocommerce-LoopProduct-link {
	transition: transform var(--duration-fast) var(--ease-out-quint),
		background-color var(--duration-fast) var(--ease-out-quint),
		box-shadow var(--duration-fast) var(--ease-out-quint) !important;
}

.button:active,
.skinsous-quick-buy:active,
.skinsous-cod-submit:active,
#place_order:active {
	transform: scale(0.97) !important;
}

#skinsous-quick-buy,
#skinsous-cod-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 420px;
	padding: 18px 20px;
	border: none;
	border-radius: 50px;
	background: var(--skinsous-ink);
	color: var(--skinsous-ivory);
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	cursor: pointer;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

#skinsous-quick-buy:hover,
#skinsous-cod-submit:hover {
	opacity: 0.9;
	transform: scale(1.02);
}

/* Subtle Conversion Pulse */
@keyframes skinsousPulse {
	0% {
		box-shadow: 0 0 0 0 rgba(26, 25, 23, 0.4);
	}

	70% {
		box-shadow: 0 0 0 10px rgba(26, 25, 23, 0);
	}

	100% {
		box-shadow: 0 0 0 0 rgba(26, 25, 23, 0);
	}
}

.skinsous-product-cta__button {
	animation: skinsousPulse 2s infinite;
}

#skinsous-cod-submit:disabled {
	opacity: 0.65;
	cursor: not-allowed;
}

.skinsous-modal {
	--skinsous-ivory: #faf7f2;
	--skinsous-cream: #f2ede4;
	--skinsous-warm-sand: #e8ddd0;
	--skinsous-gold: #b8965a;
	--skinsous-ink: #1a1917;
	--skinsous-charcoal: #2c2a27;
	--skinsous-muted: #7a756d;
	--skinsous-font-display: "Cormorant Garamond", Georgia, serif;
	--skinsous-font-body: "DM Sans", sans-serif;
	--skinsous-font-ar: "Noto Serif Arabic", serif;
	position: fixed !important;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.7);
	display: none;
	align-items: center;
	justify-content: center;
	z-index: 99990 !important;
	font-family: var(--skinsous-font-body);
}

.skinsous-modal.is-open {
	display: flex !important;
}

.skinsous-modal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(26, 25, 23, 0.55);
	backdrop-filter: blur(2px);
}

.skinsous-modal__dialog {
	background: #ffffff;
	width: 96%;
	max-width: 480px;
	padding: 0;
	position: relative;
	max-height: 94vh;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;

	border-radius: 12px;
	box-sizing: border-box;
	margin: 0;
	border: 1px solid var(--skinsous-warm-sand);
	color: var(--skinsous-charcoal);
	box-shadow: 0 30px 90px rgba(26, 25, 23, 0.25);
}

.skinsous-modal__header {
	padding: 24px 24px 16px;
	border-bottom: 1px solid var(--skinsous-cream);
	text-align: center;
}

#skinsous-modal-title {
	margin: 0;
	font-family: var(--skinsous-font-display);
	font-size: 24px;
	font-weight: 400;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--skinsous-ink);
}

.skinsous-modal__body {
	padding: 24px;
}

.skinsous-modal__close {
	position: absolute;
	top: 18px;
	right: 18px;
	border: none;
	background: rgba(26, 25, 23, 0.05);
	width: 32px;
	height: 32px;
	border-radius: 50%;
	color: var(--skinsous-ink);
	font-size: 18px;
	cursor: pointer;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.2s ease;
}

.skinsous-modal__close:hover {
	background: rgba(26, 25, 23, 0.1);
}

/* Choice Cards for Quantity */
.skinsous-qty {
	display: grid;
	gap: 12px;
	margin-bottom: 24px;
}

.skinsous-qty__option {
	position: relative;
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	padding: 16px;
	border: 1px solid var(--skinsous-warm-sand);
	border-radius: 8px;
	cursor: pointer;
	background: #fff;
	box-sizing: border-box;
	transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
}

.skinsous-qty__option:hover {
	border-color: var(--skinsous-gold);
	background: var(--skinsous-ivory);
}

.skinsous-qty__option.is-active {
	border: 2px solid var(--skinsous-gold);
	background-color: var(--skinsous-ivory);
	box-shadow: 0 4px 12px rgba(184, 150, 90, 0.1);
}

.skinsous-qty__option input {
	margin: 0;
	accent-color: var(--skinsous-gold);
	width: 18px;
	height: 18px;
}

.skinsous-qty__text {
	flex: 1;
	font-size: 14px;
	font-weight: 500;
	color: var(--skinsous-ink);
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.skinsous-qty__discount {
	font-size: 11px;
	font-weight: 700;
	color: #c43e1c;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.skinsous-qty__price {
	display: inline-flex;
	gap: 8px;
	align-items: center;
	font-size: 13px;
	margin-top: 4px;
}

.skinsous-qty__price del {
	color: var(--skinsous-muted);
	font-weight: 400;
}

.skinsous-qty__price strong {
	font-weight: 700;
	color: var(--skinsous-gold);
}

/* Form Fields */
.skinsous-field {
	margin-bottom: 16px;
}

.skinsous-field input {
	width: 100%;
	height: 52px;
	padding: 12px 16px;
	border: 1px solid var(--skinsous-warm-sand);
	border-radius: 8px;
	background: #fdfdfd;
	color: var(--skinsous-ink);
	font-size: 15px;
	font-family: var(--skinsous-font-body);
	transition: all 0.2s ease;
}

.skinsous-field input:focus {
	outline: none;
	border-color: var(--skinsous-gold);
	background: #fff;
	box-shadow: 0 0 0 4px rgba(184, 150, 90, 0.08);
}

/* Summary Refinement */
.skinsous-summary {
	margin: 24px 0;
	padding: 20px;
	background: var(--skinsous-cream);
	border-radius: 8px;
}

.skinsous-summary__row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 6px 0;
	font-size: 14px;
	color: var(--skinsous-muted);
}

.skinsous-summary__row strong {
	color: var(--skinsous-ink);
}

.skinsous-summary__row--total {
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid rgba(26, 25, 23, 0.1);
	font-size: 18px;
	font-weight: 700;
	color: var(--skinsous-ink);
}

.skinsous-summary__row--total strong {
	color: var(--skinsous-gold);
	font-size: 20px;
}

/* Submit Button */
#skinsous-cod-submit {
	height: 58px;
	font-size: 15px;
	border-radius: 8px;
	background: var(--skinsous-ink);
	letter-spacing: 0.05em;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

.skinsous-cod-note {
	text-align: center;
	font-size: 12px;
	color: var(--skinsous-muted);
	margin-top: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
}

.skinsous-cod-note svg {
	color: #4CAF50;
}


/* Skinsous WooCommerce Thank You page */
.woocommerce-order,
.woocommerce-customer-details {
	background-color: var(--skinsous-ivory);
	color: var(--skinsous-ink);
	font-family: "DM Sans", sans-serif;
	border: 1px solid var(--skinsous-warm-sand);
	border-radius: 2px;
	padding: 16px;
}

.woocommerce-order p,
.woocommerce-order h2,
.woocommerce-order h3,
.woocommerce-order address,
.woocommerce-customer-details p,
.woocommerce-customer-details h2,
.woocommerce-customer-details h3,
.woocommerce-customer-details address {
	color: var(--skinsous-ink);
	font-family: "DM Sans", sans-serif;
}

.woocommerce-order .woocommerce-notice,
.woocommerce-order .woocommerce-thankyou-order-received,
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	background: var(--skinsous-ivory);
	color: var(--skinsous-ink);
	border: 1px solid var(--skinsous-warm-sand);
	border-top: 2px solid var(--skinsous-gold);
	box-shadow: none;
}

.woocommerce-order ul.woocommerce-order-overview {
	background: var(--skinsous-ivory);
	border: 1px solid var(--skinsous-warm-sand);
}

.woocommerce-order .woocommerce-table--order-details,
.woocommerce-order .woocommerce-table--order-details th,
.woocommerce-order .woocommerce-table--order-details td {
	border: 1px solid var(--skinsous-warm-sand);
}

.woocommerce-order .woocommerce-table--order-details {
	background: var(--skinsous-ivory);
	font-family: "DM Sans", sans-serif;
	color: var(--skinsous-ink);
	border-collapse: collapse;
}

.woocommerce-order .woocommerce-table--order-details thead th {
	background: var(--skinsous-cream);
	color: var(--skinsous-ink);
}

.woocommerce-order .woocommerce-table--order-details tbody tr:nth-child(even) {
	background: var(--skinsous-cream);
}

.woocommerce-order .woocommerce-table--order-details tfoot th,
.woocommerce-order .woocommerce-table--order-details tfoot td {
	background: var(--skinsous-ivory);
	color: var(--skinsous-ink);
}

/* ═══════════════════════════════════════════════════════════════
   SKINSOUS MOBILE DRAWER — Premium Navigation Experience
   ═══════════════════════════════════════════════════════════════ */

/* --- Drawer Overlay (dark backdrop) --- */
/* Couche 2 : au-dessus du contenu de page + header, en dessous du drawer */
#skinsous-drawer-overlay {
	position: fixed;
	inset: 0;
	background: rgba(26, 25, 23, 0.5);
	z-index: 99990 !important;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1),
		visibility 0.35s cubic-bezier(0.23, 1, 0.32, 1);
	cursor: pointer;
}

#skinsous-drawer-overlay.is-visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

/* CORRECTION NUCLEAIRE : quand le menu Astra est ouvert,
   le custom overlay NE DOIT JAMAIS bloquer les interactions */
body.ast-main-header-nav-open #skinsous-drawer-overlay {
	display: none !important;
	pointer-events: none !important;
	opacity: 0 !important;
	visibility: hidden !important;
}

@media (max-width: 921px) {

	/* ── Header Bar ── */
	/* Couche 1 : au-dessus du contenu de page, en dessous de l'overlay et du drawer */
	.ast-mobile-header-wrap {
		position: sticky !important;
		top: 0 !important;
		z-index: 999 !important;
		background-color: var(--skinsous-ivory) !important;
		border-bottom: 1px solid var(--skinsous-warm-sand);
	}

	/* Quand le menu est ouvert, le header passe sous l'overlay */
	body.ast-main-header-nav-open .ast-mobile-header-wrap {
		z-index: 99 !important;
	}

	.ast-mobile-header-wrap img {
		max-height: 30px;
		width: auto;
	}

	/* Hamburger + Cart icon touch targets (min 44×44) */
	.ast-mobile-header-wrap .menu-toggle,
	.ast-mobile-header-wrap .ast-mobile-menu-trigger-minimal,
	.ast-mobile-header-wrap .ast-header-cart-link,
	.ast-mobile-header-wrap .ast-site-header-cart-li a {
		color: var(--skinsous-ink) !important;
		background: transparent !important;
		border: 0 !important;
		min-width: 44px;
		min-height: 44px;
		padding: 10px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	.ast-mobile-header-wrap .menu-toggle .ast-mobile-svg,
	.ast-mobile-header-wrap .menu-toggle .ast-menu-toggle-icon,
	.ast-mobile-header-wrap .ast-header-cart-link .ast-icon svg,
	.ast-mobile-header-wrap .ast-site-header-cart-li a .ast-icon svg {
		fill: var(--skinsous-ink) !important;
		color: var(--skinsous-ink) !important;
	}

	/* ── Drawer Panel (legacy off-canvas) ── */
	/* Couche 3 : au-dessus de l'overlay */
	.ast-mobile-header-wrap .ast-mobile-header-content,
	.ast-mobile-header-content {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		bottom: 0 !important;
		width: 82% !important;
		max-width: 360px !important;
		height: 100% !important;
		background-color: var(--skinsous-ivory) !important;
		opacity: 1 !important;
		z-index: 999999 !important;
		transform: translateX(-100%) !important;
		visibility: hidden;
		transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1),
			visibility 0.2s cubic-bezier(0.25, 1, 0.5, 1),
			box-shadow 0.2s cubic-bezier(0.25, 1, 0.5, 1) !important;
		display: flex !important;
		flex-direction: column !important;
		padding-top: 0 !important;
		overflow-y: auto !important;
		overflow-x: hidden !important;
		overscroll-behavior: contain;
		-webkit-overflow-scrolling: touch;
		box-shadow: none !important;
		border: none !important;
		border-right: 1px solid var(--skinsous-warm-sand) !important;
	}

	/* ── Astra Header Builder Popup Drawer ── */
	/* Couche 3 : le popup et son contenu doivent etre au-dessus de TOUT */
	.ast-mobile-popup-drawer {
		position: fixed !important;
		z-index: 999999 !important;
		transition: all 0.2s ease !important;
	}

	/* Overlay natif Astra : cliquable, transition rapide */
	.ast-mobile-popup-overlay {
		cursor: pointer !important;
		transition: opacity 0.2s ease !important;
	}

	/* Popup inner : transition rapide */
	.ast-mobile-popup-inner {
		transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1) !important;
	}

	/* ── INTERACTION RECOVERY ── */
	/* Forcer l'interactivite sur TOUS les elements du menu mobile */
	.ast-mobile-popup-inner,
	.ast-mobile-popup-inner a,
	.ast-mobile-popup-inner button,
	.ast-mobile-popup-inner .menu-item,
	.ast-mobile-popup-inner .menu-item>a,
	.ast-mobile-header-content,
	.ast-mobile-header-content a,
	.ast-mobile-header-content button,
	.ast-mobile-header-content .menu-item,
	.ast-mobile-header-content .menu-item>a,
	.ast-popup-nav-menus-wrap,
	.ast-popup-nav-menus-wrap a {
		pointer-events: auto !important;
		user-select: auto !important;
		-webkit-user-select: auto !important;
	}

	.ast-mobile-popup-drawer,
	.ast-mobile-popup-inner {
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch;
	}

	/* S'assurer que le popup inner est au-dessus de tout overlay */
	.ast-mobile-popup-inner {
		position: relative !important;
		z-index: 999999 !important;
	}

	/* Slide in when open */
	body.ast-main-header-nav-open .ast-mobile-header-wrap .ast-mobile-header-content,
	body.ast-main-header-nav-open .ast-mobile-header-content {
		transform: translateX(0) !important;
		visibility: visible;
		box-shadow: 8px 0 40px rgba(26, 25, 23, 0.12) !important;
	}

	/* ── OVERFLOW FIX ── */
	/* overflow: hidden pour bloquer le scroll, position: relative (pas fixed) */
	/* pour eviter de casser les coordonnees de clic sur iOS */
	body.ast-main-header-nav-open {
		overflow: hidden !important;
		position: relative !important;
		height: 100% !important;
	}

	/* ── Close Button (inside drawer) ── */
	.skinsous-drawer-close {
		position: absolute;
		top: 16px;
		right: 16px;
		z-index: 10;
		width: 44px;
		height: 44px;
		display: flex;
		align-items: center;
		justify-content: center;
		background: rgba(26, 25, 23, 0.05);
		border: none;
		border-radius: 50%;
		color: var(--skinsous-ink);
		cursor: pointer;
		transition: background 0.2s ease, transform 0.2s ease;
		-webkit-tap-highlight-color: transparent;
	}

	.skinsous-drawer-close:hover,
	.skinsous-drawer-close:focus-visible {
		background: rgba(26, 25, 23, 0.1);
		transform: scale(1.05);
		outline: none;
	}

	.skinsous-drawer-close:active {
		transform: scale(0.95);
	}

	/* ── Drawer Header ("MENU" label) ── */
	.ast-mobile-header-wrap .ast-mobile-header-content::before {
		content: "MENU";
		display: block;
		padding: 28px 24px 20px;
		font-family: 'DM Sans', sans-serif;
		font-size: 11px;
		font-weight: 700;
		letter-spacing: 0.15em;
		text-transform: uppercase;
		color: var(--skinsous-muted);
		border-bottom: 1px solid var(--skinsous-warm-sand);
		flex-shrink: 0;
	}

	/* ── Menu Items ── */
	.ast-mobile-header-content .menu-item {
		position: relative;
	}

	.ast-mobile-header-content .menu-item>a {
		font-family: 'DM Sans', sans-serif !important;
		font-size: 15px !important;
		font-weight: 500 !important;
		color: var(--skinsous-ink) !important;
		opacity: 1 !important;
		padding: 16px 24px !important;
		border-bottom: 1px solid rgba(232, 221, 208, 0.6) !important;
		display: flex !important;
		align-items: center;
		justify-content: flex-start;
		text-decoration: none !important;
		transition: background-color 0.2s ease, padding-left 0.2s ease !important;
		-webkit-tap-highlight-color: transparent;
	}

	.ast-mobile-header-content .menu-item>a:hover,
	.ast-mobile-header-content .menu-item>a:focus {
		background-color: rgba(232, 221, 208, 0.35) !important;
		padding-left: 28px !important;
	}

	.ast-mobile-header-content .menu-item>a:active {
		background-color: rgba(232, 221, 208, 0.55) !important;
	}

	/* Clean up last item border */
	.ast-mobile-header-content .menu-item:last-child>a {
		border-bottom: none !important;
	}

	/* Submenu toggle (+) button */
	.ast-mobile-header-content .ast-menu-toggle {
		position: absolute;
		right: 16px;
		top: 50%;
		transform: translateY(-50%);
		background: transparent !important;
		color: var(--skinsous-muted) !important;
		font-size: 18px !important;
		font-weight: 300 !important;
		width: 44px;
		height: 44px;
		display: flex;
		align-items: center;
		justify-content: center;
		border: none;
		cursor: pointer;
		transition: color 0.2s ease;
	}

	.ast-mobile-header-content .ast-menu-toggle:hover {
		color: var(--skinsous-ink) !important;
	}

	/* ── Badge Utility ── */
	.skinsous-menu-badge {
		display: inline-block;
		background-color: var(--skinsous-gold);
		color: #FFFFFF;
		font-size: 9px;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		padding: 3px 7px;
		border-radius: 4px;
		margin-left: 10px;
		line-height: 1;
	}

	.skinsous-menu-badge.badge-dark {
		background-color: var(--skinsous-ink);
	}

	/* ── Background Unification ── */
	.ast-mobile-header-content,
	.ast-mobile-header-content .ast-builder-menu-mobile,
	.ast-mobile-header-content ul,
	.ast-mobile-header-content li,
	.ast-mobile-header-content .menu-item>a {
		background-color: var(--skinsous-ivory) !important;
	}

	/* ── Drawer Bottom CTA ── */
	.ast-mobile-header-content::after {
		content: "SKINSOUS — Clinical Skincare";
		display: block;
		margin-top: auto;
		padding: 24px;
		font-family: 'DM Sans', sans-serif;
		font-size: 10px;
		font-weight: 500;
		letter-spacing: 0.12em;
		text-transform: uppercase;
		color: var(--skinsous-muted);
		text-align: center;
		border-top: 1px solid var(--skinsous-warm-sand);
		flex-shrink: 0;
		opacity: 0.7;
	}
}

/* ----------------------------------------------------- */
/* Marine Collagen Deep Dive Section                     */
/* ----------------------------------------------------- */

.skinsous-collagen-deep-dive {
	font-family: 'DM Sans', sans-serif;
	color: var(--skinsous-ink);
	line-height: 1.6;
	margin: 40px auto;
	width: 100%;
}

.skinsous-collagen-deep-dive h2,
.skinsous-collagen-deep-dive h3,
.skinsous-collagen-deep-dive h4 {
	font-family: 'Cormorant Garamond', serif;
	color: var(--skinsous-ink);
	margin-top: 0;
	margin-bottom: 0.5em;
	font-weight: 600;
}

.skinsous-collagen-deep-dive .ar-text {
	font-family: 'Noto Serif Arabic', serif;
	direction: rtl;
}

.skinsous-collagen-deep-dive .formula-highlight {
	background-color: var(--skinsous-ivory);
	padding: 40px 30px;
	text-align: center;
	border-bottom: 2px solid var(--skinsous-gold);
	margin-bottom: 50px;
}

.skinsous-collagen-deep-dive .formula-highlight .highlight-content {
	max-width: 800px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.skinsous-collagen-deep-dive .formula-highlight p {
	margin: 0;
	font-size: 1.15rem;
	font-weight: 400;
}

.skinsous-collagen-deep-dive .formula-highlight p.ar-text {
	font-size: 1.25rem;
}

.skinsous-collagen-deep-dive .benefits-section {
	margin-bottom: 50px;
}

.skinsous-collagen-deep-dive .benefits-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.skinsous-collagen-deep-dive .benefit-card {
	background-color: #FFFFFF;
	border: 1px solid var(--skinsous-warm-sand);
	padding: 35px 20px;
	text-align: center;
	color: var(--skinsous-ink);
	transition: border-color 0.3s ease;
}

.skinsous-collagen-deep-dive .benefit-card:hover {
	border-color: var(--skinsous-gold);
}

.skinsous-collagen-deep-dive .benefit-card h4 {
	font-size: 1.35rem;
	margin-bottom: 12px;
	color: var(--skinsous-gold);
}

.skinsous-collagen-deep-dive .benefit-card p {
	margin: 0;
	font-size: 0.95rem;
	color: rgba(26, 25, 23, 0.8);
}

.skinsous-collagen-deep-dive .benefit-card .ar-text {
	margin-top: 10px;
	font-size: 1.1rem;
	color: var(--skinsous-ink);
}

.skinsous-collagen-deep-dive .details-split {
	display: flex;
	gap: 40px;
	margin-bottom: 40px;
}

.skinsous-collagen-deep-dive .details-column {
	flex: 1;
	background-color: var(--skinsous-ivory);
	padding: 40px;
}

.skinsous-collagen-deep-dive .details-column h3 {
	font-size: 1.75rem;
	margin-bottom: 25px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid var(--skinsous-gold);
	padding-bottom: 15px;
}

.skinsous-collagen-deep-dive .details-column h3 span.ar-text {
	font-size: 1.6rem;
	font-weight: 500;
}

.skinsous-collagen-deep-dive .details-column p {
	margin-top: 0;
	margin-bottom: 1rem;
	font-size: 1.05rem;
}

.skinsous-collagen-deep-dive .details-column p.ar-text {
	text-align: right;
	font-size: 1.15rem;
}

.skinsous-collagen-deep-dive .details-column p:last-child {
	margin-bottom: 0;
}

.skinsous-collagen-deep-dive .ingredients-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.skinsous-collagen-deep-dive .ingredients-list li {
	padding: 12px 0;
	border-bottom: 1px solid rgba(26, 25, 23, 0.1);
	font-size: 1.05rem;
}

.skinsous-collagen-deep-dive .ingredients-list li:last-child {
	border-bottom: none;
}

.skinsous-collagen-deep-dive .ingredient-name {
	font-weight: 600;
	color: var(--skinsous-ink);
}

.skinsous-collagen-deep-dive .details-column .product-data {
	display: inline-block;
	background-color: var(--skinsous-ink);
	color: var(--skinsous-ivory);
	padding: 6px 14px;
	font-size: 0.85rem;
	font-weight: 600;
	letter-spacing: 1px;
	margin-bottom: 25px;
	text-transform: uppercase;
}

/* Responsive */
@media (max-width: 768px) {
	.skinsous-collagen-deep-dive .benefits-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.skinsous-collagen-deep-dive .details-split {
		flex-direction: column;
		gap: 20px;
	}

	.skinsous-collagen-deep-dive .details-column {
		padding: 30px 20px;
	}

	.skinsous-collagen-deep-dive .details-column h3 {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}

	.skinsous-collagen-deep-dive .details-column h3 span.ar-text {
		align-self: flex-end;
	}
}

/* ----------------------------------------------------- */
/* Skinsous â€” Clinical Results (Before / After)          */
/* Shortcode: [skinsous_clinical_results]                */
/* ----------------------------------------------------- */
.skinsous-results-section {
	background: var(--skinsous-ivory);
	padding: 56px 0;
}

.skinsous-results-section__container {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 24px;
}

.skinsous-results-section__header {
	margin-bottom: 28px;
}

.skinsous-results-section__subtitle {
	margin: 0 0 10px;
	font-family: "DM Sans", sans-serif;
	font-size: 12px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--skinsous-gold);
	font-weight: 600;
}

.skinsous-results-section__title {
	margin: 0;
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 28px;
	line-height: 1.1;
	color: var(--skinsous-ink);
	font-weight: 500;
}

.skinsous-results-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 26px;
}

.skinsous-results-card {
	background: #ffffff;
	border: 1px solid #EAE5DC;
	border-radius: 6px;
	padding: 18px;
}

.skinsous-results-card__images {
	display: flex;
	gap: 2px;
	border-radius: 4px;
	overflow: hidden;
	background: #EAE5DC;
}

.skinsous-results-card__image {
	position: relative;
	margin: 0;
	width: 50%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}

.skinsous-results-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.skinsous-results-card__label {
	position: absolute;
	left: 10px;
	top: 10px;
	padding: 6px 10px;
	background: rgba(26, 25, 23, 0.72);
	color: #ffffff;
	font-family: "DM Sans", sans-serif;
	font-size: 11px;
	letter-spacing: 1px;
	text-transform: uppercase;
	border-radius: 999px;
}

.skinsous-results-card__verified {
	margin: 14px 0 0;
	font-family: "DM Sans", sans-serif;
	font-size: 13px;
	color: #4A4A4A;
	font-weight: 600;
}

.skinsous-results-card__quote {
	margin: 12px 0 0;
	font-family: "DM Sans", sans-serif;
	font-size: 15px;
	font-style: italic;
	color: var(--skinsous-ink);
	line-height: 1.6;
}

.skinsous-results-card__name {
	margin: 12px 0 0;
	font-family: "DM Sans", sans-serif;
	font-size: 13px;
	font-weight: 600;
	color: #4A4A4A;
}

@media (min-width: 768px) {
	.skinsous-results-section {
		padding: 72px 0;
	}

	.skinsous-results-section__container {
		padding: 0 48px;
	}

	.skinsous-results-section__title {
		font-size: 36px;
	}

	.skinsous-results-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 40px;
	}
}

@media (max-width: 768px) {
	.skinsous-results-section__title {
		font-size: 26px;
	}

	.skinsous-results-card__quote {
		font-size: 14px;
	}
}



/* --- SKINSOUS GLOBAL SINGLE PRODUCT LAYOUT --- */

body.single-product {
	background: #faf7f2;
}

.single-product .ast-breadcrumbs-wrapper,
.single-product .woocommerce-breadcrumb,
.single-product div.product .product_meta,
.single-product div.product .sku_wrapper,
.single-product div.product .posted_in,
.single-product div.product .tagged_as {
	display: none !important;
}

.single-product .site-main {
	padding-top: 36px;
	padding-bottom: 72px;
}

.single-product .ast-container,
.single-product .site-content>.ast-container {
	max-width: 1320px;
}

.single-product .site-main .product {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(360px, 0.8fr);
	gap: 56px;
	align-items: start;
	background: transparent;
}

.single-product div.product .woocommerce-product-gallery,
.single-product div.product .summary {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
}

.single-product div.product .woocommerce-product-gallery {
	position: relative !important;
	top: auto !important;
}

.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
	top: 20px;
	right: 20px;
	width: 42px;
	height: 42px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 8px 22px rgba(26, 25, 23, 0.12);
}

.single-product div.product .woocommerce-product-gallery .flex-viewport {
	border-radius: 28px;
	overflow: hidden;
	background: linear-gradient(180deg, #efe7dc 0%, #e6d8c5 100%);
	box-shadow: 0 28px 60px rgba(26, 25, 23, 0.08);
}

.single-product div.product .woocommerce-product-gallery__image img {
	display: block;
	width: 100%;
	border-radius: 28px;
}

.single-product div.product .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin-top: 20px !important;
}

.single-product div.product .flex-control-thumbs li {
	margin: 0 !important;
	border-radius: 18px;
	overflow: hidden;
	border: 1px solid rgba(184, 150, 90, 0.18);
	background: #ffffff;
	box-shadow: 0 10px 26px rgba(26, 25, 23, 0.06);
}

.single-product div.product .flex-control-thumbs img {
	opacity: 1 !important;
}

.single-product div.product .summary {
	position: relative !important;
	top: auto !important;
	padding: 8px 0 0;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	backdrop-filter: none;
}

.single-product div.product .summary,
.single-product div.product .summary p,
.single-product div.product .summary .price,
.single-product div.product .summary .woocommerce-product-details__short-description,
.single-product div.product .summary form,
.single-product div.product .summary label,
.single-product div.product .summary select {
	font-family: "DM Sans", sans-serif;
	color: #1a1917;
}

.skinsous-product-eyebrow {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 16px;
}

.skinsous-product-eyebrow__pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 30px;
	padding: 7px 14px;
	border-radius: 999px;
	background: rgba(184, 150, 90, 0.12);
	color: #7a5b26;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.single-product div.product .product_title {
	margin: 0 0 14px;
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: clamp(36px, 4vw, 52px);
	line-height: 0.98;
	color: #1a1917;
	letter-spacing: -0.02em;
}

.single-product div.product .woocommerce-product-rating {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 12px;
	color: #7a756d;
	font-size: 13px;
}

.single-product div.product .star-rating {
	color: #b8965a;
}

.single-product div.product .price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 10px 12px;
	margin: 0 0 16px;
	font-size: 30px;
	font-weight: 700;
	color: #1a1917;
}

.single-product div.product .price del {
	color: #7a756d;
	opacity: 0.75;
}

.single-product div.product .price ins {
	background: transparent;
	text-decoration: none;
}

.skinsous-price-supporting-copy {
	margin: -4px 0 18px;
	font-size: 12px;
	line-height: 1.6;
	color: #7a756d;
}

.skinsous-product-supporting-copy {
	margin: 0 0 18px;
	font-size: 15px;
	line-height: 1.8;
	color: #4a4a4a;
	max-width: 46ch;
}

.skinsous-product-supporting-copy p {
	margin: 0;
}

.skinsous-trust-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 14px 18px;
	margin: 0 0 28px;
	padding: 0;
	list-style: none;
	font-size: 12px;
	color: #4a4a4a;
}

.skinsous-trust-badges__item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0;
}

.skinsous-trust-badges__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.single-product div.product form.cart:not(.variations_form) {
	display: none !important;
}

.single-product div.product form.variations_form {
	margin: 0 0 24px !important;
	padding: 18px 20px;
	border: 1px solid #e8ddd0;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.9);
}

.single-product div.product form.variations_form table.variations {
	margin: 0;
}

.single-product div.product form.variations_form .label {
	padding-bottom: 8px;
}

.single-product div.product form.variations_form label {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #1a1917;
}

.single-product div.product form.variations_form select {
	min-height: 48px;
	padding: 12px 14px;
	border: 1px solid #e8ddd0;
	border-radius: 12px;
	background: #faf7f2;
}

.single-product div.product form.variations_form .reset_variations {
	display: inline-block;
	margin-top: 8px;
	font-size: 12px;
	color: #7a756d;
}

.single-product div.product .single_variation {
	margin: 14px 0 0;
}

.single-product div.product .woocommerce-variation-price {
	margin-bottom: 10px;
}

.single-product div.product .woocommerce-variation-description {
	font-size: 14px;
	line-height: 1.7;
	color: #4a4a4a;
}

.single-product div.product .woocommerce-variation-add-to-cart,
.single-product div.product form.variations_form .single_add_to_cart_button,
.single-product div.product form.variations_form .quantity {
	display: none !important;
}

.skinsous-product-cta {
	margin: 0 0 18px;
}

.skinsous-product-cta__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: none;
	padding: 19px 22px;
	border: 0;
	border-radius: 999px;
	background: #1a1917;
	color: #ffffff;
	font-family: "DM Sans", sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	cursor: pointer;
	box-shadow: 0 18px 34px rgba(26, 25, 23, 0.14);
	transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}

.skinsous-product-cta__button:hover {
	transform: translateY(-1px);
	box-shadow: 0 18px 38px rgba(26, 25, 23, 0.2);
	opacity: 0.98;
}

.skinsous-product-cta__note {
	margin: 10px 0 0;
	font-size: 12px;
	line-height: 1.6;
	text-align: center;
	color: #7a756d;
}

.skinsous-product-guarantees {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 20px;
	margin: 0 0 30px;
	padding-bottom: 24px;
	border-bottom: 1px solid #e8ddd0;
}

.skinsous-product-guarantees__item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	color: var(--skinsous-ink);
	font-family: 'DM Sans', sans-serif;
	font-weight: 500;
}

.skinsous-product-guarantees__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--skinsous-gold);
	flex-shrink: 0;
}

.skinsous-product-guarantees__text {
	color: var(--skinsous-ink);
}

.skinsous-product-accordion {
	margin-top: 8px;
	border-top: 1px solid #ece2d5;
	border-bottom: 1px solid #ece2d5;
}

.skinsous-product-accordion__item+.skinsous-product-accordion__item {
	border-top: 1px solid #ece2d5;
}

.skinsous-product-accordion__trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	width: 100%;
	padding: 20px 0;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent;
	color: #1a1917;
	text-align: left;
	cursor: pointer;
	box-shadow: none !important;
	text-transform: none;
}

.skinsous-product-accordion__title {
	font-size: 15px;
	font-weight: 700;
	color: #1a1917;
}

.skinsous-product-accordion__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

.skinsous-product-accordion__icon-minus {
	display: none;
}

.skinsous-product-accordion__item.is-open .skinsous-product-accordion__icon-plus {
	display: none;
}

.skinsous-product-accordion__item.is-open .skinsous-product-accordion__icon-minus {
	display: block;
}

.skinsous-product-accordion__panel {
	overflow: hidden;
}

.skinsous-product-accordion__content {
	padding: 0 20px 22px 0;
	font-size: 14px;
	line-height: 1.75;
	color: #4a4a4a;
}

.skinsous-product-accordion__content> :first-child {
	margin-top: 0;
}

.skinsous-product-accordion__content> :last-child {
	margin-bottom: 0;
}

.skinsous-product-attributes {
	display: grid;
	gap: 14px;
}

.skinsous-product-attributes__row {
	display: grid;
	gap: 4px;
}

.skinsous-product-attributes__label {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #b8965a;
}

.skinsous-product-attributes__value,
.skinsous-product-accordion__empty {
	font-size: 14px;
	color: #4a4a4a;
}

.skinsous-product-accordion__placeholder {
	min-height: 24px;
}

@media (max-width: 921px) {
	.single-product .site-main .product {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.single-product div.product .woocommerce-product-gallery,
	.single-product div.product .summary {
		position: static;
	}
}

@media (max-width: 768px) {
	.single-product .site-main {
		padding-top: 14px;
	}

	.single-product div.product .summary {
		padding: 0;
	}

	.single-product div.product .woocommerce-product-gallery .flex-viewport,
	.single-product div.product .woocommerce-product-gallery__image img {
		border-radius: 18px;
	}

	.single-product div.product .product_title {
		font-size: 36px;
	}

	.skinsous-trust-badges,
	.skinsous-product-guarantees {
		gap: 10px 14px;
	}

	.single-product div.product .flex-control-thumbs {
		grid-template-columns: repeat(4, minmax(64px, 1fr));
		overflow-x: auto;
		padding-bottom: 4px;
	}
}


/* --- SKINSOUS: MARQUEE TRUST BAR --- */
.skinsous-marquee-wrapper {
	background-color: transparent !important;
	border-top: 1px solid #e8ddd0;
	border-bottom: 1px solid #e8ddd0;
	height: 44px;
	display: flex;
	align-items: center;
	overflow: hidden;
	position: relative;
	width: 100vw;
	margin-left: calc(-50vw + 50%);
	margin-bottom: 40px;
	margin-top: 20px;
	clear: both;
}

@media (min-width: 922px) {
	.skinsous-marquee-wrapper {
		width: 100%;
		margin-left: 0;
	}
}

.skinsous-marquee-content {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	gap: 48px;
	min-width: 100%;
	padding-right: 48px;
	animation: skinsous-scroll-left 30s linear infinite;
}

.skinsous-marquee-wrapper:hover .skinsous-marquee-content {
	animation-play-state: paused;
}

.skinsous-marquee-item {
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: #7a756d;
	white-space: nowrap;
}

@keyframes skinsous-scroll-left {
	from {
		transform: translateX(0);
	}

	to {
		transform: translateX(-100%);
	}
}

/* --- SKINSOUS: WOOCOMMERCE PRODUCT GRID OVERHAUL --- */

/* 1. Thumbnail Wrapper */
ul.products li.product .astra-shop-thumbnail-wrap {
	background-color: var(--skinsous-ivory) !important;
	border-radius: 12px !important;
	position: relative !important;
	overflow: hidden;
	margin-bottom: 15px !important;
	transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease !important;
	will-change: transform;
}

ul.products li.product:hover .astra-shop-thumbnail-wrap {
	transform: translateY(-2px) !important;
	box-shadow: 0 22px 55px rgba(26, 25, 23, 0.14) !important;
}

ul.products li.product .astra-shop-thumbnail-wrap img {
	/* mix-blend-mode: multiply removed — makes product images invisible on mobile */
	mix-blend-mode: normal;
	border-radius: 12px;
	width: 100%;
	display: block;
}

/* 2. Sale Badge */
ul.products li.product .onsale {
	position: absolute !important;
	top: 10px !important;
	left: 10px !important;
	right: auto !important;
	bottom: auto !important;
	background-color: var(--skinsous-ink) !important;
	color: #FFFFFF !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	padding: 4px 10px !important;
	border-radius: 20px !important;
	border: none !important;
	line-height: 1 !important;
	min-height: 0 !important;
	min-width: 0 !important;
	z-index: 9;
}

/* --- SKINSOUS: PREMIUM PRODUCT GRID STYLING --- */
.woocommerce ul.products li.product {
	background: transparent !important;
	text-align: left;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin-bottom: 50px !important;
	transition: transform 0.3s ease;
}

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

.woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
	position: relative;
	overflow: hidden;
	margin-bottom: 20px;
	background-color: var(--skinsous-ivory) !important;
}

.woocommerce ul.products li.product img {
	border-radius: 0 !important;
	box-shadow: none !important;
	width: 100%;
	height: auto;
	object-fit: cover;
	/* mix-blend-mode removed: makes images invisible on mobile/AMOLED screens */
	mix-blend-mode: normal;
}

/* Sale Badge */
.woocommerce ul.products li.product .onsale {
	background-color: var(--skinsous-ink) !important;
	color: #FFFFFF !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 10px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	padding: 6px 12px !important;
	border-radius: 0 !important;
	min-width: auto !important;
	min-height: auto !important;
	line-height: 1 !important;
	top: 15px !important;
	left: 15px !important;
	right: auto !important;
}

/* Product Title */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: 'Cormorant Garamond', serif !important;
	font-size: 22px !important;
	font-weight: 500 !important;
	color: var(--skinsous-ink) !important;
	margin-bottom: 8px !important;
	line-height: 1.3 !important;
	text-transform: capitalize;
	display: block !important;
	text-align: left !important;
	padding: 0 !important;
}

/* Center Woo star rating inside the card */
.woocommerce ul.products li.product .star-rating {
	margin: 0 0 10px 0 !important;
	text-align: left !important;
}

/* Product Price */
.woocommerce ul.products li.product .price {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 15px !important;
	color: var(--skinsous-ink) !important;
	margin-bottom: 15px !important;
	display: block !important;
	text-align: left !important;
}

.woocommerce ul.products li.product .price del {
	color: var(--skinsous-muted) !important;
	opacity: 0.7;
	margin-right: 6px;
	font-size: 13px !important;
	font-weight: 400 !important;
}

.woocommerce ul.products li.product .price ins {
	text-decoration: none !important;
	font-weight: 600 !important;
	color: var(--skinsous-gold) !important;
	background: transparent !important;
}

/* Add to Cart Button */
.woocommerce ul.products li.product .button.add_to_cart_button,
.woocommerce ul.products li.product .added_to_cart {
	background-color: transparent !important;
	color: var(--skinsous-ink) !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	padding: 10px 0 !important;
	border: none !important;
	border-bottom: 1px solid var(--skinsous-ink) !important;
	border-radius: 0 !important;
	display: inline-block !important;
	margin: 0 auto !important;
	transition: color 0.3s ease, border-color 0.3s ease !important;
	min-width: 140px;
}

.woocommerce ul.products li.product .button.add_to_cart_button:hover,
.woocommerce ul.products li.product .added_to_cart:hover {
	color: var(--skinsous-gold) !important;
	border-bottom-color: var(--skinsous-gold) !important;
	background: transparent !important;
}

.woocommerce ul.products li.product .button.add_to_cart_button.loading::after {
	color: var(--skinsous-ink) !important;
}

/* --- SKINSOUS: WOOCOMMERCE BLOCKS SUPPORT --- */

.wc-block-components-product-image {
	background-color: var(--skinsous-ivory) !important;
	border-radius: 12px !important;
	position: relative !important;
	overflow: hidden;
	margin-bottom: 15px !important;
}

.wc-block-components-product-image img {
	/* mix-blend-mode: multiply removed — images invisible on mobile */
	mix-blend-mode: normal;
	border-radius: 12px;
	width: 100%;
	display: block;
}

.wc-block-components-product-sale-badge {
	position: absolute !important;
	top: 10px !important;
	left: 10px !important;
	right: auto !important;
	bottom: auto !important;
	background-color: var(--skinsous-ink) !important;
	color: #FFFFFF !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	padding: 4px 10px !important;
	border-radius: 20px !important;
	border: none !important;
	line-height: 1 !important;
	min-height: 0 !important;
	min-width: 0 !important;
	z-index: 9;
}

.wc-block-grid__product {
	position: relative;
	text-align: center !important;
}

.wc-block-grid__product .skinsous-floating-cart {
	position: absolute !important;
	bottom: 12px !important;
	right: 12px !important;
	width: 38px !important;
	height: 38px !important;
	border-radius: 50% !important;
	background-color: var(--skinsous-ink) !important;
	color: #FFFFFF !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
	margin: 0 !important;
	z-index: 20 !important;
	box-shadow: 0 4px 10px rgba(26, 25, 23, 0.15) !important;
	transition: transform 0.2s ease, background-color 0.2s ease !important;
}

.wc-block-grid__product .skinsous-floating-cart:hover {
	background-color: var(--skinsous-gold) !important;
	transform: scale(1.05) !important;
}

.wc-block-grid__product .skinsous-floating-cart.loading {
	opacity: 0.7 !important;
}

.wc-block-grid__product .skinsous-floating-cart.loading::after {
	display: none !important;
}

.wc-block-grid__product .skinsous-floating-cart.added::after {
	content: 'âœ“' !important;
	font-family: Arial, sans-serif !important;
	font-size: 16px !important;
	position: absolute;
}

.wc-block-grid__product .skinsous-floating-cart.added svg {
	opacity: 0;
}

.wc-block-components-product-title {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: var(--skinsous-ink) !important;
	margin-top: 0 !important;
	margin-bottom: 6px !important;
	padding: 0 !important;
}

.wc-block-components-product-price {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 14px !important;
	color: var(--skinsous-ink) !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-bottom: 0 !important;
}

.wc-block-components-product-price del .woocommerce-Price-amount {
	color: var(--skinsous-muted) !important;
	font-weight: 400 !important;
	font-size: 13px !important;
}

.wc-block-components-product-price ins .woocommerce-Price-amount {
	text-decoration: none !important;
	background: transparent !important;
	font-weight: 700 !important;
	color: var(--skinsous-gold) !important;
}

/* --- SKINSOUS: CUSTOM SHORTCODE GRID --- */
.skinsous-custom-grid {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 24px !important;
	width: 100% !important;
	margin: 0 auto !important;
}

@media (max-width: 768px) {
	.skinsous-custom-grid {
		display: flex !important;
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		scroll-snap-type: x mandatory !important;
		-webkit-overflow-scrolling: touch !important;
		gap: 16px !important;
		padding: 0 20px 20px !important;
		scrollbar-width: none;
		/* Hide scrollbar for clean aesthetic */
	}

	.skinsous-custom-grid::-webkit-scrollbar {
		display: none;
	}

	.skinsous-product-card {
		flex: 0 0 240px !important;
		/* Optimal card width for mobile scroll */
		scroll-snap-align: start !important;
		text-align: left !important;
		/* Left-aligned for premium horizontal look */
	}

	.skinsous-product-card-details {
		padding-top: 12px !important;
	}

	.skinsous-product-title {
		font-size: 14px !important;
		line-height: 1.2 !important;
		margin-bottom: 4px !important;
	}

	.skinsous-product-price {
		font-size: 13px !important;
	}

	.skinsous-product-feature-tag {
		font-size: 9px !important;
		padding: 3px 8px !important;
		margin-bottom: 6px !important;
	}

	.skinsous-image-container .skinsous-fab-group {
		bottom: 8px !important;
		right: 8px !important;
		gap: 6px !important;
	}

	.skinsous-image-container .skinsous-fab {
		width: 32px !important;
		height: 32px !important;
	}

	.skinsous-image-container .skinsous-fab svg {
		width: 15px !important;
		height: 15px !important;
	}
}

.skinsous-product-card {
	display: flex !important;
	flex-direction: column !important;
	text-align: center !important;
	position: relative !important;
}

.skinsous-image-container {
	position: relative !important;
	background-color: var(--skinsous-ivory) !important;
	aspect-ratio: 1/1 !important;
	width: 100% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 4px !important;
	overflow: hidden !important;
}

.skinsous-product-card img,
.astra-shop-thumbnail-wrap img,
.skinsous-image-container img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	/* mix-blend-mode: multiply removed — renders images invisible on mobile screens */
	mix-blend-mode: normal !important;
	transition: none !important;
	transform: none !important;
}

.skinsous-image-container .skinsous-fab-group {
	position: absolute !important;
	bottom: 12px !important;
	right: 12px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 8px !important;
	z-index: 20 !important;
}

.skinsous-image-container .skinsous-fab {
	width: 36px !important;
	height: 36px !important;
	border-radius: 50% !important;
	background-color: var(--skinsous-ink) !important;
	color: #FFFFFF !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: 0 4px 10px rgba(26, 25, 23, 0.15) !important;
	transition: transform 0.2s ease, background-color 0.2s ease !important;
	text-decoration: none !important;
}

.skinsous-image-container .skinsous-fab:hover {
	background-color: var(--skinsous-gold) !important;
	transform: scale(1.05) !important;
}

.skinsous-product-card-details {
	padding-top: 16px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
}

.skinsous-product-feature-tag {
	display: inline-block !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	color: #8B4A1C !important;
	border: 1px solid var(--skinsous-warm-sand) !important;
	padding: 4px 10px !important;
	border-radius: 20px !important;
	margin-bottom: 8px !important;
}

.skinsous-product-title {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: var(--skinsous-ink) !important;
	margin: 0 0 6px !important;
}

.skinsous-product-title a {
	color: inherit !important;
	text-decoration: none !important;
}

.skinsous-product-price {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 14px !important;
	color: var(--skinsous-ink) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
}

.skinsous-product-price del .woocommerce-Price-amount {
	color: var(--skinsous-muted) !important;
	font-weight: 400 !important;
	font-size: 13px !important;
}

.skinsous-product-price ins .woocommerce-Price-amount {
	text-decoration: none !important;
	font-weight: 700 !important;
	color: var(--skinsous-gold) !important;
}

/* --- SKINSOUS: DOPAMINE SUCCESS ANIMATION & UI CLEANUP --- */
.added_to_cart.wc-forward {
	display: none !important;
}

@keyframes skinsous-pulse-success {
	0% {
		transform: scale(1);
		box-shadow: 0 0 0 0 rgba(26, 25, 23, 0.4);
	}

	50% {
		transform: scale(1.15);
		box-shadow: 0 0 0 10px rgba(26, 25, 23, 0);
	}

	100% {
		transform: scale(1);
		box-shadow: 0 0 0 0 rgba(26, 25, 23, 0);
	}
}

.skinsous-image-container .skinsous-fab.added {
	background-color: var(--skinsous-ink) !important;
	animation: skinsous-pulse-success 0.5s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
}

.skinsous-image-container .skinsous-fab.added svg {
	opacity: 0 !important;
	display: none !important;
}

.skinsous-image-container .skinsous-fab.added::after {
	content: 'âœ“' !important;
	font-family: Arial, sans-serif !important;
	font-size: 16px !important;
	color: #FFFFFF !important;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

/* --- SKINSOUS: SIDE CART Z-INDEX & OVERLAY --- */
.ast-mobile-cart-overlay,
.ast-desktop-cart-overlay,
#ast-site-header-cart,
.ast-site-header-cart-wrap {
	z-index: 99999 !important;
}



.skinsous-direct-checkout {
	position: relative !important;
	z-index: 9999 !important;
}

/* --- SKINSOUS: MASTER CLOSE BUTTON --- */
#skinsous-master-close {
	position: fixed !important;
	width: 32px !important;
	height: 32px !important;
	font-size: 16px !important;
	top: 15px !important;
	left: min(calc(80% - 40px), 300px) !important;
	z-index: 999999 !important;
	background-color: #ffffff !important;
	color: var(--skinsous-ink) !important;
	border: 1px solid var(--skinsous-warm-sand) !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	box-shadow: 0 4px 10px rgba(26, 25, 23, 0.1) !important;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease !important;
}

body.ast-main-header-nav-open #skinsous-master-close {
	opacity: 1;
	pointer-events: auto;
}

/* --- SKINSOUS: MENU VISUAL POLISH --- */
@keyframes skinsousFadeInUp {
	0% {
		opacity: 0;
		transform: translateY(10px);
	}

	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Menu item animations desactivees pour garantir l'interactivite.
   Le opacity:0 initial bloquait les clics quand l'animation echouait.
body.ast-main-header-nav-open .ast-mobile-header-content .menu-item,
body.ast-main-header-nav-open .ast-mobile-popup-inner .menu-item {
	animation: skinsousFadeInUp 0.4s ease forwards;
	opacity: 0;
}
*/

/* Garantir que les items du menu sont TOUJOURS visibles et cliquables */
body.ast-main-header-nav-open .ast-mobile-header-content .menu-item,
body.ast-main-header-nav-open .ast-mobile-popup-inner .menu-item {
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
}

/* --- SKINSOUS: ASTRO MOBILE MENU FOG & CONTRAST FIX --- */
@media (max-width: 921px) {

	/* BACKGROUND â€” make it fully opaque, no fog */
	.ast-header-break-point .main-navigation,
	.ast-header-break-point #ast-hf-menu-1,
	.ast-mobile-popup-drawer,
	.ast-mobile-popup-inner,
	#ast-hf-mobile-menu,
	.ast-popup-nav-menus-wrap,
	.ast-navigation-actual-nav,
	.ast-header-break-point .ast-below-header-navigation,
	.ast-header-break-point .site-navigation {
		background-color: var(--skinsous-ivory) !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
		opacity: 1 !important;
		z-index: 999999 !important;
	}

	/* MENU ITEMS â€” clear, readable, on-brand */
	.ast-header-break-point .main-navigation a,
	.ast-mobile-popup-drawer a,
	.ast-popup-nav-menus-wrap a,
	.ast-navigation-actual-nav a {
		color: var(--skinsous-ink) !important;
		font-family: 'DM Sans', sans-serif !important;
		font-size: 15px !important;
		font-weight: 400 !important;
		letter-spacing: 0.02em !important;
		padding: 16px 24px !important;
		border-bottom: 1px solid #F0E8E0 !important;
		display: block !important;
		opacity: 1 !important;
		background: transparent !important;
	}

	.ast-header-break-point .main-navigation a:hover,
	.ast-mobile-popup-drawer a:hover,
	.ast-popup-nav-menus-wrap a:hover {
		color: var(--skinsous-gold) !important;
		background: #F5F0EA !important;
	}

	/* MENU HEADER BAR — ne pas re-declarer de z-index ici, gere plus haut */
	.ast-mobile-popup-header,
	.ast-mobile-menu-trigger-wrap {
		background-color: var(--skinsous-ivory) !important;
		border-bottom: 1px solid var(--skinsous-warm-sand) !important;
		padding: 14px 20px !important;
	}

	/* CLOSE BUTTON */
	.ast-mobile-popup-close,
	button.ast-mobile-menu-close {
		background: #FFFFFF !important;
		border: 1px solid var(--skinsous-warm-sand) !important;
		border-radius: 50% !important;
		color: var(--skinsous-ink) !important;
		width: 36px !important;
		height: 36px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
	}

	/* OVERLAY BEHIND DRAWER */
	.ast-mobile-popup-overlay,
	.ast-menu-overlay {
		background: rgba(26, 25, 23, 0.6) !important;
		backdrop-filter: none !important;
		z-index: 99990 !important;
	}

	/* MENU LABEL TEXT */
	.ast-mobile-menu-label {
		font-family: 'DM Sans', sans-serif !important;
		font-size: 11px !important;
		letter-spacing: 0.14em !important;
		text-transform: uppercase !important;
		color: var(--skinsous-muted) !important;
	}

	/* PREMIUM DRAWER REFINEMENT */
	.ast-mobile-popup-inner {
		padding-top: 0 !important;
		background: var(--skinsous-ivory) !important;
	}

	.skinsous-mobile-drawer-logo {
		border-bottom: 1px solid rgba(28, 20, 16, 0.05);
		margin-bottom: 10px;
	}

	.ast-mobile-popup-header {
		display: none !important;
		/* Hide default header to use our custom logo injection */
	}
}

.ast-mobile-popup-inner,
.ast-mobile-header-content {
	display: flex !important;
	flex-direction: column !important;
	min-height: 100vh !important;
	background-color: var(--skinsous-ivory) !important;
}

/* HIGH-END MENU LINKS */
.ast-header-break-point .main-navigation ul li a,
.ast-mobile-popup-drawer .ast-popup-nav-menus-wrap ul li a {
	font-family: 'Cormorant Garamond', serif !important;
	font-size: 20px !important;
	font-weight: 500 !important;
	padding: 20px 30px !important;
	border-bottom: 1px solid rgba(28, 20, 16, 0.04) !important;
	color: var(--skinsous-ink) !important;
	transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.ast-header-break-point .main-navigation ul li a:hover,
.ast-mobile-popup-drawer .ast-popup-nav-menus-wrap ul li a:hover {
	padding-left: 38px !important;
	color: var(--skinsous-gold) !important;
	background: rgba(184, 150, 90, 0.03) !important;
}

/* DRAWER CTA AREA */
.skinsous-mobile-menu-cta-wrap {
	margin-top: auto !important;
	padding: 30px 24px 40px !important;
	width: 100% !important;
	box-sizing: border-box !important;
	background: #ffffff !important;
	border-top: 1px solid rgba(28, 20, 16, 0.06) !important;
}

.skinsous-mobile-menu-cta-wrap .skinsous-direct-checkout {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	width: 100% !important;
	background-color: var(--skinsous-ink) !important;
	color: #ffffff !important;
	padding: 20px !important;
	font-family: 'DM Sans', sans-serif !important;
	font-weight: 600 !important;
	font-size: 13px !important;
	letter-spacing: 2px !important;
	text-transform: uppercase !important;
	border-radius: 4px !important;
	text-decoration: none !important;
	box-shadow: 0 10px 20px rgba(28, 20, 16, 0.1) !important;
	transition: transform 0.2s ease, background-color 0.2s ease !important;
}

.skinsous-mobile-menu-cta-wrap .skinsous-direct-checkout:active {
	transform: scale(0.98) !important;
}

/* SOCIAL LINKS IN DRAWER */
.skinsous-drawer-socials {
	display: flex;
	justify-content: center;
	gap: 20px;
	margin-bottom: 20px;
}

.skinsous-drawer-socials a {
	color: var(--skinsous-muted);
	transition: color 0.3s ease;
}

.skinsous-drawer-socials a:hover {
	color: var(--skinsous-gold);
}

/* CUSTOM CLOSE BUTTON STYLE */
.skinsous-drawer-close {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #ffffff;
	border: 1px solid rgba(28, 20, 16, 0.1);
	color: var(--skinsous-ink);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 100;
	cursor: pointer;
	box-shadow: 0 4px 10px rgba(26, 25, 23, 0.05);
	transition: all 0.2s ease;
}

.skinsous-drawer-close:hover {
	transform: rotate(90deg);
	background: var(--skinsous-ivory);
}

/* OVERLAY — declaration principale en haut du fichier (ligne ~500) */
/* Ce bloc est conserve uniquement pour les proprietes supplementaires */
#skinsous-drawer-overlay {
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
}

/* --- SKINSOUS: ASTRA SIDE CART TOUCH SHIELD BREAKER --- */
.skinsous-direct-checkout {
	position: relative !important;
	z-index: 99990 !important;
	pointer-events: auto !important;
}

.woocommerce-mini-cart__buttons {
	position: relative !important;
	z-index: 9999 !important;
	pointer-events: auto !important;
}

#ast-site-header-cart,
.ast-site-header-cart-wrap {
	position: relative !important;
	z-index: 9999 !important;
}

body.ast-site-header-cart-open::after,
.ast-mobile-cart-overlay {
	z-index: 99990 !important;
}

/* --- SKINSOUS: INTERACTIVE BEFORE/AFTER SLIDER --- */
.skinsous-results-section__container--ba {
	max-width: 900px;
	margin: 0 auto;
}

.skinsous-results-section__container--ba .skinsous-results-section__header {
	text-align: center;
	margin-bottom: 40px;
}

.skinsous-ba-slider {
	position: relative;
	width: 100%;
	aspect-ratio: 4 / 5;
	overflow: hidden;
	border-radius: 12px;
	cursor: ew-resize;
	box-shadow: 0 20px 40px rgba(26, 25, 23, 0.1);
	background-color: #faf7f2;
	user-select: none;
	-webkit-user-select: none;
	touch-action: pan-y pinch-zoom;
}

.skinsous-ba-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	pointer-events: none;
}

.skinsous-ba-before-wrap {
	position: absolute;
	top: 0;
	left: 0;
	width: 50%;
	height: 100%;
	overflow: hidden;
	z-index: 2;
}

.skinsous-ba-before {
	max-width: none;
}

.skinsous-ba-handle {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	width: 2px;
	background-color: #ffffff;
	z-index: 3;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

.skinsous-ba-handle-button {
	width: 40px;
	height: 40px;
	background-color: #ffffff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #1a1917;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.skinsous-ba-handle-button svg {
	margin: 0 -3px;
}

.skinsous-ba-label {
	position: absolute;
	bottom: 20px;
	padding: 6px 16px;
	background-color: rgba(255, 255, 255, 0.9);
	color: #1a1917;
	font-family: "DM Sans", sans-serif;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	border-radius: 20px;
	z-index: 4;
	pointer-events: none;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.skinsous-ba-label-left {
	left: 20px;
}

.skinsous-ba-label-right {
	right: 20px;
}

@media (max-width: 767px) {
	.skinsous-ba-label {
		bottom: 14px;
		padding: 5px 12px;
		font-size: 11px;
	}

	.skinsous-ba-label-left {
		left: 12px;
	}

	.skinsous-ba-label-right {
		right: 12px;
	}
}

/* --- SKINSOUS: PREMIUM BLOG SECTION (MOBILE-FIRST) --- */
.skinsous-journal-section {
	padding: 60px 0;
	background-color: var(--skinsous-ivory);
	overflow: hidden;
}

.skinsous-journal-header {
	text-align: center;
	margin-bottom: 40px;
	padding: 0 24px;
}

.skinsous-journal-subtitle {
	font-family: "DM Sans", sans-serif;
	font-size: 11px;
	font-weight: 700;
	color: var(--skinsous-gold);
	letter-spacing: 0.15em;
	text-transform: uppercase;
	margin: 0 0 10px;
}

.skinsous-journal-title {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 36px;
	font-weight: 500;
	color: var(--skinsous-ink);
	margin: 0;
	line-height: 1.2;
}

/* Mobile: Horizontal Snap Scrolling */
.skinsous-journal-container {
	width: 100%;
}

.skinsous-journal-track {
	display: flex;
	gap: 20px;
	padding: 0 24px 20px 24px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	/* Firefox */
	-webkit-overflow-scrolling: touch;
}

.skinsous-journal-track::-webkit-scrollbar {
	display: none;
	/* Chrome/Safari */
}

.skinsous-journal-card {
	flex: 0 0 85%;
	/* Shows a peek of the next card on mobile */
	max-width: 340px;
	scroll-snap-align: center;
	background: #ffffff;
	border: 1px solid var(--skinsous-warm-sand);
	border-radius: 6px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.skinsous-journal-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 15px 35px rgba(26, 25, 23, 0.08);
}

.skinsous-journal-card__link-wrapper {
	display: block;
	overflow: hidden;
}

.skinsous-journal-card__image {
	width: 100%;
	aspect-ratio: 4/3;
	background-size: cover;
	background-position: center;
	transition: transform 0.5s ease;
}

.skinsous-journal-card:hover .skinsous-journal-card__image {
	transform: scale(1.05);
}

.skinsous-journal-card__content {
	padding: 24px;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.skinsous-journal-card__category {
	font-family: "DM Sans", sans-serif;
	font-size: 10px;
	font-weight: 700;
	color: var(--skinsous-gold);
	text-transform: uppercase;
	letter-spacing: 0.1em;
	margin-bottom: 12px;
}

.skinsous-journal-card__title {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.3;
	margin: 0 0 16px;
}

.skinsous-journal-card__title a {
	color: var(--skinsous-ink);
	text-decoration: none;
	transition: color 0.2s ease;
}

.skinsous-journal-card__title a:hover {
	color: var(--skinsous-gold);
}

.skinsous-journal-card__readmore {
	margin-top: auto;
	font-family: "DM Sans", sans-serif;
	font-size: 12px;
	font-weight: 600;
	color: var(--skinsous-ink);
	text-decoration: none;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	display: inline-flex;
	align-items: center;
	transition: color 0.2s ease;
}

.skinsous-journal-card__readmore:hover {
	color: var(--skinsous-gold);
}

.skinsous-journal-empty {
	font-family: "DM Sans", sans-serif;
	color: var(--skinsous-muted);
	text-align: center;
	width: 100%;
}

/* Desktop Layout */
@media (min-width: 768px) {
	.skinsous-journal-section {
		padding: 80px 0;
	}

	.skinsous-journal-title {
		font-size: 42px;
	}

	.skinsous-journal-track {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 30px;
		max-width: 1200px;
		margin: 0 auto;
		padding: 0 40px;
		overflow-x: visible;
		scroll-snap-type: none;
	}

	.skinsous-journal-card {
		flex: none;
		max-width: none;
	}
}

/* --- SKINSOUS: PREMIUM COLLECTIONS SECTION --- */
.skinsous-collections-section {
	padding: 60px 0;
	background-color: #ffffff;
	overflow: hidden;
}

.skinsous-collections-header {
	text-align: center;
	margin-bottom: 40px;
	padding: 0 24px;
}

.skinsous-collections-title {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 32px;
	font-weight: 400;
	color: var(--skinsous-ink);
	margin: 0;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.skinsous-collections-container {
	width: 100%;
}

.skinsous-collections-track {
	display: flex;
	gap: 15px;
	padding: 0 24px 20px 24px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	/* Firefox */
	-webkit-overflow-scrolling: touch;
}

.skinsous-collections-track::-webkit-scrollbar {
	display: none;
	/* Chrome/Safari */
}

.skinsous-collection-card {
	flex: 0 0 75%;
	max-width: 280px;
	aspect-ratio: 3/4;
	scroll-snap-align: center;
	position: relative;
	border-radius: 8px;
	overflow: hidden;
	background: var(--skinsous-ink);
}

.skinsous-collection-card__link {
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}

.skinsous-collection-card__bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.skinsous-collection-card:hover .skinsous-collection-card__bg {
	transform: scale(1.08);
}

.skinsous-collection-card__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to top, rgba(26, 25, 23, 0.85) 0%, rgba(26, 25, 23, 0.2) 50%, rgba(26, 25, 23, 0.1) 100%);
	transition: background 0.4s ease;
}

.skinsous-collection-card:hover .skinsous-collection-card__overlay {
	background: linear-gradient(to top, rgba(26, 25, 23, 0.95) 0%, rgba(26, 25, 23, 0.3) 50%, rgba(26, 25, 23, 0.1) 100%);
}

.skinsous-collection-card__content {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 30px 24px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.skinsous-collection-card__title {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 26px;
	font-weight: 500;
	color: #ffffff;
	margin: 0 0 12px;
	line-height: 1.1;
}

.skinsous-collection-card__cta {
	font-family: "DM Sans", sans-serif;
	font-size: 11px;
	font-weight: 700;
	color: var(--skinsous-gold);
	text-transform: uppercase;
	letter-spacing: 0.15em;
	transition: color 0.3s ease, transform 0.3s ease;
	display: inline-block;
}

.skinsous-collection-card:hover .skinsous-collection-card__cta {
	color: var(--skinsous-ivory);
	transform: translateX(3px);
}

/* Desktop Layout */
@media (min-width: 768px) {
	.skinsous-collections-section {
		padding: 80px 0;
	}

	.skinsous-collections-title {
		font-size: 42px;
	}

	.skinsous-collections-track {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 20px;
		max-width: 1200px;
		margin: 0 auto;
		padding: 0 40px;
		overflow-x: visible;
		scroll-snap-type: none;
	}

	.skinsous-collection-card {
		flex: none;
		max-width: none;
	}
}

/* --- SKINSOUS: WOOCOMMERCE ARCHIVE / CATEGORY OVERHAUL --- */

/* 1. Clean Up the Sidebar */
.widget_products,
.widget_top_rated_products,
.widget_recent_reviews,
.widget_stock_status {
	display: none !important;
}

.widget_product_categories ul {
	list-style: none;
	padding: 0;
}

.widget_product_categories a {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	transition: color 0.3s ease;
	color: var(--skinsous-ink);
}

.widget_product_categories a:hover {
	color: var(--skinsous-gold);
}

/* 2. Elevate the Page Header */
.woocommerce-products-header,
.ast-archive-description {
	text-align: left;
	padding: 40px 0;
	background-color: transparent;
	margin-bottom: 40px;
}

.woocommerce-products-header__title,
.ast-archive-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 56px;
	font-weight: 300;
	color: var(--skinsous-ink);
	margin: 0;
}

.term-description,
.ast-archive-description>p {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	color: var(--skinsous-muted);
	max-width: 600px;
	margin: 16px 0 0;
	line-height: 1.6;
}

/* 3. Refine the Utility Bar (Sorting & Result Count) */
.woocommerce-result-count,
.woocommerce-ordering {
	font-family: 'DM Sans', sans-serif;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--skinsous-muted);
}

.woocommerce-ordering select {
	border: 1px solid var(--skinsous-warm-sand);
	background-color: transparent;
	padding: 8px 16px;
	font-family: 'DM Sans', sans-serif;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--skinsous-ink);
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	appearance: none;
}

.woocommerce-ordering select:focus {
	border-color: var(--skinsous-gold);
}

/* 4. General Grid & Sale Badges */
span.onsale,
.woocommerce span.onsale {
	background-color: #ffffff !important;
	color: var(--skinsous-ink) !important;
	border: 1px solid var(--skinsous-ink) !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 10px !important;
	text-transform: uppercase !important;
	border-radius: 0 !important;
	padding: 4px 10px !important;
	min-height: auto !important;
	min-width: auto !important;
	line-height: 1 !important;
	font-weight: 600 !important;
}

/* --- SKINSOUS: PREMIUM ANNOUNCEMENT BAR --- */
.skinsous-announcement-bar {
	background-color: #1C1410;
	/* --kohl */
	color: #F2E8D9;
	/* --sand */
	text-align: center;
	padding: 10px 20px;
	position: relative;
	z-index: 100000;
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	font-weight: 500;
}

.skinsous-announcement-bar__inner {
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
}

.skinsous-announcement-bar__text {
	display: inline-block;
	animation: skinsousFadeInUp 0.6s ease forwards;
}

.skinsous-announcement-bar__link {
	color: #E8A045;
	/* --saffron */
	text-decoration: none;
	margin-left: 8px;
	font-weight: 600;
	border-bottom: 1px solid transparent;
	transition: all 0.3s ease;
}

.skinsous-announcement-bar__link:hover {
	color: #C1703A;
	/* --clay */
	border-bottom-color: #C1703A;
}

/* --- SKINSOUS: SINGLE PRODUCT PAGE FIXES --- */

/* 1. Fix Sale Badge Positioning */
.woocommerce div.product div.images,
.woocommerce-product-gallery {
	position: relative !important;
}

.woocommerce div.product span.onsale {
	position: absolute !important;
	top: 20px !important;
	left: 20px !important;
	right: auto !important;
	bottom: auto !important;
	z-index: 10 !important;
	margin: 0 !important;
}

/* 2. Hide Redundant Price Suffix */
.woocommerce-price-suffix {
	display: none !important;
}

/* 3. Hide Astra Product Category / Default Breadcrumbs */
.ast-woo-product-category,
.woocommerce-breadcrumb {
	display: none !important;
}

/* 5. Custom Product Cards (La Boutique Theme) */
.archive.woocommerce-page {
	background-color: var(--skinsous-ivory);
}

.woocommerce ul.products li.product {
	background-color: #FBF7F1;
	border-radius: 0;
	padding: 0;
	text-align: left;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	border: none;
	display: flex;
	flex-direction: column;
}

.woocommerce ul.products li.product:hover {
	transform: translateY(-4px);
	box-shadow: 0 10px 30px rgba(26, 25, 23, 0.05);
}

.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
	display: block;
	margin-bottom: auto;
}

.woocommerce ul.products li.product img {
	border-radius: 150px 150px 0 0;
	margin-bottom: 24px;
	width: 100%;
	aspect-ratio: 4/5;
	object-fit: cover;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 22px;
	font-weight: 400;
	color: var(--skinsous-ink);
	padding: 0 16px;
	margin-bottom: 6px;
}

/* Subtitle for ingredients */
.skinsous-loop-product-ingredients {
	font-family: 'DM Sans', sans-serif;
	font-size: 10px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--skinsous-muted);
	padding: 0 16px;
	margin-bottom: 16px;
	border-bottom: 1px solid var(--skinsous-warm-sand);
	padding-bottom: 16px;
}

/* Price and Cart Row */
.skinsous-loop-product-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 16px 20px;
	margin-top: auto;
}

.woocommerce ul.products li.product .price {
	font-family: 'DM Sans', sans-serif;
	font-size: 12px;
	font-weight: 600;
	color: var(--skinsous-ink);
	margin: 0;
}

/* Minimalist Add to Cart + Button */
.woocommerce ul.products li.product .button {
	font-size: 0 !important;
	/* Hide text */
	background: transparent !important;
	color: var(--skinsous-ink) !important;
	padding: 0 !important;
	border: none !important;
	position: relative;
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	border-radius: 0;
	margin-top: 0;
}

.woocommerce ul.products li.product .button::before {
	content: '+';
	font-size: 22px;
	font-family: 'DM Sans', sans-serif;
	font-weight: 300;
}

.woocommerce ul.products li.product .button:hover::before {
	color: var(--skinsous-gold);
}

/* Hide default read more/select options text */
.woocommerce ul.products li.product .button.product_type_variable::before,
.woocommerce ul.products li.product .button.product_type_grouped::before,
.woocommerce ul.products li.product .button.product_type_external::before {
	content: '+';
}

/* 6. Sidebar / Filter Styling */
.widget_layered_nav,
.widget_product_categories {
	margin-bottom: 40px;
}

.widget_layered_nav .widget-title,
.widget_product_categories .widget-title {
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--skinsous-ink);
	font-weight: 700;
	border-bottom: 1px solid var(--skinsous-warm-sand);
	padding-bottom: 12px;
	margin-bottom: 20px;
}

.widget_layered_nav ul li,
.widget_product_categories ul li {
	padding: 8px 0;
	position: relative;
	display: flex;
	align-items: center;
}

.widget_layered_nav ul li a,
.widget_product_categories ul li a {
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	color: var(--skinsous-muted);
	text-transform: none;
	letter-spacing: 0;
	padding-left: 28px;
	transition: color 0.2s ease;
}

.widget_layered_nav ul li a:hover,
.widget_product_categories ul li a:hover {
	color: var(--skinsous-ink);
}

.widget_layered_nav ul li a::before,
.widget_product_categories ul li a::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 14px;
	height: 14px;
	border: 1px solid var(--skinsous-warm-sand);
	background: #fff;
	border-radius: 2px;
	transition: all 0.2s ease;
}

.widget_layered_nav ul li.chosen a::before,
.widget_product_categories ul li.current-cat a::before {
	background: var(--skinsous-ink);
	border-color: var(--skinsous-ink);
}

.widget_layered_nav ul li.chosen a::after,
.widget_product_categories ul li.current-cat a::after {
	content: 'âœ“';
	position: absolute;
	left: 3px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 10px;
	color: #fff;
	font-family: sans-serif;
}

.widget_layered_nav ul li.chosen a,
.widget_product_categories ul li.current-cat a {
	color: var(--skinsous-ink);
	font-weight: 600;
}

/* Hide count */
.widget_layered_nav ul li .count,
.widget_product_categories ul li .count {
	display: none;
}

/* General Layout adjustments */
@media (min-width: 922px) {
	.ast-left-sidebar #primary {
		width: 75%;
	}

	.ast-left-sidebar #secondary {
		width: 25%;
		padding-right: 40px;
	}
}

/* --- SKINSOUS: SINGLE PRODUCT LAYOUT FIXES --- */

/* Fix grid blowout causing the right column (accordion) to bleed off screen */
@media (min-width: 922px) {
	.single-product div.product {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 48px !important;
		align-items: start;
	}
}

/* Force Related Products & Upsells to break out of the 2-column grid and span full width below */
.single-product .related.products,
.single-product .up-sells.upsells.products {
	grid-column: 1 / -1 !important;
	margin-top: 80px;
	width: 100%;
}

/* Ensure the related products grid itself looks good (4 columns on desktop) */
.single-product .related.products ul.products,
.single-product .up-sells.upsells.products ul.products {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px;
}

@media (min-width: 768px) {

	.single-product .related.products ul.products,
	.single-product .up-sells.upsells.products ul.products {
		grid-template-columns: repeat(4, 1fr);
	}
}

/* Ensure accordion panels truly hide and wrap text */
.skinsous-product-accordion {
	max-width: 100%;
}

.skinsous-product-accordion__panel[hidden] {
	display: none !important;
}

.skinsous-product-accordion__content {
	max-width: 100%;
	overflow-wrap: break-word;
	word-break: break-word;
}

/* --- SKINSOUS: ABOUT PAGE --- */
.skinsous-about-page {
	width: 100%;
	overflow: hidden;
	background-color: var(--skinsous-ivory);
	/* Base page color */
}

/* Global Typography Elements */
.skinsous-about-page .skinsous-eyebrow {
	display: block;
	font-family: 'DM Sans', sans-serif;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: #8B4A1C;
	/* Argan */
	margin-bottom: 12px;
}

.skinsous-about-page .skinsous-heading-2 {
	font-family: 'Cormorant Garamond', serif;
	font-size: 42px;
	font-weight: 300;
	color: var(--skinsous-ink);
	line-height: 1.1;
	margin: 0 0 24px;
}

.skinsous-about-page p {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	color: var(--skinsous-muted);
	line-height: 1.7;
	margin: 0 0 20px;
}

/* 1. Hero Section */
.skinsous-about-hero {
	padding: 80px 24px 60px;
	text-align: center;
	max-width: 1200px;
	margin: 0 auto;
}

.skinsous-about-hero__content {
	max-width: 700px;
	margin: 0 auto 60px;
}

.skinsous-about-hero__title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 56px;
	font-weight: 300;
	color: var(--skinsous-ink);
	margin: 0 0 24px;
}

.skinsous-about-hero__image-wrap {
	width: 100%;
}

.skinsous-about-hero__image {
	width: 100%;
	height: auto;
	max-height: 500px;
	object-fit: cover;
}

/* 2. Science Section */
.skinsous-about-science {
	padding: 80px 24px;
	max-width: 1200px;
	margin: 0 auto;
}

.skinsous-about-science__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 40px;
	align-items: center;
}

@media (min-width: 768px) {
	.skinsous-about-science__grid {
		grid-template-columns: 1fr 1fr;
		gap: 80px;
	}
}

.skinsous-about-science__image-wrap {
	background-color: #2C5545;
	/* Dark green placeholder background if image is transparent, otherwise image covers it */
	border-radius: 200px 200px 0 0;
	overflow: hidden;
	aspect-ratio: 4/5;
	width: 100%;
	max-width: 450px;
	margin: 0 auto;
}

.skinsous-about-science__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.skinsous-about-science__callout {
	margin-top: 32px;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	color: var(--skinsous-muted);
	line-height: 1.6;
}

.skinsous-about-science__callout strong {
	color: var(--skinsous-ink);
	font-weight: 600;
}

/* 3. Philosophy Section */
.skinsous-about-philosophy {
	background-color: #FBF7F1;
	/* Slightly lighter linen */
	padding: 100px 24px;
}

.skinsous-about-philosophy__header {
	text-align: center;
	max-width: 600px;
	margin: 0 auto 60px;
}

.skinsous-about-philosophy__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
	max-width: 1100px;
	margin: 0 auto;
}

@media (min-width: 768px) {
	.skinsous-about-philosophy__grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

.skinsous-philosophy-card {
	background-color: #ffffff;
	padding: 40px 32px;
	text-align: center;
	border: 1px solid var(--skinsous-warm-sand);
	display: flex;
	flex-direction: column;
	align-items: center;
}

.skinsous-philosophy-card__icon {
	width: 48px;
	height: 48px;
	background-color: var(--skinsous-warm-sand);
	/* Light taupe */
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--skinsous-ink);
	margin-bottom: 24px;
}

.skinsous-philosophy-card__title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 24px;
	font-weight: 400;
	color: var(--skinsous-ink);
	margin: 0 0 16px;
}

.skinsous-philosophy-card__desc {
	font-size: 13px;
	margin: 0;
}

/* 4. Quote Section */
.skinsous-about-quote {
	padding: 100px 24px;
	text-align: center;
	max-width: 800px;
	margin: 0 auto;
}

.skinsous-about-quote__icon {
	font-family: 'Cormorant Garamond', serif;
	font-size: 60px;
	color: var(--skinsous-gold);
	/* Gold */
	line-height: 1;
	margin-bottom: 20px;
}

.skinsous-about-quote__text {
	font-family: 'Cormorant Garamond', serif;
	font-size: 32px;
	font-weight: 300;
	color: var(--skinsous-ink);
	line-height: 1.4;
	margin: 0;
}

@media (min-width: 768px) {
	.skinsous-about-quote__text {
		font-size: 40px;
	}
}

/* 5. Transparency Section */
.skinsous-about-transparency {
	padding: 0 24px 100px;
	max-width: 1200px;
	margin: 0 auto;
}

.skinsous-about-transparency__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 40px;
	align-items: center;
}

@media (min-width: 768px) {
	.skinsous-about-transparency__grid {
		grid-template-columns: 1fr 1fr;
		gap: 80px;
	}
}

.skinsous-ingredients-list {
	list-style: none;
	padding: 0;
	margin: 32px 0 0;
}

.skinsous-ingredients-list li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 16px 0;
	border-bottom: 1px solid var(--skinsous-warm-sand);
}

.skinsous-pill {
	background-color: #E2EFE8;
	/* Soft green */
	color: #2C5545;
	/* Dark green */
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.05em;
	padding: 6px 12px;
	border-radius: 100px;
}

.skinsous-value {
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 600;
	color: var(--skinsous-ink);
}

.skinsous-about-transparency__image-wrap {
	width: 100%;
	aspect-ratio: 1/1;
	overflow: hidden;
}

.skinsous-about-transparency__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* --- SKINSOUS: EDITORIAL ARCHIVE --- */

/* Nuke Astra Defaults on WooCommerce Archives */
.ast-woocommerce-container .woocommerce-products-header {
	display: none !important;
}

.tax-product_cat #secondary,
.post-type-archive-product #secondary {
	display: none !important;
}

.tax-product_cat #primary,
.post-type-archive-product #primary {
	width: 100% !important;
	max-width: 100% !important;
	border: none !important;
	padding: 0 !important;
}

/* Body overflow hidden to prevent horizontal scrolling from breakout */
body,
#page {
	overflow-x: hidden;
}

/* Clean Hero - No Hacks Needed */
.skinsous-clean-hero {
	width: 100%;
	height: 45vh;
	min-height: 400px;
	background-size: cover;
	background-position: center 30%;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	margin-bottom: 0;
}

.skinsous-clean-hero .skinsous-hero-overlay {
	position: absolute;
	inset: 0;
	background: rgba(26, 25, 23, 0.4);
	z-index: 1;
}

.skinsous-clean-hero .skinsous-hero-content {
	position: relative;
	z-index: 2;
	padding: 0 20px;
	color: #ffffff;
}

.skinsous-clean-hero h1 {
	font-family: 'Cormorant Garamond', serif;
	font-size: 56px;
	color: #ffffff;
	margin-bottom: 12px;
	font-weight: 400;
	text-transform: capitalize;
}

.skinsous-clean-hero p {
	font-family: 'DM Sans', sans-serif;
	font-size: 16px;
	color: #ffffff;
	max-width: 600px;
	margin: 0 auto;
}

/* Fix Astra's Main Layout Stack */
.tax-product_cat #secondary {
	display: none !important;
}

.tax-product_cat #primary {
	width: 100% !important;
	max-width: 100% !important;
	padding-top: 40px !important;
}

/* Utility Bar Styling */
.skinsous-utility-bar {
	width: 100%;
	position: relative;
	z-index: 10;
	background: var(--skinsous-ivory);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding: 15px 5%;
	border-top: 1px solid var(--skinsous-warm-sand);
	border-bottom: 1px solid var(--skinsous-warm-sand);
	margin-bottom: 40px;
}

.tax-product_cat ul.products {
	margin-top: 40px !important;
	clear: both;
}

.skinsous-utility-bar .woocommerce-result-count {
	font-family: 'DM Sans', sans-serif;
	font-size: 12px;
	color: var(--skinsous-muted);
	margin: 0;
	float: none;
}

.skinsous-utility-bar .woocommerce-ordering {
	margin: 0;
	float: none;
}

.skinsous-utility-bar .woocommerce-ordering select {
	font-family: 'DM Sans', sans-serif;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	font-weight: 600;
	color: var(--skinsous-ink);
	background: transparent;
	border: none;
	padding: 0;
	padding-right: 20px;
	/* Space for native arrow */
	cursor: pointer;
	box-shadow: none;
	outline: none;
}

.skinsous-utility-bar .woocommerce-ordering select:focus {
	outline: none;
}

@media (max-width: 768px) {
	.skinsous-utility-bar {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}
}

/* --- SKINSOUS: LUXURY PRODUCT GRID --- */

/* 1. Grid Definition */
.woocommerce ul.products,
.single-product .related.products ul.products,
.single-product .up-sells.upsells.products ul.products {
	display: grid !important;
	gap: 40px 24px !important;
	margin-top: 40px !important;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
	display: none !important;
	/* Remove float clear pseudo-elements if any */
}

@media (max-width: 768px) {

	.woocommerce ul.products,
	.single-product .related.products ul.products,
	.single-product .up-sells.upsells.products ul.products {
		display: grid !important;
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 20px 12px !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	.single-product .related.products,
	.single-product .up-sells.upsells.products {
		display: block !important;
		opacity: 1 !important;
		visibility: visible !important;
		width: 100% !important;
	}
}

/* 2. Flat & Clean Card Base */
.woocommerce ul.products li.product {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
	text-align: center !important;
	margin: 0 !important;
	/* Overridden by grid gap */
	width: 100% !important;
	/* Overridden by grid */
}

/* Remove arched borders from earlier design */
.woocommerce ul.products li.product img {
	border-radius: 0 !important;
}

/* 3. Typography Refinements */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: var(--skinsous-ink) !important;
	margin-top: 16px !important;
	margin-bottom: 6px !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	padding: 0 !important;
}

.woocommerce ul.products li.product .price {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 14px !important;
	color: var(--skinsous-muted) !important;
	font-weight: 400 !important;
	margin-bottom: 16px !important;
}

/* Hide star ratings on catalog */
.woocommerce ul.products li.product .star-rating {
	display: none !important;
}

/* 4. Hover Image Logic */
.woocommerce ul.products li.product .woocommerce-loop-product__link {
	position: relative;
	display: block;
	overflow: hidden;
	/* Prevent scaling images from breaking out */
}

.woocommerce ul.products li.product .skinsous-secondary-image {
	position: absolute !important;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	opacity: 0;
	transition: opacity 0.5s cubic-bezier(0.25, 1, 0.5, 1), transform 1.2s cubic-bezier(0.25, 1, 0.5, 1) !important;
	z-index: 2;
}

.woocommerce ul.products li.product .woocommerce-loop-product__link img:first-child {
	transition: opacity 0.5s cubic-bezier(0.25, 1, 0.5, 1), transform 1.2s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

/* HOVER STATE: Show secondary image, subtle zoom */
.woocommerce ul.products li.product:hover .skinsous-secondary-image {
	opacity: 1;
	transform: scale(1.03);
}

.woocommerce ul.products li.product:hover .woocommerce-loop-product__link img:first-child {
	transform: scale(1.03);
}

/* --- PRODUCT GRID UI OVERRIDE --- */
.tax-product_cat ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 40px 24px !important;
	clear: both !important;
	margin-top: 40px !important;
}

.tax-product_cat ul.products li.product {
	margin: 0 !important;
	width: 100% !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* Mobile grid */
@media (max-width: 768px) {
	.tax-product_cat ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 20px 12px !important;
	}
}

/* Interactive Wrapper */
.skinsous-interactive-wrap {
	position: relative;
	overflow: hidden;
	background-color: transparent !important;
	display: block;
	margin-bottom: 20px;
}

.skinsous-interactive-wrap img {
	width: 100%;
	height: auto;
	object-fit: cover;
	aspect-ratio: 4/5;
	transition: opacity 1.2s cubic-bezier(0.25, 1, 0.5, 1);
	display: block;
}

/* True Cross-fade Image Swap */
.skinsous-primary-img {
	transition: opacity 1.2s cubic-bezier(0.25, 1, 0.5, 1);
	opacity: 1;
}

.skinsous-interactive-wrap:hover .skinsous-primary-img {
	opacity: 0;
}

.skinsous-hover-img {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	z-index: 2;
	transition: opacity 1.2s cubic-bezier(0.25, 1, 0.5, 1);
}

.skinsous-interactive-wrap:hover .skinsous-hover-img {
	opacity: 1;
}

/* Brutally Hide Astra Default Buttons & Inner Default Thumbnail */
.woocommerce ul.products li.product .button.add_to_cart_button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap>*:not(.skinsous-interactive-wrap) {
	display: none !important;
}

/* Slide-up Add to Cart Button */
.skinsous-slide-up-btn {
	position: absolute;
	bottom: -60px;
	left: 0;
	width: 100%;
	background-color: #EEDFA0 !important;
	color: var(--skinsous-ink) !important;
	text-align: center;
	padding: 14px 0 !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	transition: bottom 0.4s cubic-bezier(0.25, 1, 0.5, 1) !important;
	z-index: 10;
	border-radius: 0 !important;
	border: none !important;
	margin: 0 !important;
	display: block;
	text-decoration: none !important;
}

.skinsous-interactive-wrap:hover .skinsous-slide-up-btn {
	bottom: 0;
}

.skinsous-slide-up-btn:hover {
	background-color: #DCCC8A !important;
}

/* Fade-in Quick View Icon */
.skinsous-quick-view-btn {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 36px;
	height: 36px;
	background: #ffffff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--skinsous-ink);
	opacity: 0;
	transform: translateY(-10px);
	transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
	z-index: 10;
	cursor: pointer;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.skinsous-interactive-wrap:hover .skinsous-quick-view-btn {
	opacity: 1;
	transform: translateY(0);
}

/* --- SKINSOUS: PREMIUM CATEGORY FILTER --- */
.skinsous-category-filter-wrapper {
	width: 100%;
	margin-bottom: 40px;
	margin-top: 20px;
	display: flex;
	justify-content: center;
}

.skinsous-category-filter {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	display: flex;
	align-items: center;
	gap: 40px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	/* Hide scrollbar Firefox */
}

.skinsous-category-filter::-webkit-scrollbar {
	display: none;
	/* Hide scrollbar Chrome/Safari */
}

.skinsous-category-filter li {
	margin: 0 !important;
	padding: 0 !important;
	white-space: nowrap;
}

.skinsous-category-filter a {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: var(--skinsous-muted) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	text-decoration: none !important;
	padding-bottom: 6px !important;
	transition: all 0.3s ease !important;
	border-bottom: 2px solid transparent !important;
	display: inline-block;
}

.skinsous-category-filter a:hover,
.skinsous-category-filter a.active {
	color: var(--skinsous-ink) !important;
	border-bottom-color: var(--skinsous-gold) !important;
}

/* Adjust mobile gap */
@media (max-width: 768px) {
	.skinsous-category-filter {
		gap: 24px;
		padding-left: 20px !important;
		padding-right: 20px !important;
		justify-content: flex-start;
	}

	.skinsous-category-filter-wrapper {
		justify-content: flex-start;
	}
}

.skinsous-quick-view-btn:hover {
	background: var(--skinsous-ink);
	color: #ffffff;
}

/* --- SKINSOUS: PREMIUM HERO SECTION --- */
.skinsous-hero {
	position: relative;
	width: 100vw;
	min-height: 85vh;
	margin-left: calc(-50vw + 50%);
	/* Force full viewport width inside any container */
	background-size: cover;
	background-position: center 20%;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	margin-bottom: 60px;
}

.skinsous-hero-overlay {
	display: none !important;
	/* Removed shadow/overlay as requested */
}

.skinsous-hero-content {
	position: relative;
	z-index: 2;
	text-align: center;
	max-width: 800px;
	padding: 0 20px;
	margin-top: auto;
	margin-bottom: auto;
}

.skinsous-hero-title {
	font-family: 'Cormorant Garamond', Georgia, serif !important;
	font-size: clamp(3.5rem, 8vw, 6rem) !important;
	font-weight: 400 !important;
	color: #ffffff !important;
	line-height: 1 !important;
	margin-bottom: 24px !important;
	letter-spacing: 0.02em !important;
	/* Strong diffuse shadow to separate text from background without darkening the whole image */
	text-shadow: 0 4px 30px rgba(28, 20, 16, 0.9), 0 2px 10px rgba(28, 20, 16, 0.7) !important;
}

.skinsous-hero-subtitle {
	font-family: 'DM Sans', 'Jost', sans-serif !important;
	font-size: clamp(1rem, 2vw, 1.15rem) !important;
	color: rgba(255, 255, 255, 0.95) !important;
	line-height: 1.6 !important;
	max-width: 600px;
	margin: 0 auto 40px auto !important;
	letter-spacing: 0.05em !important;
	font-weight: 400 !important;
	text-shadow: 0 4px 20px rgba(28, 20, 16, 0.9), 0 2px 8px rgba(28, 20, 16, 0.8) !important;
}

.skinsous-btn-primary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background-color: #C1703A !important;
	/* Clay */
	color: #ffffff !important;
	font-family: 'DM Sans', 'Jost', sans-serif !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	padding: 16px 36px !important;
	border-radius: 100px !important;
	/* Pill shape */
	text-decoration: none !important;
	transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1) !important;
	border: none !important;
}

.skinsous-btn-primary:hover {
	background-color: #8B4A1C !important;
	/* Argan */
	transform: translateY(-3px);
	box-shadow: 0 8px 24px rgba(28, 20, 16, 0.3) !important;
	color: #ffffff !important;
}

@media (max-width: 768px) {
	.skinsous-hero {
		min-height: 75vh;
		background-position: center;
		background-image: url('https://skinsous.com/wp-content/uploads/2026/05/11e0b708-e2da-4061-9e2c-0055ec673a2b.jpg') !important;
	}

	.skinsous-hero-title {
		margin-bottom: 16px !important;
	}

	.skinsous-hero-subtitle {
		margin-bottom: 32px !important;
	}
}

/* --- SKINSOUS PRO HERO SECTION --- */
/* 1. Full-Width Breakout - Anchor image to the left, content to the right */
.skinsous-hero-pro {
	width: 100vw !important;
	max-width: 100vw !important;
	position: relative !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	height: 85vh !important;
	min-height: 600px !important;
	background-size: cover !important;
	background-position: center left !important;
	/* Keeps model visible on the left */
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	/* MOVES CONTENT TO THE RIGHT */
	overflow: hidden !important;
	padding: 0 !important;
	border: none !important;
}

/* 2. REMOVE THE SHADOW COMPLETELY */
.skinsous-hp-gradient {
	display: none !important;
}

/* 3. Content Wrapper - Pushed inward from the Right */
.skinsous-hp-content {
	position: relative !important;
	z-index: 2 !important;
	padding-right: 4vw !important;
	/* Padding from the right edge */
	padding-left: 20px !important;
	max-width: 650px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	text-align: left !important;
}

/* 4. Typography & Elements - Changed to Dark Brand Color */
.skinsous-hp-pill {
	display: inline-block !important;
	background: transparent !important;
	border: 1px solid var(--skinsous-ink) !important;
	padding: 6px 16px !important;
	border-radius: 50px !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.15em !important;
	text-transform: uppercase !important;
	margin-bottom: 24px !important;
	color: var(--skinsous-ink) !important;
	/* Dark Text */
}

.skinsous-hp-title {
	font-family: 'Cormorant Garamond', serif !important;
	font-size: clamp(42px, 6vw, 72px) !important;
	line-height: 1.1 !important;
	font-weight: 400 !important;
	color: var(--skinsous-ink) !important;
	/* Dark Text */
	margin: 0 0 20px 0 !important;
	text-transform: none !important;
}

/* 5. The Gold Brush Stroke Effect */
.skinsous-hp-highlight {
	position: relative !important;
	display: inline-block !important;
	z-index: 1 !important;
}

.skinsous-hp-highlight::after {
	content: '' !important;
	position: absolute !important;
	left: 0 !important;
	bottom: 2px !important;
	width: 100% !important;
	height: 12px !important;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 20' preserveAspectRatio='none'%3E%3Cpath d='M0,15 Q30,5 50,12 T100,10' fill='none' stroke='%23B8965A' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center !important;
	background-size: 100% 100% !important;
	z-index: -1 !important;
}

.skinsous-hp-desc {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 16px !important;
	line-height: 1.6 !important;
	color: #2C2A27 !important;
	/* Dark Gray */
	margin-bottom: 40px !important;
	max-width: 480px !important;
}

/* Changed button to Dark background, White text */
.skinsous-hp-btn {
	display: inline-block !important;
	background: var(--skinsous-ink) !important;
	color: #ffffff !important;
	font-family: 'DM Sans', sans-serif !important;
	font-weight: 700 !important;
	font-size: 12px !important;
	letter-spacing: 0.15em !important;
	text-transform: uppercase !important;
	padding: 16px 36px !important;
	border-radius: 50px !important;
	text-decoration: none !important;
	transition: all 0.3s ease !important;
}

.skinsous-hp-btn:hover {
	background: var(--skinsous-gold) !important;
	color: #ffffff !important;
}

/* Mobile Optimization */
@media (max-width: 768px) {
	.skinsous-hero-pro {
		background-position: 75% center !important;
		/* Focus on model */
		align-items: flex-end !important;
		justify-content: center !important;
		/* Center text on mobile */
		background-image: url('https://skinsous.com/wp-content/uploads/2026/05/11e0b708-e2da-4061-9e2c-0055ec673a2b.jpg') !important;
	}

	.skinsous-hp-content {
		padding: 6% !important;
		background: rgba(250, 247, 242, 0.85) !important;
		/* Soft Ivory box for readability on mobile */
		border-radius: 12px !important;
		margin: 20px !important;
		width: auto !important;
	}
}

/* --- SKINSOUS: PRODUCT PAGE OVERHAUL --- */

/* Typography & General */
.woocommerce div.product .product_title {
	font-family: 'Cormorant Garamond', serif !important;
	font-weight: 600 !important;
	font-size: 38px !important;
	color: #1C1410 !important;
	margin-bottom: 12px !important;
	line-height: 1.2 !important;
}

.skinsous-product-concentration {
	font-family: 'DM Sans', sans-serif;
	color: #8B4A1C;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	margin-bottom: 8px;
	display: block;
}

.woocommerce div.product .woocommerce-product-details__short-description,
.woocommerce div.product .woocommerce-product-details__short-description p,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product form.cart .button {
	font-family: 'DM Sans', sans-serif !important;
}

/* Pricing */
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	font-weight: 500 !important;
	font-size: 24px !important;
	color: #1C1410 !important;
	margin-bottom: 24px !important;
}

/* ==========================================================================
   SKINSOUS: SINGLE PRODUCT PRICE ALIGNMENT (Clean)
   ========================================================================== */
.price,
.single-product div.product p.price,
.single-product div.product span.price,
.single-product div.product .summary .price {
	display: inline-flex !important;
	align-items: baseline !important;
	gap: 15px !important;
	flex-wrap: nowrap !important;
}

.single-product div.product .price del,
.single-product div.product p.price del,
.single-product div.product span.price del {
	color: var(--skinsous-muted) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	opacity: 1 !important;
	text-decoration: line-through !important;
}

.single-product div.product .price ins,
.single-product div.product p.price ins,
.single-product div.product span.price ins {
	background: transparent !important;
	color: var(--skinsous-ink) !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	text-decoration: none !important;
}

/* ==========================================================================
   SKINSOUS: PRODUCT ACCORDION (No black blocks)
   - Open state stays ivory/transparent, only left border gold.
   ========================================================================== */
.skinsous-product-accordion__item.is-open {
	background: var(--skinsous-ivory) !important;
	border-left: 2px solid var(--skinsous-gold) !important;
}

.skinsous-product-accordion__trigger,
.skinsous-product-accordion__item.is-open .skinsous-product-accordion__trigger {
	background: transparent !important;
	color: var(--skinsous-ink) !important;
}

.skinsous-product-accordion__trigger::before,
.skinsous-product-accordion__trigger::after {
	content: none !important;
}

/* ==========================================================================
   SKINSOUS: NATIVE WC INNER ZOOM (Clipped, no overlay icon)
   ========================================================================== */
.single-product div.product .woocommerce-product-gallery,
.single-product div.product .woocommerce-product-gallery .flex-viewport,
.single-product div.product .woocommerce-product-gallery__image {
	border-radius: 20px !important;
	overflow: hidden !important;
	background: var(--skinsous-ivory) !important;
}

.single-product div.product .woocommerce-product-gallery__image {
	position: relative !important;
}

/* Keep zoom inside container; the zoomed image is clipped by overflow:hidden. */
.single-product div.product .woocommerce-product-gallery__image .zoomImg {
	border-radius: 20px !important;
	opacity: 0 !important;
	transition: opacity 0.15s ease !important;
}

.single-product div.product .woocommerce-product-gallery__image:hover .zoomImg {
	opacity: 1 !important;
}

/* Hide the magnifier/lightbox icon to keep the image clinical-clean. */
.single-product div.product .woocommerce-product-gallery__trigger {
	opacity: 0 !important;
	pointer-events: none !important;
}

/* Edition Offre Tag */
.skinsous-product-eyebrow__pill {
	display: inline-block;
	padding: 6px 14px;
	border: 1px solid #D4C5B5;
	border-radius: 50px;
	font-family: 'DM Sans', sans-serif;
	font-size: 12px;
	font-weight: 600;
	color: #1C1410;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	margin-right: 8px;
	margin-bottom: 12px;
	background: transparent;
}

/* Call to Action (CTA) overrides */
.woocommerce div.product form.cart .button.single_add_to_cart_button {
	background-color: #1C1410 !important;
	color: #FBF7F1 !important;
	border-radius: 50px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	padding: 18px 32px !important;
	width: 100% !important;
	max-width: 420px !important;
	border: none !important;
	transition: all 0.3s ease !important;
}

.woocommerce div.product form.cart .button.single_add_to_cart_button:hover {
	background-color: #8B4A1C !important;
}

.woocommerce div.product form.cart .button.single_add_to_cart_button:active {
	transform: scale(0.98);
}

.woocommerce div.product form.cart .button.single_add_to_cart_button:focus {
	outline: 2px solid #C1703A;
	outline-offset: 2px;
}

/* Clinical Attributes Section */
.skinsous-product-clinical-attributes {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	margin: 32px 0;
}

.skinsous-product-clinical-attributes__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 12px;
}

.skinsous-product-clinical-attributes__item span {
	font-family: 'DM Sans', sans-serif;
	font-size: 12px;
	color: #1C1410;
	font-weight: 500;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	line-height: 1.4;
}

/* Pharmaceutical Accordions */
.skinsous-product-accordion {
	margin-top: 40px;
	border-top: 1px solid #D4C5B5;
}

.skinsous-product-accordion__item {
	border-bottom: 1px solid #D4C5B5;
}

/* --- SKINSOUS: UNIFIED PRODUCT PAGE BACKGROUND --- */
.single-product,
.single-product .site,
.single-product .site-content,
.single-product .ast-container,
.single-product #content,
.single-product #primary,
.single-product .site-main,
.single-product .ast-woocommerce-container,
.single-product .ast-content-wrapper,
.single-product .main-content-container,
.single-product div.product,
.single-product .entry-content,
.single-product .woocommerce-tabs,
.single-product .related.products,
.single-product .ast-separate-container,
.single-product .ast-separate-container .ast-article-post,
.single-product .ast-separate-container .ast-article-single {
	background-color: var(--skinsous-ivory) !important;
	border: none !important;
	box-shadow: none !important;
}

.skinsous-product-accordion__trigger {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 0;
	background: transparent;
	border: none;
	cursor: pointer;
	font-family: 'DM Sans', sans-serif;
	font-weight: 600;
	font-size: 16px;
	color: #1C1410;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	transition: color 0.3s ease, background-color 0.3s ease;
}

.skinsous-product-accordion__trigger:focus {
	outline: 2px solid #C1703A;
	outline-offset: 2px;
}

.skinsous-product-accordion__trigger:hover {
	color: #8B4A1C;
}

.skinsous-product-accordion__panel {
	display: none;
	padding: 0 0 24px 0;
	font-family: 'DM Sans', sans-serif;
	font-size: 16px;
	line-height: 1.7;
	color: #6B5F55;
}

.skinsous-product-accordion__item.is-open .skinsous-product-accordion__panel {
	display: block !important;
}

.skinsous-product-accordion__content {
	display: block !important;
}

/* Smooth Icon Rotation (Plus to Minus) */
.skinsous-product-accordion__icon {
	position: relative;
	width: 20px;
	height: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Product Card Hover Lift */
.woocommerce ul.products li.product,
.ast-woo-product-category-list .product {
	transition: transform var(--duration-normal) var(--ease-out-quint),
		box-shadow var(--duration-normal) var(--ease-out-quint) !important;
}

.woocommerce ul.products li.product:hover,
.ast-woo-product-category-list .product:hover {
	transform: translateY(-8px) !important;
	box-shadow: 0 20px 40px rgba(26, 25, 23, 0.08) !important;
}

.skinsous-product-accordion__icon-plus,
.skinsous-product-accordion__icon-minus {
	position: absolute;
	transition: transform 0.4s var(--ease-out-quint), opacity 0.3s var(--ease-out-quint);
}

.skinsous-product-accordion__icon-plus {
	opacity: 1;
	transform: rotate(0deg);
}

.skinsous-product-accordion__icon-minus {
	opacity: 0;
	transform: rotate(-90deg);
}

.skinsous-product-accordion__item.is-open .skinsous-product-accordion__icon-plus {
	opacity: 0;
	transform: rotate(90deg);
}

.skinsous-product-accordion__item.is-open .skinsous-product-accordion__icon-minus {
	opacity: 1;
	transform: rotate(0deg);
}

/* Ingredients List (INCI) - Pharmaceutical Style */
.skinsous-product-accordion__content p {
	margin-bottom: 16px;
}

.skinsous-product-accordion__content strong {
	font-weight: 600;
	color: #1C1410;
}

/* Layout Balance & Product Carousel Overrides */
.woocommerce div.product div.images,
.woocommerce-product-gallery {
	background-color: transparent !important;
	padding: 0 !important;
	border-radius: 0 !important;
	border: none !important;
	position: relative !important;
	height: auto !important;
	min-height: 0 !important;
}

.woocommerce div.product div.images .flex-viewport,
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper {
	border-radius: 20px !important;
	background-color: #FBF7F1 !important;
	overflow: hidden !important;
}

.woocommerce div.product div.images img,
.single-product .wp-block-post-featured-image img {
	width: 100%;
	height: auto;
	aspect-ratio: 4/5;
	object-fit: cover;
	background-color: transparent;
	mix-blend-mode: multiply;
	display: block;
	border-radius: 20px;
}

/* Carousel Navigation - Thumbnails */
.woocommerce div.product div.images .flex-control-nav {
	position: relative;
	bottom: auto;
	width: 100%;
	margin: 16px 0 0 0 !important;
	padding: 0 !important;
	list-style: none;
	z-index: 10;
	display: flex;
	gap: 12px;
	justify-content: flex-start;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

.woocommerce div.product div.images .flex-control-nav::-webkit-scrollbar {
	display: none;
}

.woocommerce div.product div.images .flex-control-nav li {
	display: block;
	margin: 0 !important;
	float: none !important;
	flex: 0 0 calc(25% - 9px);
	max-width: 90px;
}

.woocommerce div.product div.images .flex-control-nav li img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1/1;
	object-fit: cover !important;
	border-radius: 12px !important;
	cursor: pointer;
	border: 1px solid transparent !important;
	transition: all 0.3s ease;
	opacity: 0.6;
	background-color: #FBF7F1;
	mix-blend-mode: normal !important;
}

.woocommerce div.product div.images .flex-control-nav li img.flex-active,
.woocommerce div.product div.images .flex-control-nav li img:hover {
	opacity: 1;
	border-color: #D4C5B5 !important;
}

/* Carousel Navigation - Arrows */
.woocommerce div.product div.images .flex-direction-nav {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}

.woocommerce div.product div.images .flex-direction-nav a {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 48px;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-indent: -9999px;
	z-index: 10;
	opacity: 0;
	transition: opacity 0.3s ease, left 0.3s ease, right 0.3s ease;
	background: transparent !important;
}

.woocommerce div.product div.images:hover .flex-direction-nav a {
	opacity: 1;
}

.woocommerce div.product div.images .flex-direction-nav a.flex-prev {
	left: 5px;
}

.woocommerce div.product div.images:hover .flex-direction-nav a.flex-prev {
	left: 15px;
}

.woocommerce div.product div.images .flex-direction-nav a.flex-next {
	right: 5px;
}

.woocommerce div.product div.images:hover .flex-direction-nav a.flex-next {
	right: 15px;
}

/* Circular White Navigation Arrows */
.woocommerce div.product div.images .flex-direction-nav a {
	background: #ffffff !important;
	border-radius: 50% !important;
	width: 36px !important;
	height: 36px !important;
	box-shadow: 0 4px 12px rgba(28, 20, 16, 0.08) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	opacity: 1 !important;
}

.woocommerce div.product div.images .flex-direction-nav a::before {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	border-top: 2px solid #1C1410 !important;
	border-left: 2px solid #1C1410 !important;
	transform: rotate(-45deg);
	margin-left: 4px;
}

.woocommerce div.product div.images .flex-direction-nav a.flex-next::before {
	transform: rotate(135deg);
	margin-left: -4px;
}



/* =========================================================================
   SKINSOUS SINGLE PRODUCT REDESIGN (Strict No Emojis)
   ========================================================================= */

/* GLOBAL SINGLE PRODUCT STYLES */
body.single-product {
	background-color: #FBF7F1 !important;
}

/* Bilingual Support */
:lang(ar) {
	font-family: 'Noto Serif Arabic', serif !important;
}

/* DESKTOP LAYOUT (> 768px) */
@media (min-width: 768px) {
	.single-product .woocommerce div.product {
		display: flex;
		flex-wrap: nowrap;
		gap: 50px;
		align-items: flex-start;
		padding: 40px 0;
	}

	.single-product .woocommerce div.product div.images {
		width: 50% !important;
		float: none !important;
	}

	.single-product .woocommerce div.product div.summary {
		width: 50% !important;
		float: none !important;
	}

	/* Desktop Image Styling */
	.single-product .woocommerce div.product div.images .flex-control-nav {
		gap: 16px;
		justify-content: flex-start;
	}
}

/* MOBILE LAYOUT (< 768px) */
@media (max-width: 767px) {
	.single-product .woocommerce div.product {
		display: block;
	}

	.single-product .woocommerce div.product div.images {
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		margin-bottom: 40px !important;
		/* Prevents overlap with text below */
	}

	.single-product .woocommerce div.product .product_title {
		font-size: 32px !important;
		margin-top: 10px !important;
	}



	/* Sticky Bottom Bar */
	.skinsous-mobile-sticky-bar {
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100vw;
		background-color: #FBF7F1;
		padding: 15px 20px;
		box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.05);
		display: flex;
		align-items: center;
		gap: 15px;
		z-index: 999;
		box-sizing: border-box;
	}

	/* Adjust main layout bottom padding so content doesn't hide behind sticky bar */
	body.single-product {
		padding-bottom: 90px !important;
	}
}

/* SIZE SELECTORS (PILLS) */
.skinsous-pill-group {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 20px;
}

.skinsous-pill-btn {
	background-color: #FBF7F1 !important;
	color: #1C1410 !important;
	border: 1px solid #D4C5B5 !important;
	border-radius: 50px !important;
	padding: 10px 24px !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	cursor: pointer;
	transition: all 0.3s ease;
}

.skinsous-pill-btn.active,
.skinsous-pill-btn:hover {
	border-color: #1C1410 !important;
}

.skinsous-pill-btn:active {
	transform: scale(0.98);
}

.skinsous-pill-btn:focus {
	outline: 2px solid #C1703A;
	outline-offset: 2px;
}

.skinsous-pill-btn.active {
	background-color: #1C1410 !important;
	color: #FBF7F1 !important;
}

/* CART & WISHLIST ICON */
.skinsous-wishlist-icon {
	background: transparent !important;
	border: 1px solid #D4C5B5 !important;
	border-radius: 50%;
	width: 50px;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #1C1410;
	cursor: pointer;
	transition: all 0.3s ease;
	flex-shrink: 0;
}

.skinsous-wishlist-icon:hover {
	border-color: #1C1410 !important;
}

.skinsous-wishlist-icon:active {
	transform: scale(0.95);
}

.skinsous-wishlist-icon:focus {
	outline: 2px solid #C1703A;
	outline-offset: 2px;
}

.skinsous-wishlist-icon svg {
	width: 20px;
	height: 20px;
}

/* DESKTOP CART FORM LAYOUT */
@media (min-width: 768px) {
	.single-product .woocommerce div.product form.cart {
		display: flex;
		align-items: center;
		gap: 15px;
		flex-wrap: wrap;
	}

	.skinsous-mobile-sticky-bar {
		display: contents;
		/* Remove sticky wrap behavior on desktop */
	}
}

/* ACCORDIONS (DESCRIPTION / INGREDIENTS) */
.skinsous-product-accordions {
	margin-top: 40px;
	border-top: 1px solid var(--skinsous-warm-sand);
}

.skinsous-accordion {
	border-bottom: 1px solid var(--skinsous-warm-sand);
}

.skinsous-accordion-title {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 0;
	cursor: pointer;
	font-family: 'DM Sans', sans-serif;
	font-weight: 600;
	font-size: 14px;
	color: var(--skinsous-ink);
	letter-spacing: 0.05em;
	text-transform: uppercase;
	list-style: none;
	/* Hide default arrow */
}

.skinsous-accordion-title::-webkit-details-marker {
	display: none;
	/* Hide default arrow webkit */
}

.skinsous-accordion-icon {
	font-size: 18px;
	font-weight: 400;
}

.skinsous-accordion-content {
	padding: 0 0 24px 0;
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	line-height: 1.7;
	color: #2C2A27;
}

/* CLINICAL CONTENT UTILITIES */
.ingredient-callout {
	color: var(--skinsous-gold);
	font-weight: 600;
}

/* INCI FORMATTING */
.inci-ingredients {
	font-size: 12px;
	line-height: 1.6;
	color: var(--skinsous-muted);
}

/* ==========================================================================
   USER DIRECTED FIXES
   ========================================================================== */

/* DESKTOP FIXES (Width > 768px) */
@media (min-width: 769px) {

	/* Fix Gallery Layout */
	.woocommerce-product-gallery {
		display: flex;
		flex-direction: column;
		padding-bottom: 40px !important;
	}

	.woocommerce-product-gallery__wrapper {
		margin-bottom: 20px !important;
	}

	.woocommerce-product-gallery__image img {
		border-radius: 20px !important;
	}

	/* Thumbnails below main image */
	.flex-control-thumbs {
		display: flex !important;
		justify-content: flex-start;
		padding: 10px 0 0 0 !important;
		margin: 0 -5px !important;
		list-style: none !important;
	}

	.flex-control-thumbs li {
		width: 20% !important;
		padding: 0 5px !important;
	}

	.flex-control-thumbs img {
		border-radius: 10px !important;
		opacity: 0.5;
		transition: 0.3s;
		border: 1px solid transparent;
	}

	.flex-control-thumbs img.flex-active {
		opacity: 1;
		border-color: #8B4A1C !important;
		/* Argan Gold */
	}
}

/* MOBILE FIXES (Width < 768px) */
@media (max-width: 768px) {

	/* DELETE THUMBNAILS ON MOBILE - They look bad */
	.flex-control-thumbs {
		display: none !important;
	}

	/* Enable Swipe Dots */
	.flex-control-paging {
		display: flex !important;
		justify-content: center;
		margin-top: 15px !important;
		list-style: none !important;
	}

	.flex-control-paging li a {
		width: 8px !important;
		height: 8px !important;
		background: #D4C5B5 !important;
		/* Warm Sand */
		text-indent: -9999px;
		display: block;
		border-radius: 50%;
		margin: 0 5px;
	}

	.flex-control-paging li a.flex-active {
		background: #1C1410 !important;
		/* Kohl Noir */
	}

	.woocommerce-product-gallery__image img {
		border-radius: 15px !important;
	}
}

/* Restore default WooCommerce tabs/description visibility (was brute-forced hidden). */

/* ==========================================================================
   GLOBAL PRODUCT PAGE FIXES (Mobile & Zoom UX)
   ========================================================================== */

/* GLOBAL MOBILE FIX (Product Image Scaling) */
@media (max-width: 768px) {
	.single-product .woocommerce-product-gallery {
		max-height: 55vh !important;
		margin-bottom: 30px !important;
		padding-bottom: 40px !important;
		background-color: #FBF7F1 !important;
	}
}

/* (Purged) Broken circular lens zoom removed. */

/* Minimalist Quick View / Zoom Icon */
.woocommerce-product-gallery__trigger {
	border: 1px solid #1C1410 !important;
	background: transparent !important;
	border-radius: 50% !important;
}

.woocommerce-product-gallery__trigger::before {
	border: 1px solid #1C1410 !important;
	border-top: none !important;
	border-left: none !important;
}

/* CLINICAL LABEL ALIGNMENT & TYPOGRAPHY */
.skinsous-product-concentration {
	font-family: 'DM Sans', sans-serif !important;
	color: #8B4A1C !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	text-align: left !important;
	margin-top: 20px !important;
	margin-bottom: 10px !important;
	display: block !important;
	position: relative;
	z-index: 5;
}

/* VISUAL POLISH */
body.single-product,
.single-product .woocommerce div.product {
	background-color: var(--skinsous-ivory) !important;
	color: #1C1410 !important;
}

.single-product .summary,
.single-product .summary p,
.single-product .summary span,
.single-product .summary div {
	text-align: left !important;
}

.single-product .product_title {
	font-family: 'Cormorant Garamond', serif !important;
	text-align: left !important;
	color: #1C1410 !important;
}

/* Inline Trust Badges (Checkmarks) */
.skinsous-inline-badges {
	display: flex !important;
	gap: 16px !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 20px 0 24px 0 !important;
	flex-wrap: wrap;
}

.skinsous-inline-badges .skinsous-trust-badges__item {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 13px !important;
	color: #6B5F55 !important;
	font-weight: 500 !important;
}

.skinsous-inline-badges .skinsous-trust-badges__icon {
	display: flex;
	align-items: center;
	justify-content: center;
}

/* CTA Button Enhancements */
.skinsous-cta-price {
	font-weight: 700;
}

.skinsous-cta-divider {
	margin: 0 10px;
	opacity: 0.6;
	font-weight: 400;
}

.skinsous-product-cta__note {
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	color: #6B5F55;
	margin-top: 14px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Custom Skinsous Product Accordion */
.skinsous-product-accordion {
	margin-top: 40px;
	border-top: 1px solid var(--skinsous-warm-sand);
}

.skinsous-product-accordion__item {
	border-bottom: 1px solid var(--skinsous-warm-sand);
	background: transparent;
	transition: background 0.3s ease, border-left 0.3s ease;
	border-left: 2px solid transparent;
}

.skinsous-product-accordion__item.is-open {
	background: var(--skinsous-ivory);
	border-left: 2px solid var(--skinsous-gold);
}

.skinsous-product-accordion__trigger {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 24px 0 24px 16px;
	background: transparent;
	border: none;
	cursor: pointer;
	font-family: 'Cormorant Garamond', serif;
	font-size: 24px;
	color: var(--skinsous-ink);
	outline: none;
}

.skinsous-product-accordion__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	margin-right: 16px;
}

.skinsous-product-accordion__icon-plus {
	display: block;
	transition: transform 0.3s ease;
	transform-origin: 50% 50%;
}

.skinsous-product-accordion__icon-minus {
	display: none;
}

.skinsous-product-accordion__item.is-open .skinsous-product-accordion__icon-plus {
	transform: rotate(45deg);
}

.skinsous-product-accordion__panel {
	display: block;
	padding: 0 16px;
	background: transparent;
}

.skinsous-product-accordion__content {
	display: none;
	padding: 15px 0 25px 0;
	color: var(--skinsous-ink);
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	line-height: 1.6;
	background: transparent;
}

.skinsous-product-accordion__item.is-open .skinsous-product-accordion__content {
	display: block;
}

/* Skinsous Luxury Ingredients Grid */
.skinsous-ingredients-grid {
	margin-top: 50px;
	padding: 40px 0;
	border-top: none;
	/* Remove basic line */
	display: block !important;
}

.skinsous-ingredients-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 24px;
	color: var(--skinsous-ink);
	text-align: center;
	/* Centered for editorial look */
	margin-bottom: 40px;
	text-transform: uppercase;
	font-weight: 600;
	letter-spacing: 0.08em;
}

.skinsous-ingredients-wrapper {
	display: flex;
	gap: 25px;
	justify-content: space-between;
}

.skinsous-ingredient-item {
	flex: 1;
	background: var(--skinsous-ivory);
	padding: 35px 25px;
	border-radius: 0px;
	/* Sharp clinical edges */
	border: none;
	/* Remove basic borders */
	border-top: 3px solid var(--skinsous-gold);
	/* Argan Gold top accent line */
	text-align: center;
	box-shadow: 0 10px 30px rgba(26, 25, 23, 0.04);
	/* Very soft luxury shadow */
	transition: transform 0.3s ease;
}

.skinsous-ingredient-item:hover {
	transform: translateY(-5px);
	/* Subtle lift on hover */
}

.skinsous-ingredient-name {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	font-weight: 700;
}

/* ===== SKINSOUS MOVEMENT MARQUEE ===== */
.skinsous-marquee {
	width: 100%;
	overflow: hidden;
	background-color: #F5F3EE;
	padding: 30px 0;
	position: relative;
}

.skinsous-marquee__track {
	display: flex;
	align-items: center;
	gap: 60px;
	width: max-content;
	animation: skinsousMarqueeScroll 35s linear infinite;
	will-change: transform;
}

.skinsous-marquee__track:hover {
	animation-play-state: paused;
}

.skinsous-marquee__img {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	object-fit: cover;
	flex-shrink: 0;
	border: 2px solid rgba(184, 150, 90, 0.25);
}

.skinsous-marquee__label {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	font-weight: 500;
	color: #1A1917;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	white-space: nowrap;
	flex-shrink: 0;
}

@keyframes skinsousMarqueeScroll {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-50%);
	}
}

@media (max-width: 768px) {
	.skinsous-marquee {
		padding: 20px 0;
	}

	.skinsous-marquee__track {
		gap: 30px;
	}

	.skinsous-marquee__img {
		width: 60px;
		height: 60px;
	}

	.skinsous-marquee__label {
		font-size: 12px;
	}
}

/* ===== SKINSOUS PREMIUM FAQ ACCORDION ===== */

.skinsous-faq-container {
	max-width: 850px;
	margin: 80px auto;
	padding: 20px;
}

.skinsous-faq-wrapper {
	width: 100%;
}

.skinsous-faq-title {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 32px;
	font-weight: 600;
	color: var(--skinsous-ink);
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	margin-bottom: 50px;
	position: relative;
	padding-bottom: 20px;
}

.skinsous-faq-title::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 60px;
	height: 3px;
	background-color: var(--skinsous-gold);
}

.skinsous-faq-accordion {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.skinsous-faq-item {
	border-bottom: 1px solid rgba(184, 150, 90, 0.2);
	transition: all 0.3s var(--ease-out-cubic);
}

.skinsous-faq-item.is-open {
	border-left: 3px solid var(--skinsous-gold);
	padding-left: 22px;
	background-color: rgba(250, 247, 242, 0.8);
}

.skinsous-faq-trigger {
	width: 100%;
	background: transparent;
	border: none;
	padding: 25px 0;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	transition: all 0.3s var(--ease-out-cubic);
	text-align: left;
}

.skinsous-faq-trigger:hover {
	color: var(--skinsous-gold);
}

.skinsous-faq-trigger:focus {
	outline: none;
	box-shadow: inset 0 0 0 2px var(--skinsous-gold);
	border-radius: 2px;
}

.skinsous-faq-question {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--skinsous-ink);
	letter-spacing: 0.05em;
	flex: 1;
	line-height: 1.4;
	transition: color 0.3s var(--ease-out-cubic);
}

.skinsous-faq-trigger:hover .skinsous-faq-question {
	color: var(--skinsous-gold);
}

.skinsous-faq-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
	color: var(--skinsous-gold);
	transition: transform 0.4s var(--ease-out-cubic);
}

.skinsous-faq-item.is-open .skinsous-faq-icon {
	transform: rotate(45deg);
}

.skinsous-faq-answer {
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.4s var(--ease-out-cubic);
}

.skinsous-faq-answer-content {
	padding: 0 0 25px 0;
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	line-height: 1.7;
	color: var(--skinsous-muted);
}

.skinsous-faq-answer-content p {
	margin: 0 0 15px 0;
	color: var(--skinsous-muted);
}

.skinsous-faq-answer-content p:last-child {
	margin-bottom: 0;
}

/* Mobile Responsive FAQ */
@media (max-width: 768px) {
	.skinsous-faq-container {
		margin: 60px auto;
		padding: 15px;
	}

	.skinsous-faq-title {
		font-size: 24px;
		margin-bottom: 40px;
		padding-bottom: 15px;
	}

	.skinsous-faq-trigger {
		padding: 20px 0;
		gap: 15px;
	}

	.skinsous-faq-question {
		font-size: 14px;
	}

	.skinsous-faq-item.is-open {
		padding-left: 17px;
		border-left-width: 2px;
	}

	.skinsous-faq-answer-content {
		font-size: 13px;
		line-height: 1.6;
		padding: 0 0 20px 0;
	}

	.skinsous-faq-icon {
		width: 20px;
		height: 20px;
	}
}

.skinsous-ingredient-desc {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	color: #4A4844;
	/* Slightly softer text for readability */
	line-height: 1.6;
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
	.skinsous-ingredients-wrapper {
		flex-direction: column;
		gap: 20px;
	}
}

/* --- SKINSOUS: RETINOL LIFESTYLE BLOCK (BREAKOUT) --- */
.skinsous-retinol-lifestyle-block {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(-50vw + 50%) !important;
	margin-right: calc(-50vw + 50%) !important;
	position: relative !important;
	z-index: 10 !important;
	background: var(--skinsous-ivory) !important;
	padding: 80px 0 !important;
	margin-top: 60px !important;
	margin-bottom: 60px !important;
	clear: both !important;
	border-top: 1px solid var(--skinsous-warm-sand) !important;
	border-bottom: 1px solid var(--skinsous-warm-sand) !important;
}

.skinsous-lifestyle-inner {
	max-width: 1280px !important;
	margin: 0 auto !important;
	padding: 0 40px !important;
}

.skinsous-lifestyle-grid {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.skinsous-lifestyle-image {
	width: 100%;
}

.skinsous-lifestyle-img {
	width: 100%;
	height: auto;
	max-height: 500px;
	object-fit: cover;
	display: block;
	box-shadow: 0 30px 60px rgba(26, 25, 23, 0.12);
	border-radius: 4px;
}

.skinsous-lifestyle-content {
	width: 100%;
	display: flex;
	align-items: center;
}

.skinsous-lifestyle-eyebrow {
	display: inline-block;
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	font-weight: 700;
	color: var(--skinsous-gold);
	letter-spacing: 0.25em;
	text-transform: uppercase;
	border-bottom: 2px solid var(--skinsous-gold);
	padding-bottom: 8px;
	margin-bottom: 24px;
}

.skinsous-lifestyle-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 36px;
	font-weight: 400;
	color: var(--skinsous-ink);
	line-height: 1.1;
	margin-bottom: 28px;
}

.skinsous-lifestyle-desc {
	font-family: 'DM Sans', sans-serif;
	font-size: 16px;
	line-height: 1.8;
	color: var(--skinsous-muted);
	margin-bottom: 40px;
}

.skinsous-lifestyle-benefits {
	list-style: none;
	padding: 0;
	margin: 0 0 48px 0;
	display: grid;
	gap: 16px;
}

.skinsous-lifestyle-benefit-item {
	display: flex;
	align-items: center;
	gap: 12px;
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	font-weight: 500;
	color: var(--skinsous-ink);
}

.skinsous-lifestyle-check {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
}

.skinsous-lifestyle-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: 'DM Sans', sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: var(--skinsous-ink);
	border: 2px solid var(--skinsous-ink);
	border-radius: 50px;
	padding: 16px 32px;
	text-decoration: none;
	transition: all 0.3s ease;
	width: 100%;
	box-sizing: border-box;
}

.skinsous-lifestyle-cta:hover {
	background: var(--skinsous-ink);
	color: var(--skinsous-ivory);
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(26, 25, 23, 0.15);
}

/* Desktop Styles */
@media (min-width: 1024px) {
	.skinsous-lifestyle-grid {
		flex-direction: row;
		align-items: center;
		gap: 80px;
	}

	.skinsous-lifestyle-image {
		width: 55%;
	}

	.skinsous-lifestyle-content {
		width: 45%;
	}

	.skinsous-lifestyle-title {
		font-size: 42px;
	}

	.skinsous-lifestyle-cta {
		width: fit-content;
	}
}

/* Mobile Responsiveness Fix for Retinol Lifestyle Block */
@media (max-width: 768px) {
	.skinsous-retinol-lifestyle-block {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		left: auto !important;
		right: auto !important;
		position: relative !important;
		padding: 60px 20px !important;
		overflow: hidden !important;
	}

	.skinsous-lifestyle-inner {
		padding: 0 !important;
	}

	.skinsous-lifestyle-grid {
		display: flex !important;
		flex-direction: column !important;
		gap: 40px !important;
	}

	.skinsous-lifestyle-image,
	.skinsous-lifestyle-content {
		width: 100% !important;
	}

	.skinsous-lifestyle-img {
		width: 100% !important;
		height: auto !important;
	}

	.skinsous-lifestyle-title {
		font-size: 28px !important;
	}

	.skinsous-lifestyle-cta {
		width: 100% !important;
	}

	/* --- GLOBAL PROFESSIONAL REVEAL SYSTEM --- */
	.skinsous-reveal,
	.products .product {
		opacity: 0;
		transform: translateY(30px);
		transition: opacity 0.8s var(--ease-out-quint),
			transform 0.8s var(--ease-out-quint);
		will-change: transform, opacity;
	}

	.skinsous-reveal.is-visible,
	.products .product.is-visible {
		opacity: 1 !important;
		transform: translateY(0) !important;
	}

	/* Staggered Child Reveal */
	.skinsous-reveal-stagger>* {
		opacity: 0 !important;
		transform: translateY(20px) !important;
		transition: opacity 0.6s var(--ease-out-quint),
			transform 0.6s var(--ease-out-quint) !important;
	}

	.skinsous-reveal-stagger.is-visible>*:nth-child(1) {
		transition-delay: 0.1s;
		opacity: 1 !important;
		transform: translateY(0) !important;
	}

	.skinsous-reveal-stagger.is-visible>*:nth-child(2) {
		transition-delay: 0.2s;
		opacity: 1 !important;
		transform: translateY(0) !important;
	}

	.skinsous-reveal-stagger.is-visible>*:nth-child(3) {
		transition-delay: 0.3s;
		opacity: 1 !important;
		transform: translateY(0) !important;
	}

	.skinsous-reveal-stagger.is-visible>*:nth-child(4) {
		transition-delay: 0.4s;
		opacity: 1 !important;
		transform: translateY(0) !important;
	}

	.skinsous-reveal-stagger.is-visible>*:nth-child(5) {
		transition-delay: 0.5s;
		opacity: 1 !important;
		transform: translateY(0) !important;
	}

	/* Accessibility: Respect prefers-reduced-motion */
	@media (prefers-reduced-motion: reduce) {

		.skinsous-reveal,
		.skinsous-reveal-stagger>*,
		.products .product,
		.button,
		.woocommerce ul.products li.product {
			transition: none !important;
			opacity: 1 !important;
			transform: none !important;
			animation: none !important;
		}
	}
}

/* --- SKINSOUS: APPLICATION RITUAL SECTION --- */
.skinsous-ritual-section {
	background-color: #F2E8D9;
	/* Sand Background */
	padding: 100px 0;
	width: 100% !important;
	clear: both !important;
	position: relative;
}

.skinsous-ritual-container {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 30px;
}

.skinsous-ritual-header {
	text-align: center;
	margin-bottom: 70px;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}

.skinsous-ritual-eyebrow {
	font-family: 'DM Mono', monospace;
	font-size: 11px;
	letter-spacing: 0.25em;
	text-transform: uppercase;
	color: #C1703A;
	/* Clay */
	display: block;
	margin-bottom: 15px;
}

.skinsous-ritual-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(32px, 4vw, 48px);
	font-weight: 300;
	color: #1A1917;
	/* Kohl Noir */
	margin-bottom: 25px;
	line-height: 1.1;
}

.skinsous-ritual-subtitle {
	font-family: 'DM Sans', sans-serif;
	font-size: 16px;
	color: #6B5F55;
	/* Smoke */
	line-height: 1.7;
}

.skinsous-ritual-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.skinsous-ritual-step {
	background-color: #FBF7F1;
	/* Linen Surface */
	padding: 50px 40px;
	border-radius: 12px;
	border: 1px solid #D4C5B5;
	/* Mist Border */
	transition: transform 0.4s ease, box-shadow 0.4s ease;
	display: flex;
	flex-direction: column;
}

.skinsous-ritual-step:hover {
	transform: translateY(-10px);
	box-shadow: 0 20px 40px rgba(28, 20, 16, 0.08);
}

.skinsous-ritual-step-top {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 35px;
}

.skinsous-ritual-number {
	font-family: 'Cormorant Garamond', serif;
	font-size: 42px;
	font-weight: 300;
	color: rgba(193, 112, 58, 0.2);
	/* Faded Clay */
	line-height: 1;
}

.skinsous-ritual-icon {
	color: #C1703A;
	/* Clay */
	background: rgba(193, 112, 58, 0.05);
	padding: 12px;
	border-radius: 50%;
}

.skinsous-ritual-step-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 24px;
	font-weight: 400;
	color: #1A1917;
	margin-bottom: 20px;
	letter-spacing: 0.02em;
}

.skinsous-ritual-step-desc {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	line-height: 1.8;
	color: #6B5F55;
	margin: 0;
}

.skinsous-ritual-footer {
	margin-top: 60px;
	display: flex;
	justify-content: center;
}

.skinsous-ritual-tip {
	background: #ffffff;
	padding: 20px 35px;
	border-radius: 50px;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	color: #1A1917;
	border: 1px solid rgba(193, 112, 58, 0.3);
	max-width: 650px;
	text-align: center;
	line-height: 1.6;
}

.skinsous-ritual-tip strong {
	color: #C1703A;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	margin-right: 5px;
}

/* Responsive Ritual */
@media (max-width: 991px) {
	.skinsous-ritual-grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.skinsous-ritual-section {
		padding: 70px 0;
	}

	.skinsous-ritual-step {
		padding: 40px 30px;
	}
}

/* --- SKINSOUS: HOMEPAGE PRODUCT GRID ANIMATION --- */
.home .products .product,
.home .wc-block-grid__product {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity var(--duration-normal) var(--ease-out-quint),
		transform var(--duration-normal) var(--ease-out-quint);
}

@media (prefers-reduced-motion: reduce) {

	.home .products .product,
	.home .wc-block-grid__product {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}

.home .products .product.is-visible,
.home .wc-block-grid__product.is-visible {
	opacity: 1;
	transform: translateY(0);
}

/* --- SKINSOUS: LUXURY HOVER EFFECT --- */
.skinsous-hover-ready {
	position: relative;
	overflow: hidden;
}

.skinsous-primary-img {
	transition: opacity 0.6s ease, transform 0.6s ease;
	opacity: 1;
}

.skinsous-hover-img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	transition: opacity 0.6s ease, transform 0.8s ease;
	z-index: 2;
	pointer-events: none;
}

.skinsous-hover-ready:hover .skinsous-primary-img {
	opacity: 0;
	transform: scale(1.05);
}

.skinsous-hover-ready:hover .skinsous-hover-img {
	opacity: 1;
	transform: scale(1.05);
}

/* Skinsous High-Definition Image Rendering */
.woocommerce-product-gallery__image img,
.skinsous-crisp-img {
	image-rendering: -webkit-optimize-contrast;
	/* Webkit crispness */
	image-rendering: crisp-edges;
	transform: translateZ(0);
	/* Hardware acceleration */
}

/* --- SKINSOUS: COLLAGEN PRODUCT SECTIONS --- */

.skinsous-collagen-piliers {
	margin: 60px 0;
	padding: 0 20px;
}

.skinsous-collagen-container {
	max-width: 1200px;
	margin: 0 auto;
}

.skinsous-collagen-title {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	font-weight: 700;
	color: #1A1917;
	/* Kohl Noir */
	text-transform: uppercase;
	letter-spacing: 0.15em;
	text-align: center;
	margin-bottom: 40px;
}

.skinsous-piliers-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.skinsous-pilier-item {
	border: 1px solid #E8DDD0;
	border-radius: 0;
	/* Sharp clinical aesthetic */
	padding: 40px 25px;
	text-align: center;
	background: #ffffff;
	transition: border-color 0.3s ease;
}

.skinsous-pilier-item:hover {
	border-color: #B8965A;
	/* Argan Gold */
}

.skinsous-pilier-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 24px;
	color: #B8965A;
	/* Argan Gold */
	margin-bottom: 15px;
	font-weight: 500;
}

.skinsous-pilier-desc {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	color: #6B5F55;
	line-height: 1.6;
	margin: 0;
}

/* SECTION B: BIO-ABSORPTION CLINIQUE */
.skinsous-collagen-absorption {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(-50vw + 50%) !important;
	margin-right: calc(-50vw + 50%) !important;
	background-color: #FAF7F2;
	/* Hammam Ivory */
	clear: both;
	overflow: hidden;
	margin-bottom: 60px;
	border-top: 1px solid #E8DDD0;
	border-bottom: 1px solid #E8DDD0;
}

.skinsous-absorption-grid {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}

.skinsous-absorption-image {
	width: 50%;
	position: relative;
	min-height: 500px;
}

.skinsous-absorption-image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 0;
	/* Sharp */
}

.skinsous-absorption-content {
	width: 50%;
	display: flex;
	align-items: center;
	padding: 80px 60px;
}

.skinsous-absorption-text-wrap {
	max-width: 500px;
}

.skinsous-eyebrow {
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	font-weight: 700;
	color: #B8965A;
	/* Argan Gold */
	letter-spacing: 0.25em;
	text-transform: uppercase;
	display: block;
	margin-bottom: 20px;
}

.skinsous-absorption-title {
	font-family: 'DM Sans', sans-serif;
	font-size: 28px;
	font-weight: 400;
	color: #1A1917;
	/* Kohl Noir */
	line-height: 1.2;
	margin-bottom: 25px;
	letter-spacing: 0.05em;
}

.skinsous-absorption-desc {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	color: #1A1917;
	/* Kohl Noir */
	line-height: 1.8;
	margin: 0;
}

/* Mobile Responsiveness */
@media (max-width: 991px) {
	.skinsous-piliers-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.skinsous-absorption-image,
	.skinsous-absorption-content {
		width: 100%;
	}

	.skinsous-absorption-image {
		min-height: 350px;
	}

	.skinsous-absorption-content {
		padding: 50px 30px;
	}
}

@media (max-width: 768px) {
	.skinsous-piliers-grid {
		grid-template-columns: 1fr;
	}
}

/* ===== SKINSOUS: RÃ‰SULTATS CLINIQUES (RÃ‰TINOL) ===== */

.skinsous-results-cliniques {
	background-color: var(--skinsous-ivory);
	padding: 80px 24px;
	margin: 0 auto;
	width: 100%;
	clear: both;
}

.skinsous-results-cliniques__inner {
	max-width: 1100px;
	margin: 0 auto;
}

.skinsous-results-cliniques__title {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 32px;
	font-weight: 600;
	color: var(--skinsous-ink);
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	margin: 0 0 60px 0;
	position: relative;
	padding-bottom: 20px;
}

.skinsous-results-cliniques__title::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 60px;
	height: 3px;
	background-color: var(--skinsous-gold);
}

.skinsous-results-cliniques__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}

.skinsous-results-cliniques__card {
	background-color: #ffffff;
	border: 1px solid #E8DDD0;
	border-radius: 0;
	padding: 50px 36px 44px;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
	transition: transform 0.3s var(--ease-out-quint),
		box-shadow 0.3s var(--ease-out-quint);
	border-bottom: 3px solid transparent;
}

.skinsous-results-cliniques__card:hover {
	transform: translateY(-6px);
	box-shadow: 0 20px 45px rgba(26, 25, 23, 0.08);
	border-bottom-color: var(--skinsous-gold);
}

.skinsous-results-cliniques__stat {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: clamp(48px, 6vw, 72px);
	font-weight: 700;
	color: var(--skinsous-ink);
	line-height: 1;
	margin-bottom: 16px;
	display: block;
}

.skinsous-results-cliniques__label {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	font-weight: 700;
	color: var(--skinsous-ink);
	text-transform: uppercase;
	letter-spacing: 0.05em;
	margin: 0 0 14px 0;
	line-height: 1.3;
}

.skinsous-results-cliniques__desc {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	line-height: 1.7;
	color: var(--skinsous-muted);
	margin: 0;
	max-width: 28ch;
}

/* Mobile */
@media (max-width: 768px) {
	.skinsous-results-cliniques {
		padding: 60px 20px;
	}

	.skinsous-results-cliniques__title {
		font-size: 24px;
		margin-bottom: 40px;
	}

	.skinsous-results-cliniques__grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.skinsous-results-cliniques__card {
		padding: 40px 28px 36px;
	}

	.skinsous-results-cliniques__stat {
		font-size: 48px;
	}

	.skinsous-results-cliniques__desc {
		max-width: 100%;
	}
}

/* ===== SKINSOUS: SLEEK-INSPIRED RÃ‰TINOL SECTION ===== */
.skinsous-sleek-editorial {
	/* Brand Tokens from Guide */
	--clay: #C1703A;
	--saffron: #E8A045;
	--argan: #8B4A1C;
	--sand: #F2E8D9;
	--linen: #FBF7F1;
	--kohl: #1C1410;
	--smoke: #6B5F55;
	--mist: #D4C5B5;

	--font-display: 'Cormorant Garamond', Georgia, serif;
	--font-body: 'Jost', 'Segoe UI', sans-serif;
	--font-mono: 'DM Mono', 'Courier New', monospace;

	--sp-xs: 0.25rem;
	--sp-sm: 0.5rem;
	--sp-md: 1rem;
	--sp-lg: 1.5rem;
	--sp-xl: 2.5rem;
	--sp-2xl: 4rem;
	--sp-3xl: 6rem;

	--radius-sm: 2px;
	--radius-md: 6px;
	--radius-lg: 16px;
	--radius-pill: 100px;

	--shadow-card: 0 2px 16px rgba(28, 20, 16, .08);

	/* Layout & Flow Protection */
	display: block !important;
	clear: both !important;
	width: 100% !important;
	box-sizing: border-box !important;
	position: relative !important;
	padding: var(--sp-3xl) 0;
	background: transparent;
	font-family: var(--font-body);
	color: var(--kohl);
}

.sleek-page-wrap {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 var(--sp-md);
}

@media (min-width: 768px) {
	.sleek-page-wrap {
		padding: 0 var(--sp-xl);
	}
}

/* 1. Reassurances Row */
.sleek-reassurances-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--sp-sm) var(--sp-md);
	margin-bottom: var(--sp-2xl);
}

.sleek-pill {
	display: inline-flex;
	align-items: center;
	gap: .4em;
	padding: .3em .9em;
	border-radius: var(--radius-pill);
	font-family: var(--font-body);
	font-size: .78rem;
	letter-spacing: .12em;
	text-transform: uppercase;
	font-weight: 500;
	background: transparent;
	border: 1px solid var(--mist);
	color: var(--smoke);
}

.sleek-pill svg {
	color: var(--clay);
}

/* 2. Section Header */
.sleek-section-header {
	text-align: center;
	max-width: 800px;
	margin: 0 auto var(--sp-2xl);
}

.sleek-heading {
	font-family: var(--font-display);
	font-size: clamp(2rem, 5vw, 3.2rem);
	font-weight: 300;
	color: var(--argan);
	line-height: 1.1;
	margin-bottom: var(--sp-sm);
}

.sleek-subheading {
	font-family: var(--font-body);
	font-size: 1.1rem;
	color: var(--smoke);
	font-weight: 400;
	margin: 0;
}

/* 3. Split Card */
.sleek-split-card {
	display: flex;
	flex-direction: column;
	background: var(--linen);
	border: 1px solid var(--mist);
	border-radius: var(--radius-lg);
	overflow: hidden;
	box-shadow: var(--shadow-card);
	margin-bottom: var(--sp-3xl);
}

@media (min-width: 900px) {
	.sleek-split-card {
		flex-direction: row;
		min-height: 500px;
	}

	.sleek-card-content,
	.sleek-card-image {
		flex: 1;
		width: 50%;
	}
}

.sleek-card-content {
	padding: var(--sp-lg);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

@media (min-width: 768px) {
	.sleek-card-content {
		padding: var(--sp-2xl);
	}
}

.sleek-card-label {
	font-family: var(--font-mono);
	font-size: .72rem;
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--clay);
	margin-bottom: var(--sp-sm);
}

.sleek-card-title {
	font-family: var(--font-display);
	font-size: clamp(1.8rem, 4vw, 2.8rem);
	font-weight: 400;
	color: var(--kohl);
	line-height: 1.2;
	margin-bottom: var(--sp-lg);
}

.sleek-card-desc {
	font-family: var(--font-body);
	font-size: 1rem;
	color: var(--smoke);
	line-height: 1.7;
	margin: 0;
}

.sleek-card-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	min-height: 350px;
}

/* 4. Pillars Grid */
.sleek-pillars-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--sp-lg);
	text-align: center;
}

@media (min-width: 768px) {
	.sleek-pillars-grid {
		grid-template-columns: repeat(4, 1fr);
	}
}

.sleek-pillar {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.sleek-pillar-icon {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--sand);
	border: 1.5px solid var(--mist);
	color: var(--clay);
	margin-bottom: var(--sp-md);
}

.sleek-pillar-title {
	font-family: var(--font-body);
	font-size: .85rem;
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--smoke);
	margin-bottom: var(--sp-xs);
}

.sleek-pillar-desc {
	font-family: var(--font-body);
	font-size: .85rem;
	color: var(--smoke);
	margin: 0;
}

/* ===== SKINSOUS: RÃ‰SULTATS CLINIQUES (CERNES) ===== */
.skinsous-cernes-results {
	background-color: var(--skinsous-ivory);
	padding: 80px 24px;
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(-50vw + 50%) !important;
	margin-right: calc(-50vw + 50%) !important;
	clear: both !important;
	display: block !important;
	flex: 0 0 100vw !important;
}

.skinsous-cernes-results__inner {
	max-width: 1100px;
	margin: 0 auto;
}

.skinsous-cernes-results__header {
	text-align: center;
	margin-bottom: 60px;
}

.skinsous-cernes-results__eyebrow {
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.25em;
	color: var(--skinsous-gold);
	display: block;
	margin-bottom: 15px;
}

.skinsous-cernes-results__title {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 32px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--skinsous-ink);
	margin: 0 0 20px 0;
	font-weight: 400;
}

.skinsous-cernes-results__line {
	width: 60px;
	height: 3px;
	background-color: var(--skinsous-gold);
	margin: 0 auto;
}

.skinsous-cernes-results__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.skinsous-cernes-results__card {
	background-color: #ffffff;
	border: 1px solid var(--skinsous-warm-sand);
	border-bottom: 3px solid transparent;
	padding: 50px 36px 44px;
	text-align: center;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-bottom-color 0.3s ease;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.skinsous-cernes-results__card:hover {
	transform: translateY(-6px);
	box-shadow: 0 20px 45px rgba(26, 25, 23, 0.08);
	border-bottom-color: var(--skinsous-gold);
}

.skinsous-cernes-results__stat {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: clamp(48px, 6vw, 72px);
	font-weight: 700;
	color: var(--skinsous-ink);
	line-height: 1;
	display: block;
}

.skinsous-cernes-results__label {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--skinsous-ink);
	margin: 16px 0 14px 0;
}

.skinsous-cernes-results__desc {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	line-height: 1.7;
	color: var(--skinsous-muted);
	max-width: 28ch;
	margin: 0 auto;
}

/* Mobile Responsive */
@media (max-width: 768px) {
	.skinsous-cernes-results {
		padding: 60px 20px;
	}

	.skinsous-cernes-results__grid {
		grid-template-columns: 1fr;
	}

	.skinsous-cernes-results__stat {
		font-size: 48px;
	}
}

/* ===== SKINSOUS: BEFORE/AFTER (CERNES) ===== */
.skinsous-cernes-ba {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(-50vw + 50%) !important;
	margin-right: calc(-50vw + 50%) !important;
	clear: both !important;
	display: block !important;
	flex: 0 0 100vw !important;
}

.skinsous-cernes-ba__inner {
	max-width: 900px;
	margin: 60px auto;
	padding: 0 24px;
}

.skinsous-cernes-ba__slider {
	position: relative;
	width: 100%;
	max-height: 500px;
	aspect-ratio: 1 / 1;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 20px 40px rgba(26, 25, 23, 0.1);
	cursor: ew-resize;
	touch-action: pan-y pinch-zoom;
	background-color: #f5f5f5;
}

.skinsous-cernes-ba__img-after,
.skinsous-cernes-ba__img-before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 12px;
}

.skinsous-cernes-ba__before-wrap {
	position: absolute;
	top: 0;
	left: 0;
	width: 50%;
	height: 100%;
	overflow: hidden;
	border-radius: 12px 0 0 12px;
}

.skinsous-cernes-ba__img-before {
	/* Override the absolute full width constraints to maintain the image width dynamically set by JS */
	max-width: none;
}

.skinsous-cernes-ba__handle {
	position: absolute;
	top: 0;
	left: 50%;
	width: 4px;
	height: 100%;
	background-color: #ffffff;
	transform: translateX(-50%);
	pointer-events: none;
}

.skinsous-cernes-ba__handle-btn {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 54px;
	height: 36px;
	background-color: #1A1917;
	border: 2px solid #ffffff;
	border-radius: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	gap: 2px;
	pointer-events: none;
}

.skinsous-cernes-ba__label {
	position: absolute;
	bottom: 20px;
	font-family: 'DM Sans', sans-serif;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	background-color: rgba(255, 255, 255, 0.9);
	color: #1A1917;
	border-radius: 20px;
	padding: 6px 16px;
	pointer-events: none;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.skinsous-cernes-ba__label--left {
	left: 20px;
}

.skinsous-cernes-ba__label--right {
	right: 20px;
}

/* Mobile Responsive */
@media (max-width: 768px) {
	.skinsous-cernes-ba__inner {
		margin: 40px auto;
	}

	.skinsous-cernes-ba__slider {
		max-height: 350px;
	}

	.skinsous-cernes-ba__label {
		font-size: 10px;
		padding: 4px 12px;
		bottom: 12px;
	}

	.skinsous-cernes-ba__label--left {
		left: 12px;
	}

	.skinsous-cernes-ba__label--right {
		right: 12px;
	}

	.skinsous-cernes-ba__handle-btn {
		width: 44px;
		height: 30px;
	}

	.skinsous-cernes-ba__handle-btn svg {
		width: 14px;
		height: 14px;
	}
}

/* ===== SKINSOUS: RITUEL D'APPLICATION (CERNES) ===== */
.skinsous-cernes-ritual {
	background-color: var(--skinsous-ivory, #FAF7F2);
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(-50vw + 50%) !important;
	margin-right: calc(-50vw + 50%) !important;
	padding: 100px 0;
	border-top: 1px solid var(--skinsous-warm-sand, #E8DDD0);
	border-bottom: 1px solid var(--skinsous-warm-sand, #E8DDD0);
	clear: both !important;
	display: block !important;
	flex: 0 0 100vw !important;
}

.skinsous-cernes-ritual__header {
	max-width: 700px;
	margin: 0 auto 60px;
	text-align: center;
	padding: 0 24px;
}

.skinsous-cernes-ritual__eyebrow {
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.25em;
	color: var(--skinsous-gold, #B8965A);
	display: block;
	margin-bottom: 15px;
}

.skinsous-cernes-ritual__title {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: clamp(32px, 4vw, 48px);
	font-weight: 400;
	color: var(--skinsous-ink, #1A1917);
	margin: 0 0 20px 0;
	line-height: 1.1;
}

.skinsous-cernes-ritual__subtitle {
	font-family: 'DM Sans', sans-serif;
	font-size: 16px;
	line-height: 1.7;
	color: var(--skinsous-muted, #6B5F55);
	margin: 0;
}

.skinsous-cernes-ritual__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 24px;
}

.skinsous-cernes-ritual__step {
	background-color: var(--skinsous-linen, #FBF7F1);
	border: 1px solid var(--skinsous-warm-sand, #E8DDD0);
	border-radius: 12px;
	padding: 50px 40px;
	display: flex;
	flex-direction: column;
	transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.skinsous-cernes-ritual__step:hover {
	transform: translateY(-10px);
	box-shadow: 0 20px 40px rgba(28, 20, 16, 0.08);
}

.skinsous-cernes-ritual__step-top {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 35px;
}

.skinsous-cernes-ritual__number {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 42px;
	font-weight: 300;
	color: rgba(193, 112, 58, 0.2);
	line-height: 1;
}

.skinsous-cernes-ritual__icon {
	color: var(--skinsous-gold, #B8965A);
}

.skinsous-cernes-ritual__step-title {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 24px;
	font-weight: 400;
	color: var(--skinsous-ink, #1A1917);
	margin-bottom: 20px;
	letter-spacing: 0.02em;
}

.skinsous-cernes-ritual__step-desc {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	line-height: 1.8;
	color: var(--skinsous-muted, #6B5F55);
	margin: 0;
}

.skinsous-cernes-ritual__footer {
	display: flex;
	justify-content: center;
	margin-top: 60px;
	padding: 0 24px;
}

.skinsous-cernes-ritual__note {
	background-color: #ffffff;
	border: 1px solid rgba(193, 112, 58, 0.3);
	border-radius: 50px;
	padding: 20px 35px;
	max-width: 650px;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	color: var(--skinsous-ink, #1A1917);
	text-align: center;
	line-height: 1.6;
	margin: 0 auto;
}

/* Mobile Responsive */
@media (max-width: 768px) {
	.skinsous-cernes-ritual {
		padding: 70px 0;
	}

	.skinsous-cernes-ritual__grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.skinsous-cernes-ritual__step {
		padding: 40px 30px;
	}

	.skinsous-cernes-ritual__footer {
		margin-top: 40px;
	}
}

/* ===== SKINSOUS: FAQ (CERNES) ===== */
.skinsous-cernes-faq {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(-50vw + 50%) !important;
	margin-right: calc(-50vw + 50%) !important;
	clear: both !important;
	display: block !important;
	flex: 0 0 100vw !important;
}

.skinsous-cernes-faq__inner {
	max-width: 850px;
	margin: 80px auto;
	padding: 0 20px;
}

.skinsous-cernes-faq__header {
	text-align: center;
	margin-bottom: 50px;
}

.skinsous-cernes-faq__title {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 32px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--skinsous-ink, #1A1917);
	margin: 0 0 20px 0;
	font-weight: 400;
}

.skinsous-cernes-faq__line {
	width: 60px;
	height: 3px;
	background-color: var(--skinsous-gold, #B8965A);
	margin: 0 auto;
}

.skinsous-cernes-faq__accordion {
	display: flex;
	flex-direction: column;
}

.skinsous-cernes-faq__item {
	border-bottom: 1px solid rgba(184, 150, 90, 0.2);
	transition: background-color 0.4s ease, border-left 0.4s ease, padding-left 0.4s ease;
	border-left: 3px solid transparent;
	background-color: transparent;
	padding-left: 0;
}

.skinsous-cernes-faq__item.is-open {
	border-left: 3px solid var(--skinsous-gold, #B8965A);
	padding-left: 22px;
	background-color: rgba(250, 247, 242, 0.8);
}

.skinsous-cernes-faq__trigger {
	width: 100%;
	background: transparent;
	border: none;
	padding: 25px 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
	text-align: left;
}

.skinsous-cernes-faq__item.is-open .skinsous-cernes-faq__trigger {
	/* Reduce padding right when left padding is added to maintain layout */
	padding-right: 22px;
}

.skinsous-cernes-faq__question {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--skinsous-ink, #1A1917);
	padding-right: 20px;
}

.skinsous-cernes-faq__icon {
	color: var(--skinsous-ink, #1A1917);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.skinsous-cernes-faq__icon svg {
	transition: transform 0.4s ease;
}

.skinsous-cernes-faq__item.is-open .skinsous-cernes-faq__icon svg {
	transform: rotate(45deg);
}

.skinsous-cernes-faq__content {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.4s ease;
}

.skinsous-cernes-faq__content-inner {
	padding-bottom: 25px;
}

.skinsous-cernes-faq__item.is-open .skinsous-cernes-faq__content-inner {
	padding-right: 22px;
}

.skinsous-cernes-faq__content-inner p {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	line-height: 1.7;
	color: var(--skinsous-muted, #6B5F55);
	margin: 0;
}

/* Mobile Responsive */
@media (max-width: 768px) {
	.skinsous-cernes-faq__inner {
		margin: 60px auto;
	}

	.skinsous-cernes-faq__question {
		font-size: 14px;
	}

	.skinsous-cernes-faq__item.is-open {
		padding-left: 15px;
	}

	.skinsous-cernes-faq__item.is-open .skinsous-cernes-faq__trigger,
	.skinsous-cernes-faq__item.is-open .skinsous-cernes-faq__content-inner {
		padding-right: 15px;
	}
}

/* ===== SKINSOUS: CROSS-SELL (CERNES) ===== */
.skinsous-cernes-crossell {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(-50vw + 50%) !important;
	margin-right: calc(-50vw + 50%) !important;
	clear: both !important;
	display: block !important;
	flex: 0 0 100vw !important;
}

.skinsous-cernes-crossell__inner {
	max-width: 1200px;
	margin: 80px auto;
	padding: 0 40px;
}

.skinsous-cernes-crossell__header {
	text-align: center;
	margin-bottom: 50px;
}

.skinsous-cernes-crossell__eyebrow {
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	text-transform: uppercase;
	color: var(--skinsous-gold, #B8965A);
	display: block;
	margin-bottom: 12px;
	letter-spacing: 0.1em;
}

.skinsous-cernes-crossell__title {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 32px;
	color: var(--skinsous-ink, #1A1917);
	margin: 0 0 15px 0;
	font-weight: 400;
}

.skinsous-cernes-crossell__subtitle {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	color: var(--skinsous-muted, #6B5F55);
	margin: 0;
}

.skinsous-cernes-crossell__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.skinsous-cernes-crossell__card {
	display: flex;
	flex-direction: column;
}

.skinsous-cernes-crossell__image-wrap {
	position: relative;
	width: 100%;
	aspect-ratio: 4 / 5;
	background-color: var(--skinsous-ivory, #FAF7F2);
	border-radius: 0px;
	overflow: hidden;
	display: block;
}

.skinsous-cernes-crossell__image-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.skinsous-cernes-crossell__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding-top: 16px;
	flex-grow: 1;
}

.skinsous-cernes-crossell__product-title {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	font-weight: 500;
	color: var(--skinsous-ink, #1A1917);
	margin: 0;
}

.skinsous-cernes-crossell__product-title a {
	color: inherit;
	text-decoration: none;
}

.skinsous-cernes-crossell__desc {
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	line-height: 1.6;
	color: var(--skinsous-muted, #6B5F55);
	margin: 8px 0 16px;
}

.skinsous-cernes-crossell__price {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	color: var(--skinsous-ink, #1A1917);
	margin-bottom: 20px;
}

.skinsous-cernes-crossell__btn {
	background: transparent;
	border: none;
	border-bottom: 1px solid var(--skinsous-ink, #1A1917);
	color: var(--skinsous-ink, #1A1917);
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	padding: 10px 0;
	cursor: pointer;
	text-decoration: none;
	transition: color 0.3s ease, border-color 0.3s ease;
	margin-top: auto;
}

.skinsous-cernes-crossell__btn:hover {
	color: var(--skinsous-gold, #B8965A);
	border-bottom-color: var(--skinsous-gold, #B8965A);
}

/* Override standard WooCommerce button styles if any apply to this link */
a.skinsous-cernes-crossell__btn.button {
	background-color: transparent !important;
	color: var(--skinsous-ink, #1A1917) !important;
	border: none !important;
	border-bottom: 1px solid var(--skinsous-ink, #1A1917) !important;
	border-radius: 0 !important;
	padding: 10px 0 !important;
}

a.skinsous-cernes-crossell__btn.button:hover {
	background-color: transparent !important;
	color: var(--skinsous-gold, #B8965A) !important;
	border-bottom-color: var(--skinsous-gold, #B8965A) !important;
}

/* Mobile Responsive */
@media (max-width: 768px) {
	.skinsous-cernes-crossell__inner {
		margin: 60px auto;
		padding: 0 20px;
	}

	.skinsous-cernes-crossell__grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}
}

/* --- SKINSOUS: ENGAGEMENTS SECTION --- */
.skinsous-engagements {
	background-color: var(--skinsous-ivory);
	padding: 60px 24px;
}

.skinsous-engagements-container {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
	max-width: 1200px;
	margin: 0 auto;
}

.skinsous-engagement-card {
	text-align: center;
	padding: 30px 20px;
	transition: transform 0.3s var(--ease-out-quint, ease);
}

.skinsous-engagement-card:hover {
	transform: translateY(-4px);
}

.engagement-icon-wrapper {
	margin-bottom: 24px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.engagement-icon {
	width: 48px;
	height: 48px;
	object-fit: contain;
}

/* If real SVGs are used, handle the gold stroke as requested */
.engagement-icon-wrapper svg {
	width: 48px;
	height: 48px;
	stroke: var(--skinsous-gold);
}

.engagement-title {
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: var(--skinsous-ink);
	margin-bottom: 12px;
}

.engagement-desc {
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	color: var(--skinsous-muted);
	line-height: 1.6;
	margin: 0;
	max-width: 240px;
	margin-left: auto;
	margin-right: auto;
}

/* Responsive Engagements */
@media (max-width: 991px) {
	.skinsous-engagements-container {
		grid-template-columns: repeat(2, 1fr);
		gap: 40px 20px;
	}
}

@media (max-width: 768px) {
	.skinsous-engagements {
		padding: 40px 0;
	}

	.skinsous-engagements-container {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		padding: 0 20px 10px;
		gap: 16px;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		/* Firefox */
	}

	.skinsous-engagements-container::-webkit-scrollbar {
		display: none;
		/* Safari/Chrome */
	}

	.skinsous-engagement-card {
		flex: 0 0 260px;
		scroll-snap-align: center;
		background: #fff;
		border-radius: 12px;
		box-shadow: 0 10px 30px rgba(26, 25, 23, 0.04);
		padding: 30px 20px;
	}

	.engagement-desc {
		max-width: 100%;
	}
}

/* --- SKINSOUS: INSTAGRAM SECTION --- */
.skinsous-instagram {
	padding: 80px 24px;
	background-color: #ffffff;
}

.skinsous-instagram-header {
	text-align: center;
	margin-bottom: 48px;
}

.skinsous-instagram-eyebrow {
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.2em;
	color: var(--skinsous-muted);
	margin-bottom: 12px;
}

.skinsous-instagram-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 36px;
	font-weight: 400;
	color: var(--skinsous-ink);
	margin: 0 0 12px;
}

.skinsous-instagram-subtitle {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	color: var(--skinsous-muted);
	margin: 0;
}

.skinsous-instagram-grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 8px;
	max-width: 1200px;
	margin: 0 auto;
}

.skinsous-instagram-item {
	position: relative;
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}

.skinsous-instagram-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.8s cubic-bezier(0.2, 0, 0.2, 1);
}

.skinsous-instagram-overlay {
	position: absolute;
	inset: 0;
	background-color: rgba(26, 25, 23, 0);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background-color 0.4s ease;
	z-index: 2;
}

.skinsous-instagram-overlay svg {
	color: white;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 0.4s ease, transform 0.4s ease;
}

.skinsous-instagram-item:hover img {
	transform: scale(1.08);
}

.skinsous-instagram-item:hover .skinsous-instagram-overlay {
	background-color: rgba(26, 25, 23, 0.3);
}

.skinsous-instagram-item:hover .skinsous-instagram-overlay svg {
	opacity: 1;
	transform: translateY(0);
}

@media (max-width: 991px) {
	.skinsous-instagram {
		padding: 60px 24px;
	}

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

@media (max-width: 600px) {
	.skinsous-instagram-title {
		font-size: 28px;
	}

	.skinsous-instagram-header {
		margin-bottom: 32px;
	}
}

/* --- SKINSOUS: FAQ RAPIDE SECTION --- */
.skinsous-faq {
	padding: 80px 24px;
	background-color: var(--skinsous-ivory, #FAF7F2);
}

.skinsous-faq-header {
	text-align: center;
	margin-bottom: 50px;
}

.skinsous-faq-eyebrow {
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.2em;
	color: var(--skinsous-muted);
	margin-bottom: 12px;
}

.skinsous-faq-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 32px;
	font-weight: 400;
	color: var(--skinsous-ink);
	margin: 0 0 20px;
}

.skinsous-faq-divider {
	width: 60px;
	height: 2px;
	background-color: var(--skinsous-gold);
	margin: 0 auto;
}

.skinsous-faq-container {
	max-width: 800px;
	margin: 0 auto;
}

.skinsous-faq-item {
	border-bottom: 1px solid var(--skinsous-warm-sand);
}

.skinsous-faq-trigger {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 24px 0;
	background: none;
	border: none;
	cursor: pointer;
	text-align: left;
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--skinsous-ink);
	transition: color 0.3s ease;
}

.skinsous-faq-trigger:hover {
	color: var(--skinsous-gold);
}

.skinsous-faq-icon {
	flex-shrink: 0;
	margin-left: 20px;
	transition: transform 0.4s var(--ease-out-quint, ease);
	color: var(--skinsous-gold);
}

.skinsous-faq-item.is-open .skinsous-faq-icon {
	transform: rotate(45deg);
}

.skinsous-faq-panel {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.4s var(--ease-out-quint, ease);
}

.skinsous-faq-content {
	padding-bottom: 24px;
}

.skinsous-faq-content p {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	color: var(--skinsous-muted);
	line-height: 1.7;
	margin: 0;
}

@media (max-width: 768px) {
	.skinsous-faq {
		padding: 60px 20px;
	}

	.skinsous-faq-title {
		font-size: 26px;
	}

	.skinsous-faq-trigger {
		font-size: 13px;
		padding: 20px 0;
	}
}

/* --- SKINSOUS: COLLAGEN EXTENSIONS --- */

/* Reveal Animation */
.skinsous-reveal {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 0.8s cubic-bezier(0.2, 0, 0.2, 1), transform 0.8s cubic-bezier(0.2, 0, 0.2, 1);
}

.skinsous-reveal.is-visible {
	opacity: 1;
	transform: translateY(0);
}

/* 1. Clinical Results */
.skinsous-collagen-results,
.skinsous-collagen-ritual,
.skinsous-collagen-faq,
.skinsous-collagen-crossell {
	display: block !important;
	clear: both !important;
	float: none !important;
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(-50vw + 50%) !important;
	margin-right: calc(-50vw + 50%) !important;
}

.skinsous-collagen-results {
	background-color: var(--skinsous-ivory);
	padding: 80px 24px;
}

.skinsous-collagen-results__container {
	max-width: 1100px;
	margin: 0 auto;
}

.skinsous-collagen-results__header {
	text-align: center;
	margin-bottom: 60px;
}

.skinsous-collagen-results__eyebrow {
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.25em;
	color: var(--skinsous-gold);
	margin-bottom: 15px;
}

.skinsous-collagen-results__title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 32px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--skinsous-ink);
	margin: 0 0 20px 0;
}

.skinsous-collagen-results__line {
	width: 60px;
	height: 3px;
	background-color: var(--skinsous-gold);
	margin: 0 auto;
}

.skinsous-collagen-results__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}

.skinsous-collagen-results__card {
	background: #fff;
	border: 1px solid var(--skinsous-warm-sand);
	padding: 50px;
	text-align: center;
	transition: transform 0.4s ease, border-bottom 0.4s ease;
}

.skinsous-collagen-results__card:hover {
	transform: translateY(-6px);
	border-bottom: 3px solid var(--skinsous-gold);
}

.skinsous-collagen-results__number {
	display: block;
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(48px, 6vw, 72px);
	font-weight: 700;
	color: var(--skinsous-ink);
	line-height: 1;
	margin-bottom: 15px;
}

.skinsous-collagen-results__label {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 0.05em;
	color: var(--skinsous-ink);
	margin-bottom: 15px;
}

.skinsous-collagen-results__desc {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	color: var(--skinsous-muted);
	line-height: 1.7;
	margin: 0;
}

/* 2. Ritual Section */
.skinsous-collagen-ritual {
	background-color: var(--skinsous-cream, #FBF9F6);
	padding: 100px 0;
	border-top: 1px solid var(--skinsous-warm-sand);
	border-bottom: 1px solid var(--skinsous-warm-sand);
}

.skinsous-collagen-ritual__inner {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 24px;
}

.skinsous-collagen-ritual__header {
	text-align: center;
	margin-bottom: 60px;
}

.skinsous-collagen-ritual__eyebrow {
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	text-transform: uppercase;
	color: var(--skinsous-gold);
	display: block;
	margin-bottom: 15px;
}

.skinsous-collagen-ritual__title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(32px, 4vw, 48px);
	color: var(--skinsous-ink);
	margin: 0 0 20px;
}

.skinsous-collagen-ritual__subtitle {
	font-family: 'DM Sans', sans-serif;
	font-size: 16px;
	color: var(--skinsous-muted);
	max-width: 600px;
	margin: 0 auto;
}

.skinsous-collagen-ritual__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.skinsous-collagen-ritual__step {
	background-color: var(--skinsous-linen, #FBF7F1);
	border: 1px solid var(--skinsous-warm-sand);
	border-radius: 12px;
	padding: 50px 40px;
	transition: transform 0.4s ease;
}

.skinsous-collagen-ritual__step:hover {
	transform: translateY(-10px);
}

.skinsous-collagen-ritual__number {
	font-family: 'Cormorant Garamond', serif;
	font-size: 42px;
	opacity: 0.2;
	color: var(--skinsous-gold);
	display: block;
	margin-bottom: 20px;
}

.skinsous-collagen-ritual__step-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 24px;
	color: var(--skinsous-ink);
	margin-bottom: 15px;
}

.skinsous-collagen-ritual__step-desc {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	color: var(--skinsous-muted);
	line-height: 1.7;
}

.skinsous-collagen-ritual__footer {
	display: flex;
	justify-content: center;
	margin-top: 60px;
}

.skinsous-collagen-ritual__note {
	background-color: #fff;
	border: 1px solid rgba(184, 150, 90, 0.3);
	border-radius: 50px;
	padding: 20px 35px;
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	color: var(--skinsous-ink);
	text-align: center;
}

/* 3. FAQ Section */
.skinsous-collagen-faq {
	background-color: #fff;
	padding: 80px 0;
}

.skinsous-collagen-faq__inner {
	max-width: 850px;
	margin: 0 auto;
	padding: 0 24px;
}

.skinsous-collagen-faq__header {
	text-align: center;
	margin-bottom: 50px;
}

.skinsous-collagen-faq__title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 32px;
	color: var(--skinsous-ink);
	margin-bottom: 20px;
}

.skinsous-collagen-faq__line {
	width: 60px;
	height: 3px;
	background-color: var(--skinsous-gold);
	margin: 0 auto;
}

.skinsous-collagen-faq__item {
	border-bottom: 1px solid var(--skinsous-warm-sand);
}

.skinsous-collagen-faq__trigger {
	width: 100%;
	background: none;
	border: none;
	padding: 25px 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
	text-align: left;
}

.skinsous-collagen-faq__question {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--skinsous-ink);
}

.skinsous-collagen-faq__icon {
	color: var(--skinsous-ink);
	transition: transform 0.4s ease;
}

.skinsous-collagen-faq__item.is-open .skinsous-collagen-faq__icon {
	transform: rotate(45deg);
}

.skinsous-collagen-faq__content {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.4s ease;
}

.skinsous-collagen-faq__content-inner {
	padding-bottom: 25px;
}

.skinsous-collagen-faq__content-inner p {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	line-height: 1.7;
	color: var(--skinsous-muted);
}

/* 4. Cross-sell Section */
.skinsous-collagen-crossell {
	background-color: #fff;
	padding: 80px 0;
}

.skinsous-collagen-crossell__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 40px;
}

.skinsous-collagen-crossell__header {
	text-align: center;
	margin-bottom: 50px;
}

.skinsous-collagen-crossell__eyebrow {
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	text-transform: uppercase;
	color: var(--skinsous-gold);
	margin-bottom: 12px;
}

.skinsous-collagen-crossell__title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 32px;
	color: var(--skinsous-ink);
	margin-bottom: 15px;
}

.skinsous-collagen-crossell__subtitle {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	color: var(--skinsous-muted);
}

.skinsous-collagen-crossell__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px;
}

.skinsous-collagen-crossell__card {
	display: flex;
	flex-direction: column;
}

.skinsous-collagen-crossell__image-wrap {
	aspect-ratio: 4 / 5;
	overflow: hidden;
	background: var(--skinsous-ivory);
	margin-bottom: 20px;
}

.skinsous-collagen-crossell__image-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.6s ease;
}

.skinsous-collagen-crossell__card:hover .skinsous-collagen-crossell__image-wrap img {
	transform: scale(1.05);
}

.skinsous-collagen-crossell__product-title {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	font-weight: 500;
	color: var(--skinsous-ink);
	margin-bottom: 10px;
}

.skinsous-collagen-crossell__desc {
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	color: var(--skinsous-muted);
	margin-bottom: 15px;
}

.skinsous-collagen-crossell__price {
	font-family: 'Cormorant Garamond', serif;
	font-size: 18px;
	color: var(--skinsous-ink);
	margin-bottom: 20px;
}

.skinsous-collagen-crossell__btn {
	background: var(--skinsous-ink);
	color: #fff;
	border: none;
	padding: 15px 30px;
	font-family: 'DM Sans', sans-serif;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	cursor: pointer;
	transition: background 0.3s ease;
	align-self: flex-start;
}

.skinsous-collagen-crossell__btn:hover {
	background: var(--skinsous-gold);
}

/* 5. Related Products Title Styling */
.related.products>h2 {
	font-family: 'Cormorant Garamond', serif !important;
	font-size: 32px !important;
	color: var(--skinsous-ink) !important;
	margin-bottom: 40px !important;
	text-align: center;
}

/* Mobile Adjustments */
@media (max-width: 768px) {

	.skinsous-collagen-results,
	.skinsous-collagen-ritual {
		padding: 60px 20px;
	}

	.skinsous-collagen-results__grid,
	.skinsous-collagen-ritual__grid,
	.skinsous-collagen-crossell__grid {
		grid-template-columns: 1fr;
	}

	.skinsous-collagen-results__card {
		padding: 40px 20px;
	}

	.skinsous-collagen-ritual__step {
		padding: 40px 30px;
	}
}

/* --- SKINSOUS: FULL-BLEED HERO --- */

body.home {
	/* Prevent layout shift */
	overflow-x: hidden;
}

/* 1. Header Transparency (Homepage Only) */
body.home .ast-main-header-wrap,
body.home .ast-primary-header-bar,
body.home .ast-mobile-header-wrap {
	position: absolute !important;
	top: auto;
	/* Allow announcement bar to be above */
	left: 0;
	width: 100%;
	background: transparent !important;
	border-bottom: none !important;
	z-index: 999 !important;
	transition: background-color 0.4s ease, backdrop-filter 0.4s ease, border-color 0.4s ease;
}

/* Header Links Color on Homepage (White for contrast) */
body.home .main-header-bar .main-header-menu>.menu-item>a,
body.home .ast-header-cart-link,
body.home .ast-mobile-menu-trigger-minimal,
body.home .ast-header-social-wrap .ast-builder-social-element svg,
body.home .ast-header-social-wrap .ast-builder-social-element a,
body.home .ast-site-header-cart-li a {
	color: #ffffff !important;
	fill: #ffffff !important;
}

/* Scrolled State - Switch back to dark for readability */
body.home .ast-main-header-wrap.is-scrolled .main-header-bar .main-header-menu>.menu-item>a,
body.home .ast-main-header-wrap.is-scrolled .ast-header-cart-link,
body.home .ast-main-header-wrap.is-scrolled .ast-header-social-wrap svg,
body.home .ast-main-header-wrap.is-scrolled .ast-site-header-cart-li a {
	color: var(--skinsous-ink) !important;
	fill: var(--skinsous-ink) !important;
}

/* Scrolled State */
body.home .ast-main-header-wrap.is-scrolled,
body.home .ast-primary-header-bar.is-scrolled,
body.home .ast-mobile-header-wrap.is-scrolled {
	position: fixed !important;
	top: 0 !important;
	background: rgba(250, 247, 242, 0.9) !important;
	/* Ivory with slight transparency */
	backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--skinsous-warm-sand) !important;
}

/* 2. Hero Plein Écran */
.skinsous-hero-pro {
	height: 100vh !important;
	min-height: 600px;
	margin-top: 0 !important;
	padding-top: 60px;
	/* Reduced to push content higher */
	background-size: cover !important;
	background-position: center !important;
	background-attachment: fixed;
	/* Parallax effect */
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	z-index: 1;
}

/* Remove or reduce gradient */
.skinsous-hp-gradient {
	display: none;
}

.skinsous-hp-content {
	max-width: 1200px;
	width: 100%;
	margin: -8vh auto 0;
	/* Negative margin to move it up */
	padding: 0 8vw;
	text-align: left;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

/* Typography Enhancements */
.skinsous-hp-title {
	font-size: clamp(3rem, 6vw, 5.5rem) !important;
	line-height: 1.1 !important;
	color: var(--skinsous-ink) !important;
	text-shadow: 0 4px 30px rgba(250, 247, 242, 0.6);
	margin-bottom: 24px;
}

.skinsous-hp-desc {
	font-size: 1.25rem !important;
	max-width: 500px;
	color: var(--skinsous-ink) !important;
	text-shadow: 0 2px 15px rgba(250, 247, 242, 0.4);
	margin-bottom: 40px;
}

/* 3. Scroll Indicator */
.skinsous-hero-scroll {
	position: absolute;
	bottom: 40px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	z-index: 10;
}

.skinsous-hero-scroll-text {
	font-family: 'DM Sans', sans-serif;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.3em;
	color: var(--skinsous-ink);
	text-transform: uppercase;
}

.skinsous-hero-scroll-line {
	width: 1px;
	height: 50px;
	background-color: var(--skinsous-ink);
	position: relative;
	overflow: hidden;
}

.skinsous-hero-scroll-line::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--skinsous-gold);
	animation: scrollLineMove 2s cubic-bezier(0.65, 0, 0.35, 1) infinite;
}

@keyframes scrollLineMove {
	0% {
		transform: translateY(-100%);
	}

	100% {
		transform: translateY(100%);
	}
}


/* 4. Responsive - Devices Optimization */

/* Tablet Optimization */
@media (min-width: 922px) and (max-width: 1200px) {
	.skinsous-hp-content {
		padding: 0 5vw;
		margin-top: -5vh;
	}

	.skinsous-hp-title {
		font-size: 4.5rem !important;
	}
}

/* Mobile Optimization */
@media (max-width: 921px) {
	body.home .ast-mobile-header-wrap {
		background: var(--skinsous-ivory) !important;
		/* Fixed background for mobile readability */
		position: sticky !important;
		top: 0 !important;
		box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	}

	.skinsous-hero-pro {
		height: 100vh;
		/* Dynamic viewport height for mobile */
		min-height: 500px;
		padding-top: 20px;
		background-position: 70% center !important;
		/* Focus on the model/product */
		background-attachment: scroll;
		/* Disable parallax on mobile for performance */
		text-align: center;
		justify-content: center;
	}

	.skinsous-hp-content {
		padding: 0 20px;
		margin: 0 auto;
		/* Center content horizontally */
		align-items: center;
		/* Center items vertically */
		text-align: center;
	}

	.skinsous-hp-title {
		font-size: clamp(2.5rem, 10vw, 3.5rem) !important;
		margin-bottom: 15px;
		text-shadow: 0 2px 20px rgba(255, 255, 255, 0.8);
	}

	.skinsous-hp-desc {
		font-size: 1.1rem !important;
		margin-bottom: 30px;
		text-shadow: 0 1px 10px rgba(255, 255, 255, 0.6);
	}

	.skinsous-hp-btn {
		width: 100%;
		max-width: 280px;
	}

	.skinsous-hero-scroll {
		bottom: 15px;
	}

	.skinsous-hero-scroll-line {
		height: 30px;
	}
}


/* --- SKINSOUS: PRODUCT ACCORDION --- */
.skinsous-product-accordion {
	border-top: 1px solid var(--skinsous-warm-sand);
	margin: 30px 0;
	width: 100%;
}

.skinsous-product-accordion__item {
	border-bottom: 1px solid var(--skinsous-warm-sand);
}

.skinsous-product-accordion__trigger {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 18px 0;
	background: transparent;
	border: none;
	cursor: pointer;
	text-align: left;
	transition: background-color 0.2s ease;
}

.skinsous-product-accordion__title {
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--skinsous-ink);
}

.skinsous-product-accordion__icon {
	position: relative;
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

.skinsous-product-accordion__icon svg {
	position: absolute;
	top: 0;
	left: 0;
	transition: transform 0.4s ease, opacity 0.4s ease;
}

.skinsous-product-accordion__panel {
	overflow: hidden;
	/* height controlled by GSAP */
}

.skinsous-product-accordion__content {
	padding: 0 0 20px;
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	line-height: 1.6;
	color: var(--skinsous-muted);
}

.skinsous-product-accordion__content p {
	margin-bottom: 15px;
}

.skinsous-product-accordion__content p:last-child {
	margin-bottom: 0;
}

/* --- SKINSOUS: SHOP PAGE TRANSFORM (FULL WIDTH & HERO) --- */

/* 1. Full Width Force - BRUTE FORCE RESET */
.archive.woocommerce #content,
.archive.woocommerce .ast-container,
.archive.woocommerce #primary,
.archive.woocommerce .site-content {
	max-width: 100% !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	display: block !important;
	/* Prevents flexbox squashing */
}

.archive.woocommerce #secondary {
	display: none !important;
	/* Ensure no sidebar is taking space */
}

/* Ensure the product grid itself has some breathing room but stays wide */
.archive.woocommerce .products {
	max-width: 1400px;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 0 40px !important;
	display: grid !important;
}


/* 2. Shop Hero Section - FIXED WIDTHS */
.skinsous-shop-hero {
	display: block !important;
	width: 100% !important;
	position: relative;
	background-image: url('https://skinsous.com/wp-content/uploads/2026/04/Flat-lay_of_three_minimalist_skincare_202604291535-scaled.jpeg');
	background-size: cover;
	background-position: center 30%;
	padding: 140px 40px !important;
	text-align: center;
	border-bottom: 1px solid var(--skinsous-warm-sand);
	overflow: hidden;
	margin-bottom: 60px;
}

.skinsous-shop-hero__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(250, 247, 242, 0.88);
	/* skinsous-ivory with luxury transparency */
	z-index: 1;
}

.skinsous-shop-hero__content {
	display: block !important;
	width: 100% !important;
	max-width: 1200px !important;
	margin: 0 auto !important;
	position: relative;
	z-index: 2;
}


.skinsous-shop-hero__text-wrap {
	width: 100% !important;
	display: block !important;
}

.skinsous-shop-hero__eyebrow {
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	letter-spacing: 0.25em;
	color: var(--skinsous-gold);
	margin-bottom: 15px;
	font-weight: 700;
	display: block;
}

.skinsous-shop-hero__title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(42px, 8vw, 84px) !important;
	font-weight: 300;
	color: var(--skinsous-ink);
	margin: 0 !important;
	line-height: 1.1;
	text-transform: uppercase;
	display: block !important;
	width: 100% !important;
	white-space: normal !important;
	/* Prevents vertical stacking */
}

.skinsous-shop-hero__title-ar {
	font-family: 'Noto Serif Arabic', serif;
	font-size: clamp(32px, 5vw, 54px) !important;
	color: var(--skinsous-gold);
	margin-top: 15px !important;
	margin-bottom: 25px !important;
	font-weight: 400;
	display: block !important;
}

.skinsous-shop-hero__subtitle {
	font-family: 'DM Sans', sans-serif;
	font-size: 18px;
	color: var(--skinsous-muted);
	max-width: 700px !important;
	margin: 30px auto 0 !important;
	line-height: 1.6;
	display: block !important;
}


/* 3. Refine Existing Elements for Wide Layout */
.archive.woocommerce .woocommerce-ordering,
.archive.woocommerce .woocommerce-result-count {
	padding: 0 40px;
	max-width: 1600px;
	margin-left: auto;
	margin-right: auto;
}

/* Fix Image Quality: 4 columns instead of 3 on wide screens */
@media (min-width: 1200px) {
	.archive.woocommerce .products.columns-3 {
		grid-template-columns: repeat(4, 1fr) !important;
		display: grid !important;
		gap: 30px !important;
	}
}

/* Premium Image Zoom Effect */
.woocommerce-loop-product__link {
	display: block;
	overflow: hidden;
	/* Clips the zoom */
	background: #fff;
}

.woocommerce-loop-product__link img {
	transition: transform 0.8s cubic-bezier(0.2, 1, 0.3, 1) !important;
	will-change: transform;
	object-fit: scale-down;
	/* Keeps the whole product visible without cropping */
	width: 100%;
	aspect-ratio: 1 / 1;
	background: #fff;
}

.woocommerce-loop-product__link:hover img {
	transform: scale(1.08);
	/* Sophisticated zoom */
}

/* Fix "Hidden Page" feeling - Clear Astra/WooCommerce overflow barriers */
html,
body,
#page,
.site,
.site-content,
.ast-container {
	height: auto !important;
	overflow: visible !important;
}

body {
	overflow-x: hidden !important;
}


/* Responsive adjustments */
@media (max-width: 768px) {
	.skinsous-shop-hero {
		padding: 60px 20px;
	}

	.archive.woocommerce .products {
		padding: 0 20px;
	}
}


/* 4. Trust Bar & Category Tabs Wide Layout */
.archive.woocommerce .skinsous-trust-bar,
.archive.woocommerce .woocommerce-tabs,
.archive.woocommerce .product-categories-tabs {
	width: 100%;
	max-width: 1600px;
	margin-left: auto;
	margin-right: auto;
	padding: 20px 40px;
	border-bottom: 1px solid var(--skinsous-warm-sand);
}

.archive.woocommerce .products {
	margin-top: 60px;
}

/* ==========================================================================
   SKINSOUS MOBILE-FIRST UX AUDIT — COMPREHENSIVE FIX
   Covers: Touch Targets, Typography, Overflow, Sticky, Modal, Gallery,
           Announcement Bar, Footer/Newsletter
   Target viewports: 320px – 375px (iPhone SE / budget Android)
   Date: 2026-05-11
   ========================================================================== */

/* ------------------------------------------------------------------
   0. GLOBAL OVERFLOW PREVENTION (all viewports)
   ------------------------------------------------------------------ */
*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	overflow-x: hidden;
}

body {
	overflow-x: hidden;
	width: 100%;
}

/* Prevent 100vw breakout sections from causing scrollbar-induced overflow */
.skinsous-retinol-lifestyle-block,
.skinsous-collagen-results,
.skinsous-collagen-ritual,
.skinsous-collagen-crossell,
.skinsous-collagen-faq {
	max-width: 100vw;
	overflow-x: hidden;
}

/* ------------------------------------------------------------------
   1. TOUCH TARGETS — min 44×44px for all interactive elements
   ------------------------------------------------------------------ */

/* 1a. Modal close button — was 32×32, now 44×44 */
.skinsous-modal__close {
	width: 44px;
	height: 44px;
	min-width: 44px;
	min-height: 44px;
}

/* 1b. Accordion triggers — ensure min touch height */
.skinsous-product-accordion__trigger,
.skinsous-collagen-faq__trigger,
.skinsous-faq-trigger {
	min-height: 44px;
}

/* 1c. Quantity option labels in COD modal */
.skinsous-qty__option {
	min-height: 44px;
}

/* 1d. Cart item remove buttons in modal */
.skinsous-cart-summary-item__remove {
	min-width: 44px;
	min-height: 44px;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
}

/* ------------------------------------------------------------------
   2. TYPOGRAPHY — min 14px body text, 1.6+ line-height, readable colors
   ------------------------------------------------------------------ */

/* 2a. Accordion content — was var(--skinsous-muted) #7a756d, too light */
.skinsous-product-accordion__content {
	color: #3d3a36;
	line-height: 1.7;
}

.skinsous-product-accordion__content p {
	color: #3d3a36;
}

/* 2b. FAQ answer content — was var(--skinsous-muted), too light */
.skinsous-faq-answer-content,
.skinsous-faq-answer-content p {
	color: #4a4744;
}

/* 2c. Collagen FAQ answer content */
.skinsous-collagen-faq__content-inner p {
	color: #3d3a36;
	line-height: 1.7;
}

/* 2d. Product supporting copy line-height */
.skinsous-product-supporting-copy {
	line-height: 1.8;
}

/* 2e. Ingredient descriptions */
.skinsous-ingredient-desc {
	line-height: 1.7;
}

/* ------------------------------------------------------------------
   3. COD MODAL — iOS zoom prevention, viewport containment
   ------------------------------------------------------------------ */

/* 3a. Font-size 16px on all inputs to prevent iOS auto-zoom */
#skinsous-cod-modal .skinsous-field input,
#skinsous-cod-modal .skinsous-field input[type="text"],
#skinsous-cod-modal .skinsous-field input[type="tel"],
#skinsous-cod-modal .skinsous-field input[type="email"] {
	font-size: 16px;
	min-height: 48px;
}

/* 3b. Modal dialog — use 100dvh for modern mobile browsers */
#skinsous-cod-modal .skinsous-modal__dialog {
	max-height: 100dvh;
	max-height: 100vh;
	/* fallback */
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

@supports (max-height: 100dvh) {
	#skinsous-cod-modal .skinsous-modal__dialog {
		max-height: 100dvh;
	}
}

/* ------------------------------------------------------------------
   MOBILE BREAKPOINT: max-width 768px
   ------------------------------------------------------------------ */
@media (max-width: 768px) {

	/* ── 1. TOUCH TARGETS (mobile-specific) ── */

	/* CTA button — enforce min touch area */
	.skinsous-product-cta__button {
		min-height: 48px;
		padding: 16px 20px;
		font-size: 13px;
	}

	/* Accordion triggers — generous tap area */
	.skinsous-product-accordion__trigger {
		min-height: 48px;
		padding: 18px 0 18px 12px;
	}

	.skinsous-collagen-faq__trigger,
	.skinsous-faq-trigger {
		min-height: 48px;
		padding: 18px 0;
	}

	/* Quantity radio options in modal */
	.skinsous-qty__option {
		padding: 14px 16px;
		min-height: 48px;
	}

	/* Pill buttons (variation selectors) */
	.skinsous-pill-btn {
		min-height: 44px;
		padding: 10px 20px !important;
	}

	/* Wishlist icon button */
	.skinsous-wishlist-icon {
		width: 48px;
		height: 48px;
		min-width: 48px;
		min-height: 48px;
	}

	/* Cross-sell CTA button */
	.skinsous-collagen-crossell__btn {
		min-height: 44px;
		padding: 12px 20px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	/* Lifestyle CTA */
	.skinsous-lifestyle-cta {
		min-height: 48px;
	}

	/* ── 2. TYPOGRAPHY (mobile-specific) ── */

	/* Enforce minimum 14px on all body/description text */
	.skinsous-product-accordion__content,
	.skinsous-accordion-content,
	.skinsous-faq-answer-content,
	.skinsous-collagen-faq__content-inner p,
	.skinsous-collagen-results__desc,
	.skinsous-collagen-ritual__step-desc,
	.skinsous-collagen-crossell__desc,
	.skinsous-ingredient-desc,
	.skinsous-product-supporting-copy,
	.skinsous-product-attributes__value,
	.skinsous-product-accordion__empty,
	.skinsous-woocommerce-variation-description,
	.skinsous-price-supporting-copy,
	.skinsous-cod-note span,
	.skinsous-product-guarantees__text {
		font-size: 14px;
		line-height: 1.65;
	}

	/* Trust badges text */
	.skinsous-trust-badges__item,
	.skinsous-inline-badges .skinsous-trust-badges__item {
		font-size: 13px !important;
	}

	/* Product guarantee items */
	.skinsous-product-guarantees__item {
		font-size: 13px;
	}

	/* Summary row text */
	.skinsous-summary__row {
		font-size: 14px;
	}

	/* ── 3. HORIZONTAL OVERFLOW FIXES (mobile-specific) ── */

	/* Retinol lifestyle breakout section — constrain to viewport */
	.skinsous-retinol-lifestyle-block {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding: 50px 20px !important;
	}

	.skinsous-lifestyle-inner {
		padding: 0 !important;
	}

	/* Collagen deep-dive benefits grid — single column */
	.skinsous-collagen-deep-dive .benefits-grid {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	/* Collagen deep-dive details split — stack vertically */
	.skinsous-collagen-deep-dive .details-split {
		flex-direction: column;
		gap: 24px;
	}

	.skinsous-collagen-deep-dive .details-column {
		padding: 28px 20px;
	}

	.skinsous-collagen-deep-dive .formula-highlight {
		padding: 30px 20px;
	}

	/* Ingredients wrapper — already stacks, ensure no overflow */
	.skinsous-ingredients-wrapper {
		flex-direction: column;
		gap: 16px;
	}

	.skinsous-ingredients-grid {
		padding: 30px 0;
		margin-top: 30px;
	}

	.skinsous-ingredient-item {
		padding: 28px 20px;
	}

	/* Product gallery — prevent any overflow */
	.single-product div.product .woocommerce-product-gallery {
		max-width: 100%;
		overflow: hidden;
	}

	/* Cross-sell grid — single column */
	.skinsous-collagen-crossell__grid {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	/* Before/After slider labels — prevent overflow */
	.skinsous-ba-label-left {
		left: 12px;
	}

	.skinsous-ba-label-right {
		right: 12px;
	}

	/* Shop page products grid — safe padding and 2-column force */
	.archive.woocommerce .products {
		padding: 0 12px !important;
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 12px !important;
		margin-top: 30px !important;
	}

	.archive.woocommerce ul.products li.product {
		margin-bottom: 30px !important;
	}

	.archive.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 18px !important;
		padding: 0 !important;
	}

	/* Shop hero — refined for mobile */
	.skinsous-shop-hero {
		padding: 60px 16px !important;
		margin-bottom: 40px !important;
	}

	.skinsous-shop-hero__title {
		font-size: clamp(32px, 10vw, 48px) !important;
	}

	.skinsous-shop-hero__title-ar {
		font-size: clamp(24px, 8vw, 36px) !important;
		margin-top: 10px !important;
		margin-bottom: 15px !important;
	}

	.skinsous-shop-hero__subtitle {
		font-size: 15px !important;
		margin-top: 20px !important;
		padding: 0 10px;
	}

	/* Ensure mobile navigation is visible */
	.ast-mobile-header-wrap {
		display: block !important;
	}

	/* Tables — force horizontal scroll if needed */
	.woocommerce-order .woocommerce-table--order-details {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	/* ── 4. STICKY BOTTOM BAR SAFETY ── */

	/* Only apply bottom padding on single product pages */
	body.single-product {
		padding-bottom: 90px !important;
	}

	/* Non-product pages should NOT have the extra padding */
	body:not(.single-product) {
		padding-bottom: 0 !important;
	}

	/* Sticky bar — safe spacing so it doesn't cover form fields */
	.skinsous-mobile-sticky-bar {
		padding: 12px 16px;
		padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px));
	}

	/* ── 5. COD MODAL (mobile-specific) ── */

	#skinsous-cod-modal .skinsous-modal__dialog {
		width: 100%;
		max-width: 100%;
		border-radius: 16px 16px 0 0;
		max-height: 95dvh;
		margin-top: auto;
	}

	#skinsous-cod-modal .skinsous-modal__body {
		padding: 20px 16px;
	}

	#skinsous-cod-modal .skinsous-modal__header {
		padding: 20px 16px 14px;
	}

	/* Ensure submit button is full width and min height */
	#skinsous-cod-submit {
		width: 100%;
		min-height: 52px;
		font-size: 14px;
		border-radius: 8px;
	}

	/* Product preview inside modal */
	.skinsous-product-preview {
		gap: 12px;
	}

	/* ── 6. PRODUCT IMAGE GALLERY ── */

	/* Dot navigation — larger and more tappable */
	.flex-control-paging {
		display: flex !important;
		justify-content: center;
		gap: 8px;
		margin-top: 12px !important;
		padding: 8px 0 !important;
		list-style: none !important;
	}

	.flex-control-paging li {
		display: flex;
		align-items: center;
		justify-content: center;
	}

	/* Dot link — visible 10px dot with 44px touch target */
	.flex-control-paging li a {
		width: 10px !important;
		height: 10px !important;
		background: #D4C5B5 !important;
		text-indent: -9999px;
		display: block;
		border-radius: 50%;
		margin: 0 !important;
		padding: 0;
		/* Expand touch target without changing visual size */
		box-shadow: 0 0 0 8px transparent;
		position: relative;
		cursor: pointer;
		transition: background-color 0.3s ease, transform 0.2s ease;
	}

	/* Increase actual touch area with pseudo-element */
	.flex-control-paging li a::before {
		content: '';
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 44px;
		height: 44px;
	}

	.flex-control-paging li a.flex-active {
		background: #1C1410 !important;
		transform: scale(1.2);
	}

	/* Ensure flex-control-thumbs stay hidden on mobile */
	.flex-control-thumbs {
		display: none !important;
	}

	/* Gallery — swipe-friendly */
	.single-product .woocommerce-product-gallery .flex-viewport {
		touch-action: pan-x;
		-webkit-overflow-scrolling: touch;
	}

	/* ── 7. ANNOUNCEMENT BAR ── */

	.skinsous-announcement-bar {
		padding: 8px 12px;
		font-size: 10px;
		letter-spacing: 0.08em;
		line-height: 1.5;
		word-wrap: break-word;
		overflow-wrap: break-word;
		hyphens: auto;
	}

	.skinsous-announcement-bar__inner {
		flex-wrap: wrap;
		justify-content: center;
		gap: 4px;
	}

	.skinsous-announcement-bar__text {
		text-align: center;
		display: block;
	}

	.skinsous-announcement-bar__link {
		margin-left: 4px;
		white-space: nowrap;
	}

	/* ── 8. FOOTER, NEWSLETTER & INSTAGRAM ── */

	/* Newsletter form — stack vertically on mobile */
	.skinsous-newsletter-form {
		flex-direction: column;
		border-bottom: none;
		gap: 0;
	}

	.skinsous-newsletter-input {
		width: 100%;
		border-bottom: 1px solid rgba(255, 255, 255, 0.3);
		padding: 14px 0;
		font-size: 16px;
		/* prevent iOS zoom */
	}

	.skinsous-newsletter-btn {
		width: 100%;
		padding: 14px 0;
		text-align: center;
		margin-top: 8px;
		min-height: 44px;
	}

	.skinsous-newsletter-section {
		padding: 60px 16px;
	}

	/* Instagram grid — prevent horizontal overflow */
	.skinsous-instagram {
		max-width: 100vw;
		overflow: hidden;
		padding-left: 16px;
		padding-right: 16px;
	}

	.skinsous-instagram-grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 4px;
		max-width: 100%;
	}

	.skinsous-instagram-title {
		font-size: 26px;
	}
}

/* ------------------------------------------------------------------
   EXTRA SMALL SCREENS: max-width 375px (iPhone SE / budget)
   ------------------------------------------------------------------ */
@media (max-width: 375px) {

	/* Announcement bar — extra small adjustments */
	.skinsous-announcement-bar {
		font-size: 9px;
		padding: 7px 10px;
		letter-spacing: 0.06em;
	}

	/* Product title — shrink gracefully */
	.single-product div.product .product_title {
		font-size: 28px !important;
	}

	/* CTA button — ensure it doesn't overflow */
	.skinsous-product-cta__button {
		font-size: 11px;
		padding: 14px 16px;
		letter-spacing: 0.1em;
	}

	/* Modal — tighter on very small screens */
	#skinsous-cod-modal .skinsous-modal__dialog {
		width: 100%;
		border-radius: 12px 12px 0 0;
	}

	#skinsous-cod-modal .skinsous-modal__body {
		padding: 16px 12px;
	}

	/* Quantity options — compact */
	.skinsous-qty__option {
		padding: 12px 14px;
	}

	.skinsous-qty__text {
		font-size: 13px;
	}

	.skinsous-qty__discount {
		font-size: 10px;
	}

	/* Summary row — tight fit */
	.skinsous-summary {
		padding: 16px;
	}

	/* Instagram grid — 2 columns on very small screens */
	.skinsous-instagram-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	/* Hero section — prevent text overflow */
	.skinsous-hp-content {
		padding: 0 16px;
	}

	/* Shop page — tight padding */
	.archive.woocommerce .products {
		padding: 0 12px !important;
	}

	/* Collagen results cards */
	.skinsous-collagen-results__card {
		padding: 30px 16px;
	}

	/* Ritual steps */
	.skinsous-collagen-ritual__step {
		padding: 30px 20px;
	}

	/* Product guarantees — stack single column */
	.skinsous-product-guarantees {
		flex-direction: column;
		gap: 10px;
	}

	/* Before/After labels — smaller */
	.skinsous-ba-label {
		padding: 5px 10px;
		font-size: 9px;
	}

	.skinsous-ba-label-left {
		left: 8px;
	}

	.skinsous-ba-label-right {
		right: 8px;
	}
}

/* ------------------------------------------------------------------
   320px VIEWPORT — oldest iPhones / budget Androids
   ------------------------------------------------------------------ */
@media (max-width: 320px) {

	/* Announcement bar — absolute minimum */
	.skinsous-announcement-bar {
		font-size: 8px;
		padding: 6px 8px;
		letter-spacing: 0.04em;
	}

	/* Product title */
	.single-product div.product .product_title {
		font-size: 26px !important;
		line-height: 1.1;
	}

	/* CTA button */
	.skinsous-product-cta__button {
		font-size: 10px;
		padding: 14px 12px;
		letter-spacing: 0.08em;
	}

	/* Shop hero title */
	.skinsous-shop-hero__title {
		font-size: 32px !important;
	}

	/* Instagram — single column */
	.skinsous-instagram-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 3px;
	}

	/* Eyebrow pills */
	.skinsous-product-eyebrow__pill {
		font-size: 10px;
		padding: 5px 10px;
	}

	/* Accordion title — slightly smaller */
	.skinsous-product-accordion__title {
		font-size: 12px;
	}

	/* Newsletter */
	.skinsous-newsletter-title {
		font-size: 28px;
	}

	.skinsous-newsletter-desc {
		font-size: 14px;
	}

	/* Modal header */
	#skinsous-modal-title {
		font-size: 20px;
	}
}

/* ==========================================================================
   SKINSOUS PROFESSIONAL COD MODAL — MINIMALIST LUXURY
   Design: Clean Typography, Elegant Inputs, High-End Bundle Cards
   ========================================================================== */

/* ── Modal Container ── */
.skinsous-modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 99999 !important;
	/* Maximum possible z-index */
	display: none;
	/* Controlled by JS */
	align-items: center;
	justify-content: center;
	padding: 40px 20px 20px;
	/* Extra top padding for announcement bar safety */
}

.skinsous-modal.is-open {
	display: flex;
}

.skinsous-modal__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.6);
	backdrop-filter: blur(4px);
}

/* ── Modal Dialog Layout ── */
#skinsous-cod-modal .skinsous-modal__dialog {
	max-width: 500px;
	background: #FFF;
	border-radius: 20px;
	padding: 0;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
	overflow-y: auto;
	max-height: 90vh;
	display: flex;
	flex-direction: column;
	position: relative;
	/* Added to anchor close button */
}

/* ── Close Button ── */
.skinsous-modal__close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: none;
	color: #1A1917;
	cursor: pointer;
	z-index: 1000;
	transition: all 0.3s ease;
	padding: 0;
}

.skinsous-modal__close:hover {
	color: #B8965A;
	transform: scale(1.1);
}

.skinsous-modal__close svg {
	width: 24px;
	height: 24px;
	stroke-width: 1px;
	/* Thin line as requested */
}

/* Scrollbar styling for a premium look */
#skinsous-cod-modal .skinsous-modal__dialog::-webkit-scrollbar {
	width: 6px;
}

#skinsous-cod-modal .skinsous-modal__dialog::-webkit-scrollbar-track {
	background: transparent;
}

#skinsous-cod-modal .skinsous-modal__dialog::-webkit-scrollbar-thumb {
	background: #EAEAEA;
	border-radius: 10px;
}

#skinsous-cod-modal .skinsous-modal__header {
	padding: 32px 32px 16px;
	text-align: center;
	border-bottom: 1px solid #F5F5F5;
}

#skinsous-modal-title {
	font-family: 'DM Sans', sans-serif;
	font-size: 22px;
	font-weight: 700;
	color: #1A1917;
	margin: 0 0 4px;
}

.skinsous-modal-subtitle-ar {
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	color: #B8965A;
	margin: 0;
	font-weight: 500;
}

#skinsous-cod-modal .skinsous-modal__body {
	padding: 24px 32px 32px;
}

/* ── Product Preview ── */
.skinsous-modal-products {
	margin-bottom: 24px;
}

.skinsous-product-preview {
	display: flex;
	align-items: center;
	gap: 16px;
	background: #FAF7F2;
	padding: 12px;
	border-radius: 12px;
}

.skinsous-product-preview__thumb {
	position: relative;
	width: 56px;
	height: 56px;
	flex-shrink: 0;
}

.skinsous-product-preview__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 8px;
}

.skinsous-product-preview__qty-tag {
	position: absolute;
	top: -6px;
	right: -6px;
	background: #1A1917;
	color: #FFF;
	font-size: 10px;
	font-weight: 700;
	width: 18px;
	height: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	border: 2px solid #FFF;
}

.skinsous-product-preview__info {
	flex-grow: 1;
}

.skinsous-product-preview__label {
	display: block;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #7A756D;
	margin-bottom: 2px;
}

.skinsous-product-preview__info strong {
	font-size: 15px;
	color: #1A1917;
	display: block;
	line-height: 1.2;
}

.skinsous-product-preview__price {
	font-weight: 700;
	color: #1A1917;
	font-size: 16px;
}

/* ── Bundle Selector ── */
.skinsous-bundle-selector {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
	margin-bottom: 24px;
}

.skinsous-bundle-option {
	cursor: pointer;
	position: relative;
}

.skinsous-bundle-option input {
	position: absolute;
	opacity: 0;
}

.skinsous-bundle-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 16px 10px;
	background: #FFF;
	border: 1px solid #EAEAEA;
	border-radius: 12px;
	transition: all 0.3s ease;
	height: 100%;
	position: relative;
}

.skinsous-bundle-option.is-active .skinsous-bundle-card {
	border-color: #B8965A;
	background: #FAF7F2;
	box-shadow: 0 4px 12px rgba(184, 150, 90, 0.1);
}

.skinsous-bundle-name {
	font-weight: 700;
	color: #1A1917;
	font-size: 14px;
	margin-bottom: 4px;
}

.skinsous-bundle-offer,
.skinsous-bundle-savings {
	font-size: 11px;
	color: #7A756D;
}

.skinsous-bundle-badge {
	position: absolute;
	top: -10px;
	left: 50%;
	transform: translateX(-50%);
	background: #1A1917;
	color: #FFF;
	font-size: 9px;
	font-weight: 700;
	padding: 2px 8px;
	border-radius: 100px;
	white-space: nowrap;
}

.skinsous-bundle-badge.is-gold {
	background: #B8965A;
}

/* ── Form Fields ── */
.skinsous-form-grid {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-bottom: 24px;
}

.skinsous-input-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.skinsous-input-field label {
	display: block;
	font-size: 12px;
	font-weight: 600;
	color: #1A1917;
	margin-bottom: 6px;
	letter-spacing: 0.02em;
}

.skinsous-input-field input {
	width: 100% !important;
	border: 1px solid #EAEAEA !important;
	border-radius: 8px !important;
	padding: 12px 16px !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 14px !important;
	color: #1A1917 !important;
	background: #FFF !important;
	transition: all 0.3s ease;
}

.skinsous-input-field input:focus {
	border-color: #B8965A !important;
	box-shadow: 0 0 0 3px rgba(184, 150, 90, 0.08);
	outline: none !important;
}

/* ── Checkout Summary ── */
.skinsous-checkout-summary {
	background: #FAF7F2;
	padding: 16px 20px;
	border-radius: 12px;
	margin-bottom: 24px;
}

.summary-line {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 8px;
	font-size: 14px;
	color: #7A756D;
}

.summary-line.total {
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid rgba(184, 150, 90, 0.1);
	color: #1A1917;
	font-size: 18px;
}

.summary-line.total strong {
	font-size: 20px;
	color: #1A1917;
}

.free-badge {
	color: #008A00;
	font-weight: 700;
}

/* ── High-End CTA Button ── */
.skinsous-cta-button {
	width: 100%;
	background: #B8965A;
	color: #FFF;
	border: none;
	border-radius: 12px;
	padding: 16px 24px;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
}

.skinsous-cta-button:hover {
	background: #A6854F;
	transform: translateY(-2px);
	box-shadow: 0 10px 25px rgba(184, 150, 90, 0.2);
}

.cta-primary {
	font-size: 17px;
	font-weight: 700;
	letter-spacing: -0.01em;
}

.cta-secondary {
	font-size: 12px;
	font-weight: 500;
	opacity: 0.8;
}

.skinsous-trust-footer {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	margin-top: 16px;
	font-size: 11px;
	color: #7A756D;
}

/* ── Responsive Fixes ── */
@media (max-width: 600px) {
	#skinsous-cod-modal .skinsous-modal__dialog {
		width: 100%;
		border-radius: 20px 20px 0 0;
		margin-top: auto;
		max-height: 92dvh;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	#skinsous-cod-modal .skinsous-modal__header {
		padding: 24px 20px 12px;
	}

	#skinsous-cod-modal .skinsous-modal__body {
		padding: 16px 20px 32px;
	}

	.skinsous-input-row {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.skinsous-bundle-selector {
		grid-template-columns: repeat(1, 1fr);
		gap: 10px;
	}

	.skinsous-bundle-card {
		flex-direction: row;
		justify-content: space-between;
		padding: 14px 16px;
	}

	.skinsous-bundle-badge {
		top: 50%;
		left: auto;
		right: 12px;
		transform: translateY(-50%);
	}
}

/* ═══════════════════════════════════════════════════════════════
   NUCLEAR MOBILE IMAGE FIX — ALWAYS LAST IN FILE
   Forces all shop product images to be fully visible on mobile.
   mix-blend-mode:multiply makes images disappear on any background
   that is not pure #ffffff. Our ivory (#FAF7F2) background triggers
   this invisibility on most mobile browsers.
   ═══════════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {

	/* Every product image in the shop / archive grid — EXCLUDING hover images */
	.woocommerce ul.products li.product img:not(.skinsous-hover-img):not(.skinsous-secondary-image),
	.woocommerce ul.products li.product .astra-shop-thumbnail-wrap img:not(.skinsous-hover-img):not(.skinsous-secondary-image),
	.wc-block-components-product-image img:not(.skinsous-hover-img):not(.skinsous-secondary-image),
	.wc-block-grid__product img:not(.skinsous-hover-img):not(.skinsous-secondary-image),
	.skinsous-product-card img:not(.skinsous-hover-img):not(.skinsous-secondary-image),
	.skinsous-image-container img:not(.skinsous-hover-img):not(.skinsous-secondary-image),
	.astra-shop-thumbnail-wrap img:not(.skinsous-hover-img):not(.skinsous-secondary-image) {
		mix-blend-mode: normal !important;
		opacity: 1 !important;
		visibility: visible !important;
		display: block !important;
	}

	/* MATCH DESKTOP: Show studio image first, narrative on interaction */
	.skinsous-primary-img {
		opacity: 1 !important;
		visibility: visible !important;
		position: relative !important;
	}

	.skinsous-hover-img,
	.skinsous-secondary-image {
		opacity: 0 !important;
		visibility: visible !important;
		position: absolute !important;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		transition: opacity 0.4s ease !important;
	}

	/* Reveal narrative image on tap/hover */
	.skinsous-interactive-wrap:hover .skinsous-hover-img,
	.skinsous-hover-ready:hover .skinsous-hover-img {
		opacity: 1 !important;
		z-index: 2;
	}

	/* Optional: fade primary slightly if desired, or just cover it */
	.skinsous-interactive-wrap:hover .skinsous-primary-img,
	.skinsous-hover-ready:hover .skinsous-primary-img {
		opacity: 0.2 !important;
	}

	/* Restore hover effect for all devices (including mobile tap) */
	.skinsous-hover-ready:hover .skinsous-hover-img,
	.skinsous-interactive-wrap:hover .skinsous-hover-img {
		opacity: 1 !important;
		visibility: visible !important;
	}

	.skinsous-hover-ready:hover .skinsous-primary-img,
	.skinsous-interactive-wrap:hover .skinsous-primary-img {
		opacity: 0 !important;
	}

	/* Thumbnail wrapper must have full height so images show */
	.astra-shop-thumbnail-wrap,
	.wc-block-components-product-image {
		background-color: #ffffff !important;
		min-height: 40px;
	}
}

/* ==========================================================================
   SKINSOUS PREMIUM SEARCH ENHANCEMENT
   ========================================================================== */

.skinsous-header-search-wrap {
	display: inline-flex;
	align-items: center;
	margin: 0 10px;
}

.skinsous-header-icon {
	background: transparent;
	border: none;
	padding: 8px;
	cursor: pointer;
	color: #ffffff;
	/* Forced white to match existing icons */
	transition: color 0.3s ease, transform 0.2s ease;
	display: flex;
	align-items: center;
	justify-content: center;
}

.skinsous-header-icon:hover {
	color: #B8965A;
	transform: translateY(-1px);
}

/* Hide custom desktop search on mobile (Astra handles it) */
@media (max-width: 921px) {
	.skinsous-header-search-wrap {
		display: none;
	}
}

/* ── Search Modal ── */
.skinsous-search-modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2147483647 !important;
	display: none;
	align-items: center;
	justify-content: center;
}

.skinsous-search-modal.is-open {
	display: flex;
}

.skinsous-search-modal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(255, 255, 255, 0.98);
	backdrop-filter: blur(10px);
	opacity: 0;
	transition: opacity 0.4s ease;
}

.skinsous-search-modal.is-open .skinsous-search-modal__overlay {
	opacity: 1;
}

.skinsous-search-modal__container {
	position: relative;
	width: 100%;
	max-width: 700px;
	padding: 40px 24px;
	z-index: 1;
	transform: translateY(30px);
	opacity: 0;
	transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.skinsous-search-modal.is-open .skinsous-search-modal__container {
	transform: translateY(0);
	opacity: 1;
}

.skinsous-search-modal__close {
	position: absolute;
	top: -40px;
	right: 24px;
	background: transparent;
	border: none;
	color: #1A1917;
	cursor: pointer;
	padding: 10px;
	transition: transform 0.3s ease;
}

.skinsous-search-modal__close:hover {
	transform: rotate(90deg);
}

.skinsous-search-modal__header {
	text-align: center;
	margin-bottom: 40px;
}

.skinsous-search-modal__title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 32px;
	font-weight: 500;
	color: #1A1917;
	margin: 0 0 8px;
}

.skinsous-search-modal__subtitle {
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	color: #7A756D;
	text-transform: uppercase;
	letter-spacing: 0.1em;
}

/* ── Search Form ── */
.skinsous-search-field-wrap {
	position: relative;
	border-bottom: 2px solid #1A1917;
	display: flex;
	align-items: center;
	margin-bottom: 24px;
}

.skinsous-search-input {
	width: 100% !important;
	border: none !important;
	background: transparent !important;
	padding: 16px 50px 16px 0 !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 24px !important;
	color: #1A1917 !important;
	outline: none !important;
}

.skinsous-search-submit {
	position: absolute;
	right: 0;
	background: transparent;
	border: none;
	color: #1A1917;
	cursor: pointer;
	padding: 10px;
	transition: color 0.3s ease;
}

.skinsous-search-submit:hover {
	color: #B8965A;
}

/* ── Suggestions ── */
.skinsous-search-modal__suggestions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
}

.suggestions-label {
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: #1A1917;
}

.suggestions-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.suggestions-list a {
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	color: #7A756D;
	text-decoration: none;
	padding: 6px 16px;
	background: #FAF7F2;
	border-radius: 100px;
	transition: all 0.3s ease;
}

.suggestions-list a:hover {
	background: #1A1917;
	color: #FFF;
}

body.skinsous-search-open {
	overflow: hidden;
}

/* ═══════════════════════════════════════════════════════════════
   SKINSOUS NIACINAMIDE CLINICAL SECTION
   ═══════════════════════════════════════════════════════════════ */

.skinsous-nia-clinical {
	padding: 100px 0;
	background-color: var(--skinsous-ivory);
	overflow: hidden;
}

.skinsous-nia-clinical__container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 24px;
}

.skinsous-nia-clinical__header {
	text-align: center;
	margin-bottom: 80px;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}

.skinsous-nia-clinical__eyebrow {
	display: block;
	font-family: var(--skinsous-font-body, 'DM Sans', sans-serif);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.2em;
	color: var(--skinsous-gold);
	margin-bottom: 16px;
	text-transform: uppercase;
}

.skinsous-nia-clinical__title {
	font-family: var(--skinsous-font-display, 'Cormorant Garamond', serif);
	font-size: clamp(32px, 5vw, 48px);
	line-height: 1.1;
	color: var(--skinsous-ink);
	margin-bottom: 24px;
}

.skinsous-nia-clinical__intro {
	font-size: 18px;
	color: var(--skinsous-muted);
	line-height: 1.6;
}

/* Benefits Grid */
.skinsous-nia-clinical__benefits-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
	margin-bottom: 100px;
}

.skinsous-nia-benefit {
	text-align: center;
	padding: 40px 30px;
	background: #fff;
	border: 1px solid var(--skinsous-warm-sand);
	border-radius: 2px;
	transition: transform 0.4s var(--ease-out-quint), box-shadow 0.4s var(--ease-out-quint);
}

.skinsous-nia-benefit:hover {
	transform: translateY(-10px);
	box-shadow: 0 20px 40px rgba(26, 25, 23, 0.05);
}

.skinsous-nia-benefit__icon {
	color: var(--skinsous-gold);
	margin-bottom: 24px;
	display: inline-flex;
}

.skinsous-nia-benefit__name {
	font-family: var(--skinsous-font-display, 'Cormorant Garamond', serif);
	font-size: 24px;
	color: var(--skinsous-ink);
	margin-bottom: 16px;
}

.skinsous-nia-benefit__text {
	font-size: 15px;
	color: var(--skinsous-muted);
	line-height: 1.5;
}

/* Ritual Section */
.skinsous-nia-ritual {
	background: #fff;
	border: 1px solid var(--skinsous-warm-sand);
	padding: 60px;
	position: relative;
	overflow: hidden;
}

.skinsous-nia-ritual::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 100%;
	background: var(--skinsous-gold);
}

.skinsous-nia-ritual__title {
	font-family: var(--skinsous-font-display, 'Cormorant Garamond', serif);
	font-size: 36px;
	color: var(--skinsous-ink);
	margin-bottom: 12px;
}

.skinsous-nia-ritual__desc {
	font-size: 16px;
	color: var(--skinsous-muted);
	margin-bottom: 48px;
}

.skinsous-nia-ritual__steps {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 60px;
}

.skinsous-ritual-step {
	display: flex;
	gap: 24px;
}

.skinsous-ritual-step__time {
	font-family: var(--skinsous-font-body, 'DM Sans', sans-serif);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: var(--skinsous-gold);
	writing-mode: vertical-lr;
	transform: rotate(180deg);
	border-left: 1px solid var(--skinsous-warm-sand);
	padding-right: 8px;
}

.skinsous-ritual-step__label {
	display: block;
	font-family: var(--skinsous-font-body, 'DM Sans', sans-serif);
	font-size: 13px;
	font-weight: 700;
	color: var(--skinsous-ink);
	margin-bottom: 8px;
	text-transform: uppercase;
}

.skinsous-ritual-step__text {
	font-size: 15px;
	color: var(--skinsous-muted);
	line-height: 1.6;
}

/* Footer */
.skinsous-nia-clinical__footer {
	text-align: center;
	margin-top: 80px;
}

.skinsous-nia-clinical__btn {
	display: inline-block;
	padding: 20px 50px;
	background: var(--skinsous-ink);
	color: #fff;
	text-decoration: none;
	font-family: var(--skinsous-font-body, 'DM Sans', sans-serif);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	transition: all 0.3s ease;
}

.skinsous-nia-clinical__btn:hover {
	background: var(--skinsous-gold);
	transform: translateY(-2px);
}

/* Mobile Responsive */
@media (max-width: 921px) {
	.skinsous-nia-clinical {
		padding: 60px 0;
	}

	.skinsous-nia-clinical__header {
		margin-bottom: 40px;
	}

	.skinsous-nia-clinical__benefits-grid {
		grid-template-columns: 1fr;
		gap: 20px;
		margin-bottom: 60px;
	}

	.skinsous-nia-benefit {
		padding: 30px 20px;
	}

	.skinsous-nia-ritual {
		padding: 40px 24px;
	}

	.skinsous-nia-ritual__steps {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.skinsous-nia-ritual__title {
		font-size: 28px;
	}

	.skinsous-nia-clinical__btn {
		width: 100%;
		box-sizing: border-box;
	}
}

/* ═══════════════════════════════════════════════════════════════
   SKINSOUS NIACINAMIDE CAMPAIGN HERO
   ═══════════════════════════════════════════════════════════════ */

.skinsous-nia-campaign {
	position: relative;
	width: 100%;
	background-color: var(--skinsous-ink);
	color: #fff;
	overflow: hidden;
	margin-top: 40px;
}

.skinsous-nia-campaign__inner {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	min-height: 700px;
	align-items: stretch;
}

.skinsous-nia-campaign__image-wrap {
	position: relative;
	width: 100%;
	height: 100%;
	min-height: 500px;
}

.skinsous-nia-campaign__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.skinsous-nia-campaign__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to right, rgba(26, 25, 23, 0.4), transparent);
}

.skinsous-nia-campaign__content {
	display: flex;
	align-items: center;
	padding: 80px;
	background-color: var(--skinsous-ink);
}

.skinsous-nia-campaign__text-box {
	max-width: 480px;
}

.skinsous-nia-campaign__eyebrow {
	display: block;
	font-family: var(--skinsous-font-body, 'DM Sans', sans-serif);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.3em;
	color: var(--skinsous-gold);
	margin-bottom: 24px;
	text-transform: uppercase;
}

.skinsous-nia-campaign__title {
	font-family: var(--skinsous-font-display, 'Cormorant Garamond', serif);
	font-size: clamp(40px, 6vw, 64px);
	line-height: 1.1;
	color: #fff;
	margin-bottom: 32px;
	font-weight: 400;
}

.skinsous-nia-campaign__description {
	font-size: 18px;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.8);
	margin-bottom: 40px;
	font-weight: 300;
}

.skinsous-nia-campaign__quote {
	font-family: var(--skinsous-font-display, 'Cormorant Garamond', serif);
	font-style: italic;
	font-size: 24px;
	color: var(--skinsous-gold);
	padding-left: 30px;
	border-left: 1px solid var(--skinsous-gold);
	line-height: 1.4;
}

/* Mobile Adjustments */
@media (max-width: 921px) {
	.skinsous-nia-campaign__inner {
		grid-template-columns: 1fr;
		min-height: auto;
	}

	.skinsous-nia-campaign__image-wrap {
		height: 450px;
		min-height: auto;
	}

	.skinsous-nia-campaign__content {
		padding: 60px 24px;
	}

	.skinsous-nia-campaign__overlay {
		background: linear-gradient(to bottom, transparent, rgba(26, 25, 23, 0.6));
	}

	.skinsous-nia-campaign__title {
		font-size: 42px;
	}

	.skinsous-nia-campaign__description {
		font-size: 16px;
	}

	.skinsous-nia-campaign__quote {
		font-size: 20px;
	}
}

/* ═══════════════════════════════════════════════════════════════
   SKINSOUS CUSTOM RELATED PRODUCTS
   ═══════════════════════════════════════════════════════════════ */

.skinsous-related {
	padding: 100px 0;
	background-color: #fff;
	border-top: 1px solid var(--skinsous-warm-sand);
}

.skinsous-related__container {
	max-width: 1300px;
	margin: 0 auto;
	padding: 0 24px;
}

.skinsous-related__header {
	text-align: center;
	margin-bottom: 60px;
}

.skinsous-related__eyebrow {
	display: block;
	font-family: var(--skinsous-font-body, 'DM Sans', sans-serif);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.25em;
	color: var(--skinsous-muted);
	margin-bottom: 12px;
	text-transform: uppercase;
}

.skinsous-related__title {
	font-family: var(--skinsous-font-display, 'Cormorant Garamond', serif);
	font-size: clamp(32px, 4vw, 42px);
	color: var(--skinsous-ink);
	margin-bottom: 20px;
	font-weight: 400;
}

.skinsous-related__line {
	width: 60px;
	height: 1px;
	background: var(--skinsous-gold);
	margin: 0 auto;
}

/* Grid */
.skinsous-related__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
}

/* Card */
.skinsous-related-card {
	display: flex;
	flex-direction: column;
	group;
}

.skinsous-related-card__image-link {
	text-decoration: none;
	display: block;
	margin-bottom: 20px;
	overflow: hidden;
}

.skinsous-related-card__image-wrap {
	position: relative;
	aspect-ratio: 4/5;
	background-color: var(--skinsous-ivory);
	overflow: hidden;
}

.skinsous-related-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.skinsous-related-card:hover .skinsous-related-card__img {
	transform: scale(1.08);
}

.skinsous-related-card__overlay {
	position: absolute;
	inset: 0;
	background: rgba(26, 25, 23, 0.2);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: opacity 0.4s ease;
}

.skinsous-related-card:hover .skinsous-related-card__overlay {
	opacity: 1;
}

.skinsous-related-card__cta {
	padding: 12px 24px;
	background: #fff;
	color: var(--skinsous-ink);
	font-family: var(--skinsous-font-body, 'DM Sans', sans-serif);
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	transform: translateY(10px);
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.skinsous-related-card:hover .skinsous-related-card__cta {
	transform: translateY(0);
}

.skinsous-related-card__info {
	text-align: center;
}

.skinsous-related-card__name {
	font-family: var(--skinsous-font-display, 'Cormorant Garamond', serif);
	font-size: 18px;
	margin: 0 0 8px;
	line-height: 1.3;
}

.skinsous-related-card__name a {
	color: var(--skinsous-ink);
	text-decoration: none;
	transition: color 0.3s ease;
}

.skinsous-related-card__name a:hover {
	color: var(--skinsous-gold);
}

.skinsous-related-card__price {
	font-family: var(--skinsous-font-body, 'DM Sans', sans-serif);
	font-size: 14px;
	font-weight: 600;
	color: var(--skinsous-gold);
}

.skinsous-related-card__price del {
	color: var(--skinsous-muted);
	font-weight: 400;
	margin-right: 8px;
	font-size: 12px;
}

.skinsous-related-card__price ins {
	text-decoration: none;
}

/* Mobile Adjustments */
@media (max-width: 921px) {
	.skinsous-related {
		padding: 60px 0;
	}

	.skinsous-related__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
	}

	.skinsous-related__header {
		margin-bottom: 40px;
	}

	.skinsous-related-card__name {
		font-size: 16px;
	}

	.skinsous-related-card__overlay {
		display: none;
		/* Disable overlay on mobile for better UX */
	}
}