/* =========================================================
   Sensual Moments — About & Contact pages
   Contact's form is a REAL live Contact Form 7 form (CF7 +
   Flamingo both active) — restyled here, not faked.
   ========================================================= */

/* About: same duplicate-H1 fix as Sizing Guide - deleted the redundant
   custom H1 block from the page content and renamed the real
   WordPress title to match ("About Sensual Moments"). .entry-title is
   now the one true H1. Unlike Sizing Guide's centered hero, About's
   hero is a real two-column layout (text left, photo right), so the
   title stays left-aligned and matches the hero's own grid width/
   padding instead of being centered. */
body.page-id-60 .inside-article { padding-top: 0 !important; }
body.page-id-60 .entry-title {
	max-width: 1400px;
	margin: 0 auto !important;
	padding: clamp(50px, 6vw, 76px) 64px 0 !important;
}
body.page-id-60 .sm-lp-hero { padding-top: 0 !important; }
/* Same Gutenberg default-padding bug as Sizing Guide (40px top+bottom
   on every auto-generated .wp-block-group__inner-container) - here it
   was stacking a large dead gap between "Our Story" and the
   Confidence/Every mood/Curated collections/Discreet service row.
   Every sm-* section on this page already sets its own real padding
   on the outer block, so the default inner-container padding is
   always redundant here, not just for this one section. */
body.page-id-60 .entry-content .is-layout-constrained,
body.page-id-60 .entry-content .is-layout-flow {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

/* Contact: same real fix, verified against this page's own content -
   duplicate H1 block deleted, real title renamed to "Contact Sensual
   Moments", nav labels reset to "Contact" (menu items had no custom
   label, so they were pulling the live page title same as About).
   Same two-column hero layout as About, same left-aligned treatment. */
body.page-id-62 .inside-article { padding-top: 0 !important; }
body.page-id-62 .entry-title {
	max-width: 1400px;
	margin: 0 auto !important;
	padding: clamp(50px, 6vw, 76px) 64px 0 !important;
}
body.page-id-62 .sm-lp-hero { padding-top: 0 !important; }
body.page-id-62 .entry-content .is-layout-constrained,
body.page-id-62 .entry-content .is-layout-flow {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

/* Extra shared .sm-lp-* section variants not already covered
   in sm-info-pages.css */
.sm-lp-intro, .sm-lp-soft-section, .sm-lp-blush-section {
	background: var(--sm-cream) !important;
	padding: clamp(58px, 6vw, 90px) 64px !important;
	position: relative;
}
.sm-lp-shop-section { background: var(--sm-champagne) !important; padding: clamp(58px, 6vw, 90px) 64px !important; }

/* ---------------------------------------------------------
   About (sm-info-*)
   --------------------------------------------------------- */

.sm-info-page .sm-info-story-panel {
	padding: clamp(30px, 4vw, 52px) !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
	box-shadow: none;
}
.sm-info-page .sm-info-story-panel p,
.sm-info-page .sm-info-copy p {
	color: var(--sm-text);
	font-family: 'Jost', sans-serif;
	font-size: 16px;
	line-height: 1.75;
}
/* Value cards live inside .sm-lp-dark-section, now a light champagne
   section - real white card, matching the established light-card
   pattern used everywhere else (.sm-mood-card / .sm-info-unique-card). */
.sm-info-page .sm-info-value-card {
	padding: clamp(26px, 3vw, 38px) !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
	box-shadow: none;
}
.sm-info-page .sm-info-value-card::before { display: none; }
.sm-info-page .sm-info-value-card h3 { color: var(--sm-deep) !important; font-family: 'Playfair Display', Georgia, serif; font-weight: 500; }
.sm-info-page .sm-info-value-card p { color: var(--sm-text) !important; font-family: 'Jost', sans-serif; }

/* Unique/pathway cards live inside .sm-lp-shop-section (light champagne
   background) - real white card, dark text, matching .sm-mood-card /
   .sm-small-card's established light-card pattern elsewhere. */
.sm-info-page .sm-info-unique-card {
	padding: clamp(26px, 3vw, 38px) !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
	box-shadow: none;
}
.sm-info-page .sm-info-unique-card::before { display: none; }
.sm-info-page .sm-info-unique-card h3 { color: var(--sm-deep) !important; font-family: 'Playfair Display', Georgia, serif; font-weight: 500; }
.sm-info-page .sm-info-unique-card p { color: var(--sm-text) !important; font-family: 'Jost', sans-serif; }

.sm-info-page .sm-info-promise-card {
	max-width: 700px !important;
	padding: clamp(34px, 5vw, 60px) !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
	box-shadow: none;
	text-align: center;
}
.sm-info-page .sm-info-signature-name {
	font-family: 'Parisienne', cursive !important;
	font-size: clamp(34px, 3.6vw, 48px) !important;
	font-style: normal;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	color: var(--sm-primary) !important;
}
.sm-info-page .sm-info-signature-role {
	font-family: 'Jost', sans-serif !important;
	font-size: 12px !important;
	letter-spacing: 2px !important;
	color: var(--sm-muted) !important;
}

/* ---------------------------------------------------------
   Contact — real Contact Form 7 form (sm-contact-form)
   --------------------------------------------------------- */

.sm-contact-form {
	max-width: 760px;
	margin: 0 auto;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}
.sm-contact-form__intro h2, .sm-contact-form__intro h3 {
	color: var(--sm-deep);
	font-family: 'Playfair Display', Georgia, serif;
	font-weight: 500;
}
.sm-contact-form__intro p { color: var(--sm-muted); font-family: 'Jost', sans-serif; }
.sm-contact-field {
	color: var(--sm-deep);
	font-family: 'Jost', sans-serif;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.sm-contact-field input[type="text"],
.sm-contact-field input[type="email"],
.sm-contact-field textarea {
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
	box-shadow: none;
	font-family: 'Jost', sans-serif;
	color: var(--sm-text);
}
.sm-contact-field input:focus, .sm-contact-field textarea:focus {
	border-color: var(--sm-primary);
	box-shadow: none;
	background: var(--sm-white);
}
.sm-contact-form input[type="submit"], .sm-contact-form .wpcf7-submit {
	border-radius: 999px !important;
	background: var(--sm-primary) !important;
	box-shadow: none;
	font-family: 'Jost', sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 1.5px;
	text-transform: uppercase;
}
.sm-contact-form .wpcf7-not-valid-tip { color: #9f2344; font-family: 'Jost', sans-serif; }
.sm-contact-form .wpcf7 form .wpcf7-response-output {
	border: 1px solid var(--sm-border) !important;
	border-radius: 0 !important;
	background: var(--sm-blush) !important;
	color: var(--sm-deep) !important;
	font-family: 'Jost', sans-serif;
}

.sm-contact-page .sm-contact-hero-card {
	padding: clamp(28px, 4vw, 46px) !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
	box-shadow: none;
	color: var(--sm-text);
}
.sm-contact-page .sm-contact-hero-card::before { display: none; }
.sm-contact-page .sm-contact-hero-card h2, .sm-contact-page .sm-contact-hero-card h3 {
	color: var(--sm-deep) !important; font-family: 'Playfair Display', Georgia, serif; font-weight: 500;
}
.sm-contact-page .sm-contact-hero-card p, .sm-contact-page .sm-contact-hero-card li {
	color: var(--sm-text) !important; font-family: 'Jost', sans-serif;
}

.sm-contact-page .sm-contact-info-panel,
.sm-contact-page .sm-contact-form-panel {
	padding: clamp(28px, 4vw, 48px) !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
	box-shadow: none;
}
.sm-contact-page .sm-contact-info-panel p, .sm-contact-page .sm-contact-form-panel p {
	color: var(--sm-text); font-family: 'Jost', sans-serif; line-height: 1.75;
}
.sm-contact-page .sm-contact-checklist { list-style: none; padding: 0; margin: 20px 0 0 !important; }
.sm-contact-page .sm-contact-checklist li {
	position: relative;
	padding: 12px 16px 12px 30px !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-cream);
	color: var(--sm-text);
	font-family: 'Jost', sans-serif;
	font-size: 14px;
}
.sm-contact-page .sm-contact-checklist li::before {
	content: ""; position: absolute; left: 14px; top: 18px;
	width: 6px; height: 6px; border-radius: 50%; background: var(--sm-primary); box-shadow: none;
}
.sm-contact-page .sm-contact-form-panel { background: var(--sm-blush); }
.sm-contact-page .sm-contact-helper-card {
	padding: clamp(24px, 3vw, 34px) !important;
	border: 1px solid var(--sm-border);
	border-radius: 0;
	background: var(--sm-white);
	box-shadow: none;
}
.sm-contact-page .sm-contact-helper-card h3 { font-family: 'Playfair Display', Georgia, serif; font-weight: 500; }
.sm-contact-page .sm-contact-helper-card p { color: var(--sm-text); font-family: 'Jost', sans-serif; }

@media (max-width: 900px) {
	.sm-lp-intro, .sm-lp-soft-section, .sm-lp-blush-section, .sm-lp-shop-section {
		padding-left: 24px !important;
		padding-right: 24px !important;
	}
}
