/* ============================================================
   Coats Jewelers - Custom Widget CSS
   Paste this entire file into Punchmark Site Manager under
   Design or Theme Settings > Global CSS. Do NOT paste into the
   page editor.

   Palette: Heirloom Vault (client-supplied)
   #FBF8F3 Warm ivory (background)      #A67840 Antique gold (primary, large/decorative only)
   #E3D2B0 Champagne (secondary)        #2A2724 Primary text (body)
   #7A5729 Secondary text (headings / text-safe gold - use for small text or filled buttons)

   Fonts: Aktiv Grotesk (headings), Acumin Pro (paragraph), Bickham Script Pro 3 (accent/kicker,
   never below 22px).
   ============================================================ */

.coats-jm-page {
	background-color: #FBF8F3;
	color: #2A2724;
	font-family: "Acumin Pro", sans-serif;
}

.coats-jm-page .container {
	max-width: 1140px;
}

/* ---------- Typography ---------- */

.coats-jm-page .jm-kicker {
	font-family: "Bickham Script Pro 3", cursive;
	font-size: 28px;
	color: #A67840;
	margin-bottom: 0.25rem;
}

.coats-jm-page .jm-h1 {
	font-family: "Aktiv Grotesk", sans-serif;
	font-weight: 700;
	font-size: clamp(2rem, 4vw, 3rem);
	color: #7A5729;
	line-height: 1.15;
	margin-bottom: 1rem;
}

.coats-jm-page .jm-h2 {
	font-family: "Aktiv Grotesk", sans-serif;
	font-weight: 700;
	font-size: clamp(1.5rem, 3vw, 2.25rem);
	color: #7A5729;
	margin-bottom: 0.75rem;
}

.coats-jm-page .jm-h3 {
	font-family: "Aktiv Grotesk", sans-serif;
	font-weight: 700;
	font-size: 1.15rem;
	color: #2A2724;
	margin-bottom: 0.5rem;
}

.coats-jm-page .jm-lead {
	font-size: 1.15rem;
	color: #2A2724;
	max-width: 640px;
	margin: 0 auto 1.75rem;
}

.coats-jm-page .jm-section-lead {
	font-size: 1.05rem;
	color: #2A2724;
	max-width: 640px;
	margin: 0 auto;
}

/* ---------- Sections ---------- */

.coats-jm-page .jm-hero {
	padding: 5rem 0 4rem;
}

.coats-jm-page .jm-section {
	padding: 4rem 0;
}

.coats-jm-page .jm-section-alt {
	background-color: #E3D2B0;
}

.coats-jm-page .jm-closing {
	background-color: #FBF8F3;
}

/* ---------- Buttons ---------- */

.coats-jm-page .btn {
	font-family: "Aktiv Grotesk", sans-serif;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	font-size: 0.85rem;
	padding: 0.85rem 1.75rem;
	border-radius: 2px;
	border: 2px solid transparent;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.coats-jm-page .jm-btn-primary {
	background-color: #7A5729;
	color: #FFFFFF;
	border-color: #7A5729;
}

.coats-jm-page .jm-btn-primary:hover {
	background-color: #5f4520;
	border-color: #5f4520;
	color: #FFFFFF;
}

.coats-jm-page .jm-btn-outline {
	background-color: transparent;
	color: #7A5729;
	border-color: #7A5729;
}

.coats-jm-page .jm-btn-outline:hover {
	background-color: #7A5729;
	color: #FFFFFF;
}

.coats-jm-page .jm-hero-ctas {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: center;
}

.coats-jm-page .jm-closing-ctas {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	justify-content: center;
	margin: 1.5rem 0 1.5rem;
}

.coats-jm-page .jm-closing-appt {
	margin-top: 0.5rem;
}

/* ---------- Cards ---------- */

.coats-jm-page .jm-card {
	background-color: #FBF8F3;
	border: 1px solid #E3D2B0;
	border-radius: 6px;
	padding: 2rem 1.5rem;
	height: 100%;
	text-align: center;
}

.coats-jm-page .jm-card-icon {
	color: #A67840;
	font-size: 1.5rem;
	margin-bottom: 0.75rem;
}

/* ---------- Steps ---------- */

.coats-jm-page .jm-step {
	text-align: center;
	padding: 0 1rem;
}

.coats-jm-page .jm-step-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background-color: #7A5729;
	color: #FFFFFF;
	font-family: "Aktiv Grotesk", sans-serif;
	font-weight: 700;
	font-size: 1.25rem;
	margin-bottom: 1rem;
}

/* ---------- Trust bar ---------- */

.coats-jm-page .jm-trust-bar {
	background-color: #2A2724;
	padding: 3rem 0;
}

.coats-jm-page .jm-trust-stat {
	font-family: "Aktiv Grotesk", sans-serif;
	font-weight: 700;
	font-size: 1.5rem;
	color: #E3D2B0;
	margin-bottom: 0.25rem;
}

.coats-jm-page .jm-trust-label {
	color: #FBF8F3;
	font-size: 0.95rem;
	margin-bottom: 0;
}

/* ---------- Responsive ---------- */

@media (max-width: 767px) {
	.coats-jm-page .jm-hero {
		padding: 3rem 0 2.5rem;
	}
	.coats-jm-page .jm-section {
		padding: 2.5rem 0;
	}
}

/* ---------- Montage Jewelry Care page: covered list ---------- */

.coats-jm-page .jm-covered-list {
	list-style: none;
	padding-left: 0;
	margin-bottom: 0;
}

.coats-jm-page .jm-covered-list li {
	position: relative;
	padding-left: 1.75rem;
	margin-bottom: 0.75rem;
	color: #2A2724;
}

.coats-jm-page .jm-covered-list li::before {
	content: "\2713";
	position: absolute;
	left: 0;
	top: 0;
	color: #A67840;
	font-weight: 700;
}

.coats-jm-page .jm-covered-card {
	background-color: #FBF8F3;
	border: 1px solid #E3D2B0;
	border-radius: 6px;
	padding: 2rem;
	height: 100%;
}

/* ---------- Montage Jewelry Care page: FAQ accordion ---------- */

.coats-jm-page .jm-faq {
	max-width: 800px;
	margin: 0 auto;
}

.coats-jm-page .jm-faq .accordion-item {
	background-color: transparent;
	border: none;
	border-bottom: 1px solid #E3D2B0;
	border-radius: 0;
}

.coats-jm-page .jm-faq .accordion-item:last-child {
	border-bottom: none;
}

.coats-jm-page .jm-faq .accordion-button {
	background-color: transparent;
	color: #7A5729;
	font-family: "Aktiv Grotesk", sans-serif;
	font-weight: 700;
	font-size: 1.05rem;
	padding: 1.25rem 0.5rem;
	box-shadow: none;
}

.coats-jm-page .jm-faq .accordion-button:not(.collapsed) {
	background-color: transparent;
	color: #7A5729;
	box-shadow: none;
}

.coats-jm-page .jm-faq .accordion-button:focus {
	box-shadow: none;
	border-color: transparent;
}

.coats-jm-page .jm-faq .accordion-button::after {
	filter: sepia(45%) saturate(600%) hue-rotate(2deg) brightness(85%);
}

.coats-jm-page .jm-faq .accordion-body {
	padding: 0 0.5rem 1.5rem;
	color: #2A2724;
	font-size: 0.98rem;
}
