/* =========================================================
   Sensual Moments — Info/Landing page shared system + page-
   specific sections. Targets the real sm-lp-*/sm-info-*
   classes already saved across Discreet Packaging, Gift
   Options, and (as a shared base) the 9 landing pages.
   ========================================================= */

/* ---------------------------------------------------------
   Shared info/landing-page base (sm-lp-*)
   --------------------------------------------------------- */

.sm-lp-section { padding: clamp(64px, 7vw, 100px) 64px; }
.sm-lp-hero {
	padding: clamp(60px, 6vw, 90px) 64px !important;
	background: var(--sm-champagne) !important;
	color: var(--sm-text);
}
.sm-lp-hero-grid { max-width: 1400px; margin: 0 auto !important; gap: clamp(34px, 5vw, 68px) !important; }
.sm-lp-eyebrow {
	color: var(--sm-primary) !important;
	font-family: 'Jost', sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 3px;
	text-transform: uppercase;
}
.sm-lp-title, .sm-lp-title.sm-lp-title {
	color: var(--sm-deep) !important;
	font-family: 'Playfair Display', Georgia, serif !important;
	font-size: clamp(36px, 4.5vw, 52px) !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	line-height: 1.1 !important;
}
.sm-lp-lead {
	color: var(--sm-muted) !important;
	font-family: 'Jost', sans-serif;
	font-size: 16px;
	line-height: 1.65;
}
.sm-lp-actions .wp-block-button__link {
	border-radius: 999px !important;
	background: var(--sm-primary) !important;
	box-shadow: none !important;
}
.sm-lp-btn-secondary .wp-block-button__link {
	background: transparent !important;
	border: 1px solid var(--sm-text) !important;
	color: var(--sm-text) !important;
}
.sm-lp-image-card {
	max-width: 410px !important;
	transform: none !important;
	padding: 10px;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
}
.sm-lp-feature-image img { border-radius: 0 !important; box-shadow: none !important; }

.sm-lp-proof-row { padding: 0 64px; max-width: 1400px; margin: 0 auto; }
/* Same Gutenberg default-padding bug fixed elsewhere on About/Sizing
   Guide (40px top+bottom on the auto-generated inner-container) - here
   it was stacking a large dead gap between the hero and this row on
   every page that reuses .sm-lp-proof-row (Discreet Packaging, Gift
   Options, Returns, Shipping, Privacy, Terms), since the row itself
   sets no vertical padding by design. Fixed at the shared component
   level rather than per-page, since this is one real reused class. */
.sm-lp-proof-row .is-layout-constrained,
.sm-lp-proof-row .is-layout-flow {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
.sm-lp-proof-grid { gap: 20px !important; }
/* Real bordered cards, matching the established .sm-info-value-card /
   .sm-mood-card white-card pattern used everywhere else on the site -
   this row had no box styling at all, just floating text. */
.sm-lp-proof-grid > .wp-block-column {
	background: var(--sm-white);
	border: 1px solid var(--sm-border);
	padding: 28px;
}
.sm-lp-proof-grid h3 { font-family: 'Playfair Display', Georgia, serif; font-weight: 500; font-size: 17px; color: var(--sm-deep); }
.sm-lp-proof-grid p { color: var(--sm-text); font-family: 'Jost', sans-serif; font-size: 13px; }

.sm-lp-section-lead { color: var(--sm-text); font-family: 'Jost', sans-serif; font-size: 15px; line-height: 1.7; }
.sm-lp-dark-section { background: var(--sm-champagne) !important; color: var(--sm-text); }
.sm-lp-dark-section h1, .sm-lp-dark-section h2, .sm-lp-dark-section h3, .sm-lp-dark-section h4 { color: var(--sm-deep) !important; }
.sm-lp-dark-section .sm-lp-section-lead { color: var(--sm-muted) !important; }
.sm-info-value-card h3, .sm-info-value-card p { color: inherit; }
.sm-lp-dark-section .sm-info-value-card h3, .sm-lp-dark-section .sm-info-value-card p { color: var(--sm-deep) !important; }
.sm-lp-dark-section .sm-info-value-card p { color: var(--sm-text) !important; }

.sm-lp-faq-section { background: var(--sm-champagne) !important; padding: clamp(58px, 6vw, 88px) 64px !important; }
.sm-lp-faq-section > h2 { max-width: 940px; margin: 0 auto 34px !important; text-align: center !important; }
.sm-lp-faq-section .wp-block-rank-math-faq-block,
.sm-lp-faq-section .rank-math-block {
	display: grid !important;
	gap: 0 !important;
	max-width: 940px !important;
	margin: 0 auto !important;
}
.sm-lp-faq-section .rank-math-faq-item {
	border: 0 !important;
	border-top: 1px solid var(--sm-border) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	padding: 26px 0 !important;
}
.sm-lp-faq-section .rank-math-faq-item::before { display: none !important; }
.sm-lp-faq-section .rank-math-question {
	font-family: 'Playfair Display', Georgia, serif !important;
	font-size: 17px !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	color: var(--sm-deep) !important;
	margin: 0 0 10px !important;
}
.sm-lp-faq-section .rank-math-answer {
	font-family: 'Jost', sans-serif !important;
	font-size: 15px !important;
	color: var(--sm-text) !important;
}

.sm-lp-final-section {
	background: var(--sm-champagne) !important;
	color: var(--sm-text) !important;
	padding: clamp(72px, 7vw, 112px) 64px !important;
}
.sm-lp-final-section::before { display: none !important; }
.sm-info-promise-card {
	max-width: 700px !important;
	margin: 0 auto;
	padding: clamp(34px, 5vw, 64px) !important;
	border: 1px solid var(--sm-border);
	background: var(--sm-white) !important;
	box-shadow: none !important;
	text-align: center;
}
.sm-info-promise-card h2, .sm-info-promise-card p { color: var(--sm-deep) !important; }
.sm-info-promise-card p { color: var(--sm-text) !important; font-family: 'Jost', sans-serif; }

.sm-info-kicker {
	color: var(--sm-primary);
	font-family: 'Jost', sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 3px;
	text-transform: uppercase;
}

/* ---------------------------------------------------------
   Discreet Packaging page (sm-discreet-*)
   --------------------------------------------------------- */

.sm-discreet-page .sm-discreet-intro,
.sm-discreet-page .sm-discreet-parcel-section,
.sm-discreet-page .sm-discreet-soft-section {
	background: var(--sm-cream) !important;
	padding: clamp(58px, 6vw, 90px) 64px !important;
}
.sm-discreet-page .sm-discreet-story-grid { gap: clamp(26px, 4vw, 54px) !important; }
.sm-discreet-page .sm-discreet-copy-panel,
.sm-discreet-page .sm-discreet-privacy-panel {
	padding: clamp(28px, 4vw, 48px) !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white) !important;
	box-shadow: none !important;
}
.sm-discreet-page .sm-discreet-copy-panel p,
.sm-discreet-page .sm-discreet-privacy-panel p {
	color: var(--sm-text); font-family: 'Jost', sans-serif; font-size: 15px; line-height: 1.7;
}
.sm-discreet-page .sm-discreet-privacy-list { list-style: none; padding: 0; margin: 20px 0 0 !important; }
.sm-discreet-page .sm-discreet-privacy-list li {
	position: relative;
	padding: 12px 16px 12px 30px !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
	color: var(--sm-text);
	font-family: 'Jost', sans-serif;
	font-size: 14px;
}
.sm-discreet-page .sm-discreet-privacy-list li::before {
	content: ""; position: absolute; left: 14px; top: 18px;
	width: 6px; height: 6px; border-radius: 50%; background: var(--sm-primary);
	box-shadow: none;
}
.sm-discreet-page .sm-discreet-card-grid { gap: 20px !important; }
.sm-discreet-page .sm-discreet-card {
	padding: clamp(24px, 3vw, 34px) !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
	box-shadow: none;
}
.sm-discreet-page .sm-discreet-card h3 { font-family: 'Playfair Display', Georgia, serif; font-weight: 500; }
.sm-discreet-page .sm-discreet-card p { color: var(--sm-text); font-family: 'Jost', sans-serif; font-size: 15px; }

/* ---------------------------------------------------------
   Gift Options page (sm-gift-*)
   --------------------------------------------------------- */

.sm-gift-page .sm-gift-intro,
.sm-gift-page .sm-gift-choose-section,
.sm-gift-page .sm-gift-sizing-section,
.sm-gift-page .sm-gift-returns-section,
.sm-gift-page .sm-gift-privacy-section,
.sm-gift-page .sm-gift-occasion-section {
	background: var(--sm-cream) !important;
	padding: clamp(58px, 6vw, 90px) 64px !important;
}
.sm-gift-page .sm-gift-style-section {
	background: var(--sm-champagne) !important;
	color: var(--sm-text) !important;
	padding: clamp(66px, 6.4vw, 100px) 64px !important;
}
.sm-gift-page .sm-gift-style-section h2,
.sm-gift-page .sm-gift-style-section h3 { color: var(--sm-deep) !important; }
.sm-gift-page .sm-gift-style-section p,
.sm-gift-page .sm-gift-style-section li,
.sm-gift-page .sm-gift-style-section a { color: var(--sm-text) !important; }

.sm-gift-page .sm-gift-copy-panel,
.sm-gift-page .sm-gift-tip-panel,
.sm-gift-page .sm-gift-return-panel {
	padding: clamp(28px, 4vw, 48px) !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
	box-shadow: none;
}
.sm-gift-page .sm-gift-tip-panel::before,
.sm-gift-page .sm-gift-copy-panel::before,
.sm-gift-page .sm-gift-return-panel::before { display: none; }
.sm-gift-page .sm-gift-card-grid,
.sm-gift-page .sm-gift-occasion-grid,
.sm-gift-page .sm-gift-check-grid { gap: 20px !important; }
.sm-gift-page .sm-gift-card,
.sm-gift-page .sm-gift-occasion-card,
.sm-gift-page .sm-gift-check-card {
	padding: clamp(22px, 2.7vw, 32px) !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
	box-shadow: none;
}
.sm-gift-page .sm-gift-card::before,
.sm-gift-page .sm-gift-occasion-card::before,
.sm-gift-page .sm-gift-check-card::before { display: none; }
.sm-gift-page .sm-gift-card h3, .sm-gift-page .sm-gift-occasion-card h3, .sm-gift-page .sm-gift-check-card h3 {
	font-family: 'Playfair Display', Georgia, serif; font-weight: 500;
}
.sm-gift-page .sm-gift-card p, .sm-gift-page .sm-gift-occasion-card p, .sm-gift-page .sm-gift-check-card p,
.sm-gift-page .sm-gift-copy-panel p, .sm-gift-page .sm-gift-tip-panel p, .sm-gift-page .sm-gift-return-panel p {
	color: var(--sm-text); font-family: 'Jost', sans-serif; font-size: 15px; line-height: 1.7;
}
.sm-gift-page .sm-gift-link-list { list-style: none; padding: 0; }
.sm-gift-page .sm-gift-link-list li {
	position: relative;
	padding: 13px 16px 13px 30px !important;
	margin-bottom: 10px !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
}
.sm-gift-page .sm-gift-link-list li::before {
	content: ""; position: absolute; left: 14px; top: 20px;
	width: 6px; height: 6px; border-radius: 50%; background: var(--sm-primary);
	box-shadow: none;
}

@media (max-width: 900px) {
	.sm-lp-hero, .sm-lp-section, .sm-lp-proof-row, .sm-lp-faq-section, .sm-lp-final-section,
	.sm-discreet-page .sm-discreet-intro, .sm-discreet-page .sm-discreet-parcel-section, .sm-discreet-page .sm-discreet-soft-section,
	.sm-gift-page .sm-gift-intro, .sm-gift-page .sm-gift-choose-section, .sm-gift-page .sm-gift-sizing-section,
	.sm-gift-page .sm-gift-returns-section, .sm-gift-page .sm-gift-privacy-section, .sm-gift-page .sm-gift-occasion-section,
	.sm-gift-page .sm-gift-style-section {
		padding-left: 24px !important;
		padding-right: 24px !important;
	}
}
