:root {
	--pp-bg: #ffffff;
	--pp-surface: #ffffff;
	--pp-text: #1a1a1f;
	--pp-muted: #5e616d;
	--pp-gold: #c6a15b;
	--pp-gold-strong: #d7b775;
	--pp-border: #e6e7ec;
	--pp-header-bg: #070708;
	--pp-max-width: 1240px;
}

/* CTA WPForms - Version luxe (formulaire 2117) */
#wpforms-submit-2117 {
	background: linear-gradient(145deg, #0f0f10, #1b1b1d);
	color: #f8f5ee;
	border: 1px solid #c8a96b;
	border-radius: 14px;
	padding: 14px 26px;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.3px;
	line-height: 1;
	cursor: pointer;
	transition: all 0.3s ease;
	box-shadow:
		0 10px 24px rgba(0, 0, 0, 0.35),
		inset 0 0 0 1px rgba(255, 255, 255, 0.04);
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.35);
}

#wpforms-submit-2117:hover {
	background: linear-gradient(145deg, #171719, #242427);
	border-color: #e0c287;
	color: #fffaf0;
	transform: translateY(-1px);
	box-shadow:
		0 14px 28px rgba(0, 0, 0, 0.4),
		0 0 0 1px rgba(224, 194, 135, 0.15),
		inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

#wpforms-submit-2117:active {
	transform: translateY(0);
	box-shadow:
		0 8px 16px rgba(0, 0, 0, 0.35),
		inset 0 2px 4px rgba(0, 0, 0, 0.35);
}

#wpforms-submit-2117:focus-visible {
	outline: 2px solid rgba(224, 194, 135, 0.65);
	outline-offset: 3px;
}

#wpforms-submit-2117:disabled,
#wpforms-submit-2117.wpforms-submit-processing {
	opacity: 0.7;
	cursor: not-allowed;
	transform: none;
	box-shadow: none;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

body {
	margin: 0;
	font-family: "Manrope", "Segoe UI", Arial, sans-serif;
	background: var(--pp-bg);
	color: var(--pp-text);
	line-height: 1.6;
	max-width: 100%;
	overflow-x: hidden;
}

@supports (overflow: clip) {
	body {
		overflow-x: clip;
	}
}

a {
	color: var(--pp-gold);
	text-decoration: none;
}

a:hover {
	color: var(--pp-gold-strong);
}

.container {
	width: min(100% - 2rem, var(--pp-max-width));
	margin-inline: auto;
}

.site-shipping-notice {
	position: sticky;
	top: 0;
	z-index: 60;
	background: var(--pp-gold);
	color: #111;
	border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}

.site-shipping-notice__inner {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	min-height: 40px;
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
}

.site-shipping-notice__icon svg {
	display: block;
	width: 16px;
	height: 16px;
	fill: currentColor;
}

.site-header {
	position: sticky;
	top: 40px;
	z-index: 50;
	background: rgba(7, 7, 8, 0.96);
	backdrop-filter: blur(10px);
	border-bottom: 1px solid #141418;
	transition: background 0.25s ease, box-shadow 0.25s ease;
}

.site-header.is-scrolled {
	background: var(--pp-header-bg);
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.35);
}

.header-inner {
	display: flex;
	align-items: center;
	gap: 1.5rem;
	min-height: 76px;
}

.site-branding {
	flex: 0 0 auto;
}

.custom-logo-link img,
.site-branding img {
	width: auto;
	max-height: 85px;
}

.site-title-text {
	color: #fff;
	font-size: 1.02rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.menu-toggle {
	display: none;
	margin-left: auto;
	background: transparent;
	color: #fff;
	border: 1px solid var(--pp-border);
	padding: 0.45rem 0.75rem;
	border-radius: 6px;
}

.main-navigation {
	margin-left: 0;
	flex: 1 1 auto;
	display: flex;
	justify-content: center;
}

.mobile-nav-header,
.mobile-nav-backdrop,
.mobile-menu-close {
	display: none;
}

.main-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 1.9rem;
	justify-content: center;
}

.main-navigation li {
	position: relative;
}

.main-navigation .menu-item-has-children > a {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.main-navigation .menu-item-has-children > a::after {
	content: "";
	display: inline-block;
	width: 0.45rem;
	height: 0.45rem;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: rotate(45deg) translateY(-1px);
	transition: transform 0.2s ease;
}

.main-navigation ul.sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 220px;
	display: flex;
	flex-direction: column;
	gap: 0;
	padding: 0.55rem 0;
	background: #0e0e12;
	border: 1px solid #1d1d24;
	border-radius: 10px;
	box-shadow: 0 14px 28px rgba(0, 0, 0, 0.28);
	opacity: 0;
	transform: translateY(8px);
	pointer-events: none;
	visibility: hidden;
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
	z-index: 30;
}

.main-navigation ul.sub-menu li {
	width: 100%;
}

.main-navigation ul.sub-menu a {
	display: block;
	padding: 0.55rem 0.9rem;
	font-size: 0.84rem;
	letter-spacing: 0.02em;
	white-space: nowrap;
}

.main-navigation ul.sub-menu a:hover,
.main-navigation ul.sub-menu a:focus-visible {
	background: rgba(198, 161, 91, 0.14);
	color: #fff;
}

.main-navigation .menu-item-has-children:hover > ul.sub-menu,
.main-navigation .menu-item-has-children:focus-within > ul.sub-menu,
.main-navigation .menu-item-has-children.submenu-open > ul.sub-menu {
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
	visibility: visible;
}

.main-navigation .menu-item-has-children:hover > a::after,
.main-navigation .menu-item-has-children:focus-within > a::after,
.main-navigation .menu-item-has-children.submenu-open > a::after {
	transform: rotate(-135deg) translateY(-1px);
}

.main-navigation a {
	color: #fff;
	font-size: 0.98rem;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding: 0.35rem 0;
	line-height: 1;
	transition: color 0.2s ease;
}

.main-navigation #primary-menu > li > a {
	display: inline-flex;
	align-items: center;
	min-height: 1.5rem;
}

.main-navigation .current-menu-item > a,
.main-navigation .current-menu-ancestor > a,
.main-navigation .current_page_item > a,
.main-navigation .current_page_ancestor > a {
	color: var(--pp-gold);
	box-shadow: inset 0 -2px 0 var(--pp-gold);
}

.header-actions {
	margin-left: auto;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

.header-cart-link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.5rem 0.8rem;
	border: 1px solid var(--pp-gold);
	border-radius: 999px;
	color: #fff;
}

.header-icon-link {
	width: 2.5rem;
	height: 2.5rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #2a2a33;
	border-radius: 999px;
	color: #fff;
	background: #101014;
	transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.header-icon-link svg {
	width: 1.25rem;
	height: 1.25rem;
	display: block;
	fill: currentColor;
}

.header-icon-link:hover,
.header-icon-link:focus-visible {
	border-color: var(--pp-gold);
	color: var(--pp-gold);
	background: #14141b;
}

.header-search-toggle {
	cursor: pointer;
}

body.search-overlay-open {
	overflow: hidden;
}

.site-search-overlay {
	position: fixed;
	inset: 0;
	z-index: 120;
	display: grid;
	place-items: center;
	padding-inline: 1rem;
	overflow-x: clip;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.2s ease, visibility 0.2s ease;
}

.site-search-overlay[hidden] {
	display: none !important;
}

.site-search-overlay.is-visible {
	opacity: 1;
	visibility: visible;
}

.site-search-overlay__backdrop {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at top, rgba(35, 35, 50, 0.55), rgba(8, 8, 10, 0.92));
	cursor: pointer;
}

.site-search-overlay__backdrop:hover,
.site-search-overlay__backdrop:focus-visible {
	background: radial-gradient(circle at top, rgba(35, 35, 50, 0.55), rgba(8, 8, 10, 0.92)) !important;
}

.site-search-overlay__panel {
	position: relative;
	z-index: 1;
	width: min(100%, 920px);
	max-width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1.2rem;
	text-align: center;
}

.site-search-overlay__close {
	position: absolute;
	top: -3.1rem;
	right: 0;
	width: 2.55rem;
	height: 2.55rem;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 999px;
	background: rgba(14, 14, 20, 0.8);
	color: #ffffff;
	font-size: 1.65rem;
	line-height: 1;
	cursor: pointer;
}

.site-search-overlay__title {
	margin: 0;
	color: #ffffff;
	font-size: clamp(1.7rem, 4.6vw, 3.1rem);
	font-weight: 600;
	line-height: 1.15;
	font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif;
}

.site-search-overlay__form {
	width: 100%;
	display: grid;
	gap: 1rem;
}

.site-search-overlay__input {
	width: 100%;
	height: clamp(64px, 8vw, 92px);
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.96);
	color: #0f1016;
	font-size: clamp(1.1rem, 2.4vw, 1.75rem);
	font-weight: 600;
	padding: 0 1.7rem;
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
}

.site-search-overlay__input:focus {
	outline: none;
	border-color: var(--pp-gold);
	box-shadow: 0 0 0 4px rgba(198, 161, 91, 0.28), 0 20px 50px rgba(0, 0, 0, 0.35);
}

.site-search-overlay__submit {
	justify-self: center;
	border: 0;
	border-radius: 999px;
	padding: 0.8rem 1.35rem;
	font-size: 0.92rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	background: var(--pp-gold);
	color: #101015;
	cursor: pointer;
}

.header-cart-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.6rem;
	height: 1.6rem;
	background: var(--pp-gold);
	color: #0f0f10;
	font-weight: 700;
	border-radius: 999px;
	padding: 0 0.35rem;
}

.hero {
	padding: 4.5rem 0 2.5rem;
	border-bottom: 1px solid #f0f1f4;
	background: linear-gradient(180deg, #ffffff 0%, #f8f8fb 100%);
}

.home-intro {
	padding: 3rem 0 1.2rem;
}

.home .site-content > section + section {
	margin-top: 2rem;
}

.home-title {
	margin: 0;
	font-size: clamp(1.8rem, 4vw, 3rem);
	line-height: 1.2;
	letter-spacing: -0.02em;
	color: #101014;
	max-width: 32ch;
	margin-inline: auto;
	text-align: center;
	font-weight: 600;
}

.home-title__main {
	display: block;
	font-size: inherit;
	line-height: inherit;
	letter-spacing: inherit;
}

.home-title__sub {
	display: block;
	margin-top: 0.55rem;
	font-family: "Manrope", "Segoe UI", Arial, sans-serif;
	font-weight: 600;
	font-size: clamp(1rem, 2vw, 1.35rem);
	line-height: 1.35;
	letter-spacing: 0.01em;
	color: var(--pp-gold);
}

.home-slider-section {
	padding: 1.2rem 0 2rem;
}

.home-slider {
	border-radius: 16px;
	overflow: hidden;
	border: 1px solid var(--pp-border);
	background: #f8f8fb;
}

.home-slide {
	display: grid;
	grid-template-columns: 1.1fr 1fr;
	align-items: stretch;
	min-height: 360px;
}

.home-slide-media {
	display: flex;
	align-items: center;
	justify-content: center;
}

.home-slide-media img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	display: block;
}

.home-slide-content {
	padding: 2rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 1rem;
}

.home-slide-content h2 {
	margin: 0;
	font-size: 1.8rem;
}

.home-slider-controls {
	display: flex;
	justify-content: flex-end;
	gap: 0.5rem;
	margin-top: 0.8rem;
}

.home-slider-controls button {
	width: 2.5rem;
	height: 2.5rem;
	padding: 0;
	border-radius: 999px;
}

.home-books-moment {
	padding: 1.8rem 0 2.5rem;
}

.section-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1rem;
}

.section-header h2 {
	margin: 0;
	font-size: 1.8rem;
}

.section-link {
	font-weight: 700;
	color: #17171d;
}

.section-link.section-link--cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 0.6rem 1rem;
	border-radius: 999px;
	background: #111116;
	color: #ffffff;
	border: 1px solid rgba(17, 17, 22, 0.18);
	box-shadow: 0 10px 22px rgba(12, 12, 22, 0.12);
	font-size: 0.88rem;
	line-height: 1;
	letter-spacing: 0.01em;
}

.section-link.section-link--cta:hover,
.section-link.section-link--cta:focus-visible {
	background: var(--pp-gold);
	color: #111;
	transform: translateY(-1px);
}

ul.products.columns-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

ul.products li.product {
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

ul.products li.product:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 28px rgba(12, 12, 22, 0.08);
}

.home-author {
	background: #f2f2f2;
	padding: 2.5rem 0 3rem;
}

.author-grid {
	display: grid;
	grid-template-columns: 380px 1fr;
	gap: 2rem;
	align-items: stretch;
}

.author-media {
	height: 100%;
	border-radius: 14px;
	overflow: hidden;
	border: 1px solid var(--pp-border);
}

.author-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.author-content {
	background: #fff;
	border: 1px solid var(--pp-border);
	border-radius: 14px;
	padding: 1.5rem;
	line-height: 1.75;
}

.home-media {
	padding: 0 0 3rem;
}

.home-media-header {
	align-items: flex-end;
}

.home-media-intro {
	margin: 0.4rem 0 0;
	color: var(--pp-muted);
	max-width: 72ch;
}

.home-media-grid {
	margin-top: 1rem;
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr);
	gap: 1rem;
}

.home-media-player {
	border: 1px solid var(--pp-border);
	border-radius: 14px;
	overflow: hidden;
	background: #0e0e12;
}

.home-media-player iframe {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	height: auto;
}

.home-media-list {
	margin: 0;
	padding: 0.25rem;
	list-style: none;
	border: 1px solid var(--pp-border);
	border-radius: 14px;
	background: #fff;
	max-height: 450px;
	overflow: auto;
}

.home-media-list li + li {
	border-top: 1px solid #f0f1f4;
}

.home-media-list a {
	display: grid;
	grid-template-columns: 120px 1fr;
	gap: 0.8rem;
	padding: 0.6rem;
	color: inherit;
}

.home-media-list a:hover,
.home-media-list a:focus-visible {
	background: #f9f9fc;
}

.home-media-item.is-active {
	background: #f5f2e9;
}

.home-media-item.is-active .home-media-title {
	color: #0f0f14;
	font-weight: 700;
}

.home-media-thumb {
	display: block;
	border-radius: 10px;
	overflow: hidden;
}

.home-media-thumb img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.home-media-meta {
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
	align-self: center;
}

.home-media-title {
	font-size: 0.9rem;
	line-height: 1.35;
	color: #111116;
}

.home-media-duration {
	font-size: 0.78rem;
	font-weight: 700;
	color: var(--pp-gold);
}

.home-podcast {
	margin-top: 1rem;
	padding: 1rem 1.1rem;
	border: 1px solid var(--pp-border);
	border-radius: 14px;
	background: #fff;
}

.home-podcast p {
	margin: 0;
	font-weight: 600;
}

.home-podcast-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.75rem;
}

.home-podcast-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	padding: 0.45rem 0.75rem;
	border-radius: 999px;
	border: 1px solid var(--pp-border);
	background: #f7f7fb;
	color: #111116;
	font-size: 0.85rem;
	font-weight: 700;
}

.home-podcast-link:hover,
.home-podcast-link:focus-visible {
	background: var(--pp-gold);
	color: #111116;
	border-color: var(--pp-gold);
}

.home-podcast-icon {
	width: 1rem;
	height: 1rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.95rem;
	line-height: 1;
}

.home-blog {
	padding: 0 0 2rem;
}

.home-reassurance {
	margin-top: 1rem;
	padding: 2rem 0 2.5rem;
	border-top: 1px solid var(--pp-border);
	background: linear-gradient(180deg, #fafafb 0%, #f4f5f8 100%);
}

.home-reassurance__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.5rem 2rem;
	align-items: stretch;
}

.home-reassurance__block {
	padding: 1rem 1.15rem;
	border: 1px solid var(--pp-border);
	border-radius: 14px;
	background: var(--pp-surface);
	box-shadow: 0 8px 20px rgba(12, 12, 22, 0.05);
}

.home-reassurance__title {
	margin: 0 0 0.65rem;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--pp-muted);
}

.home-reassurance__logos {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem 1rem;
}

.home-reassurance__logos li {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.home-reassurance__logo-icon {
	font-size: 2.35rem;
	line-height: 1;
	color: #1a1d24;
}

.home-reassurance__cb {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.6rem;
	height: 1.55rem;
	padding: 0 0.45rem;
	border-radius: 4px;
	background: linear-gradient(135deg, #2b6cb0 0%, #1e4e8c 100%);
	color: #fff;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	font-family: "Manrope", "Segoe UI", Arial, sans-serif;
}

.home-reassurance__text {
	margin: 0;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.45;
	color: #111116;
}

.home-reassurance__text--muted {
	font-size: 0.88rem;
	font-weight: 500;
	color: var(--pp-muted);
	line-height: 1.45;
}

.home-reassurance__reviews,
.home-reassurance__reviews--nolink {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	text-decoration: none;
	color: #111116;
	transition: color 0.2s ease;
}

.home-reassurance__reviews:hover,
.home-reassurance__reviews:focus-visible {
	color: var(--pp-gold);
}

.home-reassurance__reviews--nolink {
	cursor: default;
}

.home-reassurance__reviews-google {
	flex: 0 0 auto;
	font-size: 1.35rem;
	color: #4285f4;
	line-height: 1;
}

.home-reassurance__reviews:hover .home-reassurance__reviews-google,
.home-reassurance__reviews:focus-visible .home-reassurance__reviews-google {
	color: var(--pp-gold);
}

.home-reassurance__reviews-main {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	min-width: 0;
}

.home-reassurance__stars {
	display: flex;
	flex-wrap: wrap;
	gap: 0.12rem;
	font-size: 0.82rem;
	line-height: 1;
	color: var(--pp-gold);
}

.home-reassurance__star--empty {
	color: #d8d9e0;
}

.home-reassurance__rating-line {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.35rem 0.5rem;
	font-size: 0.95rem;
}

.home-reassurance__rating-score {
	font-weight: 800;
	color: #111116;
}

.home-reassurance__rating-count {
	font-weight: 600;
	color: var(--pp-muted);
	font-size: 0.88rem;
}

.home-reassurance__reviews-cta {
	font-size: 0.82rem;
	font-weight: 700;
	color: var(--pp-gold);
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.home-reassurance__reviews--fallback {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-weight: 600;
	font-size: 0.92rem;
	line-height: 1.35;
	color: #111116;
	text-decoration: none;
	transition: color 0.2s ease;
}

.home-reassurance__reviews--fallback:hover,
.home-reassurance__reviews--fallback:focus-visible {
	color: var(--pp-gold);
}

.home-reassurance__reviews-google-icon {
	font-size: 1.35rem;
	color: #4285f4;
}

.home-reassurance__amazon,
.home-reassurance__amazon--static {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	margin: 0;
	text-decoration: none;
	color: #111116;
	font-weight: 600;
	font-size: 0.98rem;
	line-height: 1.35;
	transition: color 0.2s ease;
}

.home-reassurance__amazon:hover,
.home-reassurance__amazon:focus-visible {
	color: var(--pp-gold);
}

.home-reassurance__amazon-icon {
	font-size: 1.75rem;
	color: #232f3e;
}

.home-reassurance__amazon:hover .home-reassurance__amazon-icon,
.home-reassurance__amazon:focus-visible .home-reassurance__amazon-icon {
	color: var(--pp-gold);
}

.home-reassurance__sr-only {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	white-space: nowrap;
}

.content-cards-grid {
	display: grid;
	gap: 1rem;
}

.content-cards-grid--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.content-card {
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid var(--pp-border);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 10px 24px rgba(12, 12, 22, 0.06);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.content-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 30px rgba(12, 12, 22, 0.12);
}

.content-card__media-link {
	display: block;
	max-height: 240px;
	overflow: hidden;
}

.content-card__media {
	display: block;
	width: 100%;
	height: 240px;
	object-fit: cover;
	background: #f1f2f6;
}

.content-card__media--placeholder {
	background:
		linear-gradient(130deg, rgba(198, 161, 91, 0.22) 0%, rgba(198, 161, 91, 0.04) 38%, rgba(17, 17, 22, 0.08) 100%),
		#f1f2f6;
}

.content-card__body {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	padding: 1rem;
}

.content-card__meta {
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--pp-gold);
}

.content-card__title {
	margin: 0;
	font-size: 1.08rem;
	line-height: 1.35;
}

.content-card__title a {
	color: #101015;
}

.content-card__title a:hover,
.content-card__title a:focus-visible {
	color: #000;
}

.content-card__excerpt {
	margin: 0;
	color: var(--pp-muted);
	line-height: 1.6;
}

.content-card__link {
	margin-top: auto;
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.38rem 0.72rem;
	border-radius: 999px;
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	color: #111116;
	background: #f5f2e9;
	border: 1px solid rgba(198, 161, 91, 0.3);
}

.content-card__link:hover,
.content-card__link:focus-visible {
	background: var(--pp-gold);
	border-color: var(--pp-gold);
	color: #111116;
}

.hero-title {
	margin: 0 0 0.6rem;
	font-size: clamp(2rem, 5vw, 3.2rem);
	line-height: 1.15;
}

.hero-text {
	margin: 0 0 1.4rem;
	color: var(--pp-muted);
	max-width: 52ch;
}


.button:hover,
 .button:focus-visible,
button:hover,
button:focus-visible,
input[type="submit"]:hover,
input[type="submit"]:focus-visible,
.wc-block-components-button:hover,
.wc-block-components-button:focus-visible {
	background: #111116;
	color: #ffffff;
}

/* CTA gold for checkout submit button in cart block. */
.wc-block-cart__submit-button.contained {
	background: var(--pp-gold);
	border-color: var(--pp-gold);
	color: #111116;
	font-weight: 800;
	box-shadow: 0 10px 24px rgba(198, 161, 91, 0.32);
	transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.wc-block-cart__submit-button.contained:hover,
.wc-block-cart__submit-button.contained:focus-visible {
	background: #d8b26a;
	border-color: #d8b26a;
	color: #111116;
	transform: translateY(-1px);
	box-shadow: 0 14px 30px rgba(198, 161, 91, 0.4);
	filter: saturate(1.05);
}

.site-content {
	padding: 2rem 0 3rem;
}

.search-results-page__header {
	margin-bottom: 1.2rem;
}

.search-results-page__title {
	margin: 0;
	font-size: clamp(1.45rem, 3vw, 2rem);
	letter-spacing: -0.02em;
}

.search-results-page__empty {
	margin: 0;
	padding: 1.2rem;
	border: 1px solid var(--pp-border);
	border-radius: 12px;
	background: #ffffff;
}

/* Default page layout + contact form polish (classic content / CF7). */
.page-card {
	width: min(100%, 960px);
	margin: 0 auto;
	padding: clamp(1rem, 2.5vw, 2rem);
}

.page-card .entry-title {
	margin: 0 0 1rem;
	font-size: clamp(1.6rem, 3.2vw, 2.35rem);
	line-height: 1.15;
	letter-spacing: -0.02em;
}

.page-card .entry-content > :first-child {
	margin-top: 0;
}

.page-card .entry-content > :last-child {
	margin-bottom: 0;
}

body.page:not(.woocommerce-page) .entry-content form,
body.page:not(.woocommerce-page) .entry-content .wpcf7 form {
	display: grid;
	gap: 0.9rem;
}

body.page:not(.woocommerce-page) .entry-content label {
	display: block;
	margin-bottom: 0.35rem;
	font-size: 0.92rem;
	font-weight: 700;
	color: #14141a;
}

body.page:not(.woocommerce-page) .entry-content input[type="text"],
body.page:not(.woocommerce-page) .entry-content input[type="email"],
body.page:not(.woocommerce-page) .entry-content input[type="tel"],
body.page:not(.woocommerce-page) .entry-content input[type="url"],
body.page:not(.woocommerce-page) .entry-content input[type="number"],
body.page:not(.woocommerce-page) .entry-content input[type="date"],
body.page:not(.woocommerce-page) .entry-content textarea,
body.page:not(.woocommerce-page) .entry-content select {
	width: 100%;
	border: 1px solid #d8dae3;
	border-radius: 10px;
	background: #ffffff;
	color: #17171d;
	padding: 0.78rem 0.9rem;
	font: inherit;
	line-height: 1.4;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

body.page:not(.woocommerce-page) .entry-content textarea {
	min-height: 140px;
	resize: vertical;
}

body.page:not(.woocommerce-page) .entry-content input:focus,
body.page:not(.woocommerce-page) .entry-content textarea:focus,
body.page:not(.woocommerce-page) .entry-content select:focus {
	outline: none;
	border-color: var(--pp-gold);
	box-shadow: 0 0 0 3px rgba(198, 161, 91, 0.2);
}

body.page:not(.woocommerce-page) .entry-content .wpcf7-not-valid {
	border-color: #d63638;
}

body.page:not(.woocommerce-page) .entry-content .wpcf7-not-valid-tip {
	margin-top: 0.3rem;
	font-size: 0.82rem;
	font-weight: 600;
	color: #b42324;
}

body.page:not(.woocommerce-page) .entry-content .wpcf7-response-output {
	margin: 0.4rem 0 0;
	padding: 0.75rem 0.9rem;
	border-radius: 10px;
	font-size: 0.92rem;
}

body.page:not(.woocommerce-page) .entry-content input[type="submit"],
body.page:not(.woocommerce-page) .entry-content .wpcf7-submit {
	justify-self: start;
}

.shop-category-section {
	padding: 2.25rem 0 2.75rem;
}

.shop-category-section--white {
	background: #ffffff;
}

.shop-category-section--gray {
	background: #f7f7fb;
}

.shop-category-title {
	margin: 0 0 1.25rem;
	text-align: center;
	font-size: clamp(1.3rem, 2.2vw, 1.8rem);
	letter-spacing: -0.02em;
}

.shop-category-description {
	margin: -0.75rem auto 1.25rem;
	text-align: center;
	font-size: 0.95rem;
	font-weight: 300;
	color: var(--pp-muted);
}

.shop-category-description p {
	margin: 0;
}

.shop-archive-header {
	padding: 0.5rem 0 1.75rem;
}

.shop-archive-title {
	margin: 0;
	text-align: center;
	font-size: clamp(1.6rem, 3vw, 2.2rem);
	letter-spacing: -0.02em;
}

.shop-archive-intro {
	margin: 0.6rem auto 0;
	max-width: 80ch;
	text-align: center;
	font-size: 0.98rem;
	font-weight: 300;
	color: var(--pp-muted);
}

/* Ensure consistent spacing on the custom full-width shop layout. */
.woocommerce-shop .shop-wrap--fullwidth .shop-category-section .products li.product {
	padding: 1rem;
}

.content-card,
.woocommerce div.product,
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.woocommerce-account .woocommerce {
	background: var(--pp-surface);
	border: 1px solid var(--pp-border);
	border-radius: 12px;
	padding: 1.25rem;
	box-shadow: 0 8px 24px rgba(10, 10, 20, 0.04);
}

/* My Account layout: improve left navigation visuals. */
.woocommerce-account .woocommerce {
	display: grid;
	grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
	gap: 1.2rem;
	align-items: start;
}

.woocommerce-account .woocommerce-notices-wrapper {
	grid-column: 1 / -1;
}

/* Logged-out account screen (login/register): full width in desktop grid container. */
.woocommerce-account .woocommerce > #customer_login,
.woocommerce-account .woocommerce > .u-columns.col2-set {
	grid-column: 1 / -1;
	width: 100%;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	float: none;
	width: 100%;
	margin: 0;
	grid-column: 1;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0.45rem;
	background: linear-gradient(180deg, #fbfbfd 0%, #f3f4f8 100%);
	border: 1px solid var(--pp-border);
	border-radius: 14px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	margin: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li + li {
	margin-top: 0.35rem;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.68rem 0.8rem;
	border-radius: 10px;
	color: #16161d;
	font-size: 0.92rem;
	font-weight: 700;
	line-height: 1.2;
	transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:focus-visible {
	background: rgba(198, 161, 91, 0.14);
	color: #121216;
	transform: translateX(2px);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
	background: #111116;
	color: #ffffff;
	box-shadow: 0 10px 24px rgba(17, 17, 22, 0.2);
}

.woocommerce-account .woocommerce-MyAccount-content {
	float: none;
	width: 100%;
	margin: 0;
	grid-column: 2;
}

.woocommerce-account .woocommerce-MyAccount-content:where(:empty) {
	display: none;
}

.pp-account-dashboard {
	display: grid;
	gap: 1rem;
}

.pp-account-dashboard__header {
	padding: 1rem;
	border: 1px solid var(--pp-border);
	border-radius: 12px;
	background: linear-gradient(180deg, #fbfbfd 0%, #f7f8fc 100%);
}

.pp-account-dashboard__title {
	margin: 0;
	font-size: clamp(1.2rem, 2vw, 1.5rem);
}

.pp-account-dashboard__intro {
	margin: 0.45rem 0 0;
	color: var(--pp-muted);
	font-size: 0.94rem;
}

.pp-account-dashboard__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.8rem;
}

.pp-account-dashboard__card {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 0.75rem;
	padding: 0.9rem 1rem;
	border-radius: 12px;
	border: 1px solid var(--pp-border);
	background: #ffffff;
	color: #111116;
	text-decoration: none;
	box-shadow: 0 8px 18px rgba(12, 12, 22, 0.05);
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.pp-account-dashboard__card:hover,
.pp-account-dashboard__card:focus-visible {
	transform: translateY(-2px);
	box-shadow: 0 14px 24px rgba(12, 12, 22, 0.1);
	border-color: rgba(198, 161, 91, 0.45);
}

.pp-account-dashboard__card-icon {
	width: 2.3rem;
	height: 2.3rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: #f5f2e9;
	color: #7f6028;
	border: 1px solid rgba(198, 161, 91, 0.35);
	flex: 0 0 auto;
}

.pp-account-dashboard__card-icon svg {
	width: 1.2rem;
	height: 1.2rem;
	display: block;
	fill: currentColor;
}

.pp-account-dashboard__card-main {
	display: grid;
	gap: 0.35rem;
}

.pp-account-dashboard__card-title {
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.25;
}

.pp-account-dashboard__card-desc {
	color: var(--pp-muted);
	font-size: 0.86rem;
	line-height: 1.45;
}

.pp-account-dashboard__card-link {
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--pp-gold);
}

@media (max-width: 640px) {
	.pp-account-dashboard__card {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.pp-account-dashboard__card-link {
		grid-column: 2;
	}
}

.archive-grid,
ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Disable WooCommerce clearfix pseudo-elements on product grids. */
.woocommerce .products ul::before,
.woocommerce .products ul::after,
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after {
	content: none !important;
	display: none !important;
}

ul.products li.product {
	width: 100% !important;
	margin: 0 !important;
	background: var(--pp-surface);
	border: 1px solid var(--pp-border);
	border-radius: 12px;
	padding: 0.8rem !important;
}

.product-card {
	display: flex;
	flex-direction: column;
	gap: 0.7rem;
}

.product-card-link {
	display: block;
	color: inherit;
}

.product-card-media {
	position: relative;
	border-radius: 12px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 593 / 840;
	padding: 0.35rem;
}

/* Book cover thumbnails: always scale to container (no "size 1") */
ul.products li.product-card .product-card-media img {
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain !important;
	display: block !important;
}

ul.products li.product:hover .product-card-media img {
	transform: none;
}

.product-card-content {
	padding-top: 0.65rem;
}

/* Product card title (matches `content-product.php` markup) */
ul.products li.product-card .product-card-content .woocommerce-loop-product__title {
	margin: 0;
	font-size: 0.98rem;
	font-weight: 600;
	color: #111116;
	letter-spacing: -0.01em;
	line-height: 1.2;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

ul.products li.product-card .product-card-content {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

ul.products li.product-card .product-card-author {
	color: var(--pp-gold);
	font-weight: 700;
	font-size: 0.84rem;
	line-height: 1.2;
}

ul.products li.product-card .product-card-excerpt {
	color: var(--pp-muted);
	font-size: 0.82rem;
	line-height: 1.35;
}

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--pp-gold);
	font-weight: 700;
}

.product-card-footer {
	margin-top: auto;
	padding-top: 0.55rem;
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
}

.product-card-footer-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	border-top: 1px solid #f0f1f4;
	padding-top: 0.6rem;
}

.product-card-footer .price {
	margin: 0;
	font-size: 1.02rem;
	line-height: 1.1;
	white-space: nowrap;
}

.product-card-footer .price del {
	color: var(--pp-muted);
	opacity: 0.9;
	font-weight: 600;
	margin-right: 0.35rem;
}

.product-card-footer .price ins {
	text-decoration: none;
}

.woocommerce ul.products li.product .button,
ul.products li.product .button {
	margin: 0;
	background: var(--pp-gold);
	color: #101010;
	border-radius: 999px;
	padding: 0.55rem 0.95rem;
	font-size: 0.86rem;
	font-weight: 800;
	line-height: 1;
	box-shadow: none;
	transform: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
}

.woocommerce ul.products li.product a.button.add_to_cart_button,
ul.products li.product a.button.add_to_cart_button {
	text-decoration: none;
}

/* Cart icon (reliable: background-image swap on hover) */
.woocommerce ul.products li.product a.button.add_to_cart_button::before,
ul.products li.product a.button.add_to_cart_button::before {
	content: "";
	width: 1em;
	height: 1em;
	display: inline-block;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23111116' d='M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2Zm10 0c-1.1 0-1.99.9-1.99 2S15.9 22 17 22s2-.9 2-2-.9-2-2-2ZM6.2 6h15.3c.5 0 .9.4.9.9 0 .1 0 .2-.1.3l-2.1 7.6c-.2.7-.8 1.2-1.6 1.2H8.1c-.8 0-1.4-.5-1.6-1.2L4.3 3H2.2c-.5 0-.9-.4-.9-.9s.4-.9.9-.9H5c.4 0 .8.3.9.7L6.2 6Zm1.2 8.2h11c.1 0 .2-.1.2-.2l1.7-6.2H6.7l.7 3.2.8 3.2c0 .1.1.2.2.2Z'/%3E%3C/svg%3E");
}

.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product .button:focus-visible,
ul.products li.product .button:hover,
ul.products li.product .button:focus-visible {
	background: #111116 !important;
	color: #ffffff !important;
	transform: none !important;
}

.woocommerce ul.products li.product a.button.add_to_cart_button:hover::before,
.woocommerce ul.products li.product a.button.add_to_cart_button:focus-visible::before,
ul.products li.product a.button.add_to_cart_button:hover::before,
ul.products li.product a.button.add_to_cart_button:focus-visible::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2Zm10 0c-1.1 0-1.99.9-1.99 2S15.9 22 17 22s2-.9 2-2-.9-2-2-2ZM6.2 6h15.3c.5 0 .9.4.9.9 0 .1 0 .2-.1.3l-2.1 7.6c-.2.7-.8 1.2-1.6 1.2H8.1c-.8 0-1.4-.5-1.6-1.2L4.3 3H2.2c-.5 0-.9-.4-.9-.9s.4-.9.9-.9H5c.4 0 .8.3.9.7L6.2 6Zm1.2 8.2h11c.1 0 .2-.1.2-.2l1.7-6.2H6.7l.7 3.2.8 3.2c0 .1.1.2.2.2Z'/%3E%3C/svg%3E");
}

.woocommerce ul.products li.product .button.loading {
	opacity: 0.7;
	pointer-events: none;
}

.wc-block-checkout__contact-fields.wp-block-woocommerce-checkout-contact-information-block{
	margin: 0 !important;
}

.woocommerce ul.products li.product .button.add_to_cart_button {
	white-space: nowrap;
}

/* Hide WooCommerce "View cart" link shown after AJAX add-to-cart. */
.woocommerce ul.products li.product a.added_to_cart.wc-forward,
ul.products li.product a.added_to_cart.wc-forward {
	display: none !important;
}

/* Keep default Woo sale bubble aligned with theme palette. */
.woocommerce span.onsale {
	background-color: var(--pp-gold);
	border-radius: 0% !important;
}

/* Floating success tooltip displayed after AJAX add-to-cart. */
.pp-cart-success-tooltip {
	position: fixed;
	left: 0;
	top: 0;
	transform: translate(-50%, calc(-100% - 6px));
	opacity: 0;
	padding: 0.35rem 0.55rem;
	border-radius: 8px;
	background: #111116;
	color: #ffffff;
	font-family: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;
	font-size: 0.72rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: normal;
	text-transform: none;
	white-space: nowrap;
	pointer-events: none;
	box-shadow: 0 10px 18px rgba(17, 17, 22, 0.22);
	z-index: 99999;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.pp-cart-success-tooltip.pp-cart-success-tooltip--below {
	transform: translate(-50%, 6px);
}

.pp-cart-success-tooltip.is-visible {
	opacity: 1;
	transform: translate(-50%, -100%);
}

.pp-cart-success-tooltip.pp-cart-success-tooltip--below.is-visible {
	transform: translate(-50%, 0);
}

/* Sale badge: small gold label above price (keep <span class="onsale">). */
.woocommerce ul.products li.product .product-card-footer .onsale {
	position: static;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--pp-gold);
	color: #111116;
	border-radius: 10px;
	padding: 0.38rem 0.65rem;
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1;
	border: 1px solid rgba(0, 0, 0, 0.08);
	width: 100%;
	margin: 0;
	text-transform: uppercase;
}

.product-card-purchase {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.2rem;
}

.woocommerce .quantity .qty,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	background: #fff;
	color: #18181d;
	border: 1px solid var(--pp-border);
    border-radius: 30px;
    padding: 1rem;
	margin-left: 0.5rem;
}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger{
	display: none;
}

.single-product .woocommerce div.product {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
	gap: 2rem;
	padding: 1.5rem;
	border-radius: 16px;
}

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

.single-product .woocommerce div.product div.images {
	position: sticky;
	top: 108px;
	align-self: start;
	padding: 1rem;
	background: linear-gradient(180deg, #ffffff 0%, #f8f8fb 100%);
	border: 1px solid var(--pp-border);
	border-radius: 14px;
}

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

.single-product .flex-control-nav.flex-control-thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	margin-top: 0.85rem;
	padding: 0.2rem 0.1rem 0;
}

.single-product .flex-control-nav.flex-control-thumbs li {
	width: 80px !important;
	margin: 0 !important;
	margin-top: 0.5rem !important;
	aspect-ratio: 1800 / 2070;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid var(--pp-border);
	background: #fff;
}

.single-product .flex-control-nav.flex-control-thumbs li img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	display: block;
}
.woocommerce div.product .woocommerce-tabs .panel p{
	font-size: 1.2rem !important;
	font-style: normal !important;
	color: #070708 !important;
	line-height: 1.5;
	margin-top: 0.5rem;
}
.woocommerce div.product .woocommerce-tabs .panel span{
	font-size: 1.2rem !important;
	font-style: normal !important;
	color: #070708 !important;
	line-height: 1.5;
	margin-top: 0.5rem;
}

/* Hide WooCommerce fullscreen gallery trigger (magnifier CTA). */
.single-product .woocommerce div.product .woocommerce-product-gallery__trigger {
	display: none !important;
}

.single-product .woocommerce div.product .summary.entry-summary {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	padding-left: 1.4rem;
}

.single-product h1.product_title.entry-title {
	margin: 0;
	font-size: clamp(1.2rem, 1.8vw, 1.55rem) !important;
	line-height: 1.15;
	letter-spacing: -0.02em;
}
.single-product .woocommerce-product-details__short-description {
	font-style: italic !important;
	text-align: justify !important;
}
.single-product .woocommerce-product-details__short-description span{
	font-size: 0.9rem !important;
}
.single-product .woocommerce-product-details__short-description p{
	font-size: 0.9rem !important;
}
.single-product .pp-single-author {
	font-size: clamp(1.1rem, 2vw, 1.35rem);
	font-weight: 800;
	color: var(--pp-gold);
	line-height: 1.3;
	margin-top: 2px;
}

.single-product .pp-single-category {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.5rem;
	margin-top: -0.1rem;
}

.single-product .pp-single-category a {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.6rem;
	border-radius: 999px;
	background: rgba(198, 161, 91, 0.12);
	border: 1px solid rgba(198, 161, 91, 0.35);
	color: #7a5e2e;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.single-product .woocommerce-product-rating {
	margin-top: 0.2rem;
}

.single-product .pp-single-price-infos {
	margin-top: 0.25rem;
	margin-bottom: 1rem;
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
}

@media (min-width: 768px) {
	.single-product .pp-single-price-infos {
		display: flex;
		align-items: center;
		gap: 0.75rem;
	}
}

.single-product .pp-single-price-infos .price {
	margin: 0;
	font-size: clamp(1.4rem, 2.4vw, 2rem);
	font-weight: 800;
	line-height: 1.1;
	color: #111116;
}

.single-product .pp-single-price-infos .price del {
	color: var(--pp-muted);
	font-weight: 600;
}

.single-product .pp-single-price-infos .price ins {
	text-decoration: none;
	color: var(--pp-gold);
}

.single-product .pp-free-shipping-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	margin-top: 0.6rem;
	padding: 0.38rem 0.75rem;
	border-radius: 999px;
	background: linear-gradient(135deg, #c6a15b 0%, #e6cf8f 100%);
	color: #111116;
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	box-shadow: 0 2px 6px rgba(17, 17, 22, 0.12);
}

@media (min-width: 768px) {
	.single-product .pp-free-shipping-badge {
		margin-top: 0;
	}
}

.single-product .pp-free-shipping-badge__icon {
	width: 0.95rem;
	height: 0.95rem;
	fill: currentColor;
}

.single-product .woocommerce div.product form.cart {
	margin-top: 0.15rem;
	padding: 0.9rem;
	background: #ffffff;
	border: 1px solid var(--pp-border);
	border-radius: 12px;
	display: flex;
	align-items: center;
	gap: 0.8rem;
	flex-wrap: wrap;
}

.single-product .button.single_add_to_cart_button {
	min-height: 46px;
	border-radius: 999px;
	padding-inline: 1.6rem;
	font-size: 0.9rem;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	background: var(--pp-gold) !important;
	color: #111116 !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	flex: 1;
	min-width: 230px;
}

.single-product .single_add_to_cart_button.button.alt,
.single-product .button.single_add_to_cart_button.button.alt {
	background: var(--pp-gold) !important;
	background-color: var(--pp-gold) !important;
	border-color: var(--pp-gold) !important;
	color: #111116 !important;
}

.single-product .button.single_add_to_cart_button::before {
	content: "";
	width: 1.05em;
	height: 1.05em;
	display: inline-block;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23111116' d='M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2Zm10 0c-1.1 0-1.99.9-1.99 2S15.9 22 17 22s2-.9 2-2-.9-2-2-2ZM6.2 6h15.3c.5 0 .9.4.9.9 0 .1 0 .2-.1.3l-2.1 7.6c-.2.7-.8 1.2-1.6 1.2H8.1c-.8 0-1.4-.5-1.6-1.2L4.3 3H2.2c-.5 0-.9-.4-.9-.9s.4-.9.9-.9H5c.4 0 .8.3.9.7L6.2 6Zm1.2 8.2h11c.1 0 .2-.1.2-.2l1.7-6.2H6.7l.7 3.2.8 3.2c0 .1.1.2.2.2Z'/%3E%3C/svg%3E");
}

.single-product .button.single_add_to_cart_button.alt:hover,
.single-product .button.single_add_to_cart_button.alt:focus-visible {
	background: #111116 !important;
	color: #ffffff !important;
}

.single-product .button.single_add_to_cart_button:hover::before,
.single-product .button.single_add_to_cart_button:focus-visible::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2Zm10 0c-1.1 0-1.99.9-1.99 2S15.9 22 17 22s2-.9 2-2-.9-2-2-2ZM6.2 6h15.3c.5 0 .9.4.9.9 0 .1 0 .2-.1.3l-2.1 7.6c-.2.7-.8 1.2-1.6 1.2H8.1c-.8 0-1.4-.5-1.6-1.2L4.3 3H2.2c-.5 0-.9-.4-.9-.9s.4-.9.9-.9H5c.4 0 .8.3.9.7L6.2 6Zm1.2 8.2h11c.1 0 .2-.1.2-.2l1.7-6.2H6.7l.7 3.2.8 3.2c0 .1.1.2.2.2Z'/%3E%3C/svg%3E");
}

.single-product div.product .woocommerce-product-details__short-description {
	color: #111116 !important;
	font-size: 0.97rem;
}

.single-product .woocommerce div.product .woocommerce-product-details__short-description *,
.single-product .woocommerce div.product .woocommerce-product-details__short-description span,
.single-product .woocommerce div.product .woocommerce-product-details__short-description p,
.single-product .woocommerce div.product .woocommerce-product-details__short-description strong,
.single-product .woocommerce div.product .woocommerce-product-details__short-description em,
.single-product .woocommerce div.product .woocommerce-product-details__short-description a {
	color: #111116 !important;
}

.woocommerce .quantity.pp-quantity-enhanced {
	display: inline-flex;
	align-items: center;
	gap: 0;
	border: 1px solid var(--pp-border);
	border-radius: 999px;
	overflow: hidden;
	background: #ffffff;
	margin: 0;
}

.woocommerce .quantity.pp-quantity-enhanced .qty {
	width: 62px !important;
	height: 44px !important;
	min-height: 44px !important;
	border: 0 !important;
	border-left: 1px solid var(--pp-border) !important;
	border-right: 1px solid var(--pp-border) !important;
	border-radius: 0 !important;
	text-align: center !important;
	font-weight: 700 !important;
	color: #111116 !important;
	-webkit-text-fill-color: #111116 !important;
	background: #ffffff !important;
	opacity: 1 !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 44px !important;
	appearance: textfield;
	-moz-appearance: textfield;
}

.woocommerce .quantity.pp-quantity-enhanced .qty::-webkit-outer-spin-button,
.woocommerce .quantity.pp-quantity-enhanced .qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.woocommerce .quantity.pp-quantity-enhanced .pp-qty-button {
	width: 44px;
	height: 44px;
	border: 0;
	background: #f4f5f8;
	color: #111116;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
}

.woocommerce .quantity.pp-quantity-enhanced .pp-qty-button:hover {
	background: #111116;
	color: #ffffff;
}

.single-product .woocommerce div.product .stock,
.single-product .woocommerce div.product p.stock,
.single-product .woocommerce div.product .woocommerce-availability,
.single-product .woocommerce div.product .availability,
.single-product .woocommerce div.product .stock.in-stock,
.single-product .woocommerce div.product .stock.out-of-stock {
	display: none !important;
}

.single-product .pp-single-book-details {
	margin-top: 0.9rem;
	padding: 1rem 1.05rem;
	border: 1px solid rgba(198, 161, 91, 0.35);
	border-radius: 14px;
	background: linear-gradient(160deg, #fffdf8 0%, #f8f8fb 100%);
	box-shadow: 0 12px 24px rgba(17, 17, 22, 0.06);
}

.single-product .pp-single-book-details__title {
	margin: 0 0 0.85rem;
	font-size: 0.95rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #5f4926;
}

.single-product .pp-single-book-details__grid {
	margin: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
}

.single-product .pp-single-book-details__item {
	margin: 0;
	padding: 0.65rem 0.7rem;
	border: 1px solid rgba(198, 161, 91, 0.2);
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.85);
}

.single-product .pp-single-book-details__label {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #756b5a;
}

.single-product .pp-single-book-details__value {
	margin: 0.2rem 0 0;
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.35;
	color: #15151b;
}

.single-product .woocommerce div.product .woocommerce-tabs {
	grid-column: 1 / -1;
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid var(--pp-border);
}

div.product .related.products {
	grid-column: 1 / -1;
	clear: both;
	width: 100%;
}
.wc-block-components-totals-item__value{
	margin-left: 1px !important;
}

.single-post-page {
	padding-top: 0.75rem;
}

.single .single-post-layout {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
	overflow: visible;
}

.single-post-hero {
	background: linear-gradient(165deg, #111116 0%, #1b1b24 45%, #20202b 100%);
	border-radius: 20px;
	padding: clamp(1.2rem, 3vw, 2.4rem);
	color: #ffffff;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.4rem;
	box-shadow: 0 20px 40px rgba(10, 10, 24, 0.22);
}

.single-post-hero__inner {
	max-width: 66ch;
}

.single-post-hero__eyebrow {
	margin: 0 0 0.45rem;
	display: inline-flex;
	align-items: center;
	padding: 0.26rem 0.62rem;
	border-radius: 999px;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #121217;
	background: var(--pp-gold);
}

.single-post-hero__title {
	margin: 0;
	font-size: clamp(1.65rem, 3.7vw, 2.95rem);
	line-height: 1.12;
	letter-spacing: -0.02em;
}

.single-post-hero__meta {
	margin-top: 0.85rem;
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem;
	color: rgba(255, 255, 255, 0.82);
	font-size: 0.88rem;
	font-weight: 600;
}

.single-post-hero__media {
	margin: 0;
	border-radius: 14px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.16);
	background: rgba(255, 255, 255, 0.06);
}

.single-post-hero__image {
	display: block;
	width: 100%;
	height: auto;
	max-height: 520px;
	object-fit: cover;
}

.single-post-content-wrap {
	margin: clamp(1.2rem, 4vw, 2.4rem) auto 0;
	padding: clamp(1rem, 2.8vw, 2rem);
	background: #ffffff;
	border: 1px solid var(--pp-border);
	border-radius: 16px;
	box-shadow: 0 16px 36px rgba(14, 14, 30, 0.06);
}

.single-post-content {
	width: min(100%, 760px);
	margin-inline: auto;
	font-size: clamp(1rem, 1.05vw, 1.08rem);
	line-height: 1.8;
	color: #16161d;
}

.single-post-content > :first-child {
	margin-top: 0;
}

.single-post-content > :last-child {
	margin-bottom: 0;
}

.single-post-content h2,
.single-post-content h3,
.single-post-content h4 {
	line-height: 1.25;
	margin-top: 1.7em;
	margin-bottom: 0.65em;
	letter-spacing: -0.01em;
}

.single-post-content h2 {
	font-size: clamp(1.32rem, 2.2vw, 1.85rem);
}

.single-post-content h3 {
	font-size: clamp(1.15rem, 1.8vw, 1.45rem);
}

.single-post-content p,
.single-post-content ul,
.single-post-content ol,
.single-post-content blockquote {
	margin-top: 0;
	margin-bottom: 1.05em;
}

.single-post-content ul,
.single-post-content ol {
	padding-left: 1.2rem;
}

.single-post-content blockquote {
	padding: 0.95rem 1.1rem;
	border-left: 4px solid var(--pp-gold);
	background: #fcfaf4;
	border-radius: 8px;
	color: #2b2b32;
}

.single-post-content img {
	border-radius: 12px;
}

.site-footer {
	padding: 2rem 0 1.25rem;
	border-top: 1px solid var(--pp-border);
	color: #e9e9ef;
	background: #0f1017;
}

.site-footer__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem 1.5rem;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.site-footer__nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem 1.1rem;
}

.site-footer__nav a {
	color: #f4f4fa;
	font-weight: 600;
	font-size: 0.92rem;
	text-decoration: none;
	transition: color 0.2s ease, opacity 0.2s ease;
}

.site-footer__nav a:hover,
.site-footer__nav a:focus-visible {
	color: #f6c66a;
}

.site-footer__social {
	margin-left: auto;
	display: flex;
	justify-content: flex-end;
}

.site-footer__social .elementor-social-icons-wrapper {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
}

.site-footer__social .elementor-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 999px;
	background: #f6c66a;
	color: #14151d;
	transition: opacity 0.2s ease;
}

.site-footer__social .elementor-icon:hover,
.site-footer__social .elementor-icon:focus-visible {
	opacity: 0.88;
}

.site-footer__social .elementor-icon i {
	font-size: 1.05rem;
}

.site-footer__social .elementor-icon svg {
	width: 1rem;
	height: 1rem;
	fill: currentColor;
}

.site-footer__copyright {
	margin: 0;
	font-size: 0.86rem;
	letter-spacing: 0.01em;
	color: #b7b8c7;
}

@media (max-width: 1024px) {
	.archive-grid,
	ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	ul.products.columns-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.author-grid {
		grid-template-columns: 1fr;
	}

	.home-media-grid {
		grid-template-columns: 1fr;
	}

	.content-cards-grid--3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.home-reassurance__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.site-shipping-notice__inner {
		min-height: 36px;
		font-size: 0.82rem;
		gap: 0.35rem;
	}

	.site-header {
		top: 36px;
	}

	.header-inner {
		gap: 0.5rem;
	}

	.home-reassurance__grid {
		grid-template-columns: 1fr;
	}

	.menu-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 2.6rem;
		height: 2.6rem;
		padding: 0;
		border-radius: 999px;
		position: relative;
		margin-left: 0.35rem;
		margin-right: 0;
		border: 0;
		background: transparent;
		order: 3;
		flex: 0 0 auto;
	}

	.header-actions {
		order: 2;
		margin-left: auto;
		flex: 0 0 auto;
	}

	.header-cart-link {
		padding: 0.45rem 0.55rem;
		gap: 0.3rem;
		min-width: 2.5rem;
		justify-content: center;
	}

	.header-cart-link .cart-label {
		display: none;
	}

	.header-cart-link::before {
		content: "";
		width: 1.05rem;
		height: 1.05rem;
		display: inline-block;
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2Zm10 0c-1.1 0-1.99.9-1.99 2S15.9 22 17 22s2-.9 2-2-.9-2-2-2ZM6.2 6h15.3c.5 0 .9.4.9.9 0 .1 0 .2-.1.3l-2.1 7.6c-.2.7-.8 1.2-1.6 1.2H8.1c-.8 0-1.4-.5-1.6-1.2L4.3 3H2.2c-.5 0-.9-.4-.9-.9s.4-.9.9-.9H5c.4 0 .8.3.9.7L6.2 6Zm1.2 8.2h11c.1 0 .2-.1.2-.2l1.7-6.2H6.7l.7 3.2.8 3.2c0 .1.1.2.2.2Z'/%3E%3C/svg%3E");
	}

	.menu-toggle span {
		position: relative;
		display: block;
		width: 1.15rem;
		height: 2px;
		background: #fff;
		color: transparent;
		font-size: 0;
		line-height: 0;
	}

	.menu-toggle span::before,
	.menu-toggle span::after {
		content: "";
		position: absolute;
		left: 0;
		width: 1.15rem;
		height: 2px;
		background: #fff;
		transition: transform 0.2s ease, top 0.2s ease, bottom 0.2s ease, opacity 0.2s ease;
	}

	.menu-toggle span::before {
		top: -0.35rem;
	}

	.menu-toggle span::after {
		bottom: -0.35rem;
	}

	.menu-toggle[aria-expanded="true"] span {
		background: transparent;
	}

	.menu-toggle[aria-expanded="true"] span::before {
		top: 0;
		transform: rotate(45deg);
	}

	.menu-toggle[aria-expanded="true"] span::after {
		bottom: 0;
		transform: rotate(-45deg);
	}

	.main-navigation {
		position: fixed;
		top: 0;
		bottom: 0;
		right: 0;
		left: auto;
		width: min(86vw, 360px);
		max-width: 100vw;
		height: auto;
		min-height: 100svh;
		min-height: 100dvh;
		background: #0a0a0c;
		border-left: 1px solid #191920;
		padding: calc(0.8rem + env(safe-area-inset-top, 0px)) 1rem 1rem;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: stretch;
		gap: 1rem;
		overflow-y: auto;
		overflow-x: hidden;
		transform: translateX(100%);
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: transform 0.25s ease, opacity 0.2s ease, visibility 0.2s ease;
		z-index: 95;
	}

	.main-navigation.is-open {
		transform: translateX(0);
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.mobile-nav-backdrop {
		display: block;
		position: fixed;
		inset: 0;
		border: 0;
		padding: 0;
		background: rgba(5, 5, 8, 0.52);
		backdrop-filter: blur(1px);
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity 0.2s ease, visibility 0.2s ease;
		z-index: 90;
	}

	body.mobile-nav-open .mobile-nav-backdrop {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	body.mobile-nav-open {
		overflow: hidden;
	}

	.mobile-nav-header {
		display: grid;
		grid-template-columns: 1fr auto 1fr;
		align-items: center;
		padding-bottom: 0.9rem;
		border-bottom: 1px solid #1a1a22;
	}

	.mobile-nav-header__brand {
		grid-column: 2;
		justify-self: center;
	}

	.mobile-nav-header__brand .custom-logo-link,
	.mobile-nav-header__brand .site-title-link {
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	.mobile-nav-header__brand .custom-logo {
		max-height: 58px;
		width: auto;
	}

	.mobile-menu-close {
		display: inline-flex;
		grid-column: 3;
		justify-self: end;
		align-items: center;
		justify-content: center;
		width: 2.2rem;
		height: 2.2rem;
		border-radius: 999px;
		border: 1px solid #2d2d36;
		background: #13131a;
		color: #fff;
		font-size: 1.4rem;
		line-height: 1;
	}

	.main-navigation ul {
		flex-direction: column;
		gap: 0.35rem;
		justify-content: flex-start;
		align-items: stretch;
	}

	.main-navigation ul.sub-menu {
		position: static;
		min-width: 0;
		margin-top: 0.3rem;
		padding: 0.25rem 0 0.1rem 0.6rem;
		background: transparent;
		border: 0;
		border-left: 1px solid #24242b;
		border-radius: 0;
		box-shadow: none;
		opacity: 1;
		transform: none;
		pointer-events: auto;
		visibility: visible;
		display: none;
	}

	.main-navigation .menu-item-has-children.submenu-open > ul.sub-menu {
		display: flex;
	}

	.main-navigation ul.sub-menu a {
		padding: 0.5rem 0.7rem;
		font-size: 0.88rem;
		white-space: normal;
	}

	.main-navigation .current-menu-item > a,
	.main-navigation .current-menu-ancestor > a,
	.main-navigation .current_page_item > a,
	.main-navigation .current_page_ancestor > a {
		box-shadow: none;
	}

	.header-actions {
		margin-left: auto;
		gap: 0.35rem;
	}

	.archive-grid,
	ul.products,
	.woocommerce ul.products,
	.woocommerce-page ul.products,
	.related ul.products,
	.upsells ul.products,
	.cross-sells ul.products {
		grid-template-columns: 1fr;
	}

	ul.products[class*="columns-"],
	.woocommerce ul.products[class*="columns-"],
	.woocommerce-page ul.products[class*="columns-"] {
		grid-template-columns: 1fr !important;
	}

	.woocommerce-account .woocommerce {
		display: block !important;
		grid-template-columns: 1fr !important;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		margin-top: 0.85rem !important;
	}

	.pp-account-dashboard__grid {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .woocommerce .col2-set,
	.woocommerce-account .woocommerce .u-columns,
	.woocommerce-account .woocommerce .woocommerce-Addresses {
		display: block !important;
	}

	.woocommerce-account .woocommerce .col2-set .col-1,
	.woocommerce-account .woocommerce .col2-set .col-2,
	.woocommerce-account .woocommerce .u-column1,
	.woocommerce-account .woocommerce .u-column2,
	.woocommerce-account .woocommerce .woocommerce-Address {
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 0 0.85rem 0 !important;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul {
		padding: 0.4rem;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
		padding: 0.65rem 0.75rem;
	}

	.product-card-media {
		aspect-ratio: 593 / 840;
	}

	.product-card-footer {
		flex-direction: column;
		align-items: stretch;
	}

	.woocommerce ul.products li.product .button {
		width: 100%;
		justify-content: center;
		text-align: center;
	}

	.home-slide {
		grid-template-columns: 1fr;
	}

	.single-product .woocommerce div.product {
		grid-template-columns: 1fr;
	}

	.single-product .woocommerce div.product div.images {
		position: static;
		top: auto;
	}

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

	.single-post-hero {
		border-radius: 16px;
	}

	.single-post-content-wrap {
		padding: 1rem;
		border-radius: 12px;
	}

	.single-post-content {
		width: 100%;
	}

	body.page:not(.woocommerce-page) .entry-content input[type="submit"],
	body.page:not(.woocommerce-page) .entry-content .wpcf7-submit {
		width: 100%;
		justify-self: stretch;
		text-align: center;
	}

	.single-product .woocommerce div.product form.cart {
		gap: 0.65rem;
	}

	.single-product .woocommerce div.product form.cart .button.single_add_to_cart_button {
		width: 100%;
		min-width: 0;
		margin-top: 0.35rem;
	}

	.single-product .single_add_to_cart_button.button.alt,
	.single-product .button.single_add_to_cart_button.button.alt {
		margin-top: 0.35rem !important;
	}

	.single-product .woocommerce div.product .flex-control-nav.flex-control-thumbs li {
		width: 62px;
	}

	.single-product .pp-single-book-details__grid {
		grid-template-columns: 1fr;
	}

	.home-slide-content {
		padding: 1.2rem;
	}

	.section-header {
		flex-direction: column;
		align-items: flex-start;
	}

	.home-media-list {
		max-height: 420px;
	}

	.home-media-list a {
		grid-template-columns: 100px 1fr;
	}

	.content-cards-grid--3 {
		grid-template-columns: 1fr;
	}

	.site-footer__top {
		flex-direction: column;
		align-items: flex-start;
	}

	.site-footer__social {
		margin-left: 0;
		justify-content: flex-start;
	}

	.site-footer__social .elementor-social-icons-wrapper {
		justify-content: flex-start;
		flex-wrap: wrap;
	}

	.site-search-overlay__close {
		top: -2.7rem;
		right: 0.1rem;
	}

	.site-search-overlay__panel {
		width: min(100%, 680px);
	}

	.site-search-overlay__input {
		height: 60px;
		padding: 0 1.15rem;
	}
}
