.editorial-page {
	--editorial-ink: #302829;
	--editorial-muted: #6f6663;
	--editorial-accent: #823a90;
	--editorial-accent-dark: #5f286a;
	--editorial-gold: #c39a5b;
	--editorial-paper: #fbf8f3;
	color: var(--editorial-ink);
	font-family: "Cardo", Georgia, serif;
	font-size: 17px;
	line-height: 1.8;
	padding: 76px 0 96px;
}
.editorial-page .container { max-width: 1120px; }
.editorial-page h1, .editorial-page h2, .editorial-page h3 { color: var(--editorial-ink); font-family: "Cardo", Georgia, serif; font-weight: 700; line-height: 1.25; }
.editorial-page h1 { font-size: clamp(36px, 5vw, 58px); margin: 0 0 26px; max-width: 850px; }
.editorial-page h2 { font-size: clamp(27px, 3vw, 36px); margin: 0; }
.editorial-page h3 { font-size: 22px; margin: 0 0 14px; }
.editorial-page p { color: var(--editorial-muted); margin: 0 0 18px; }
.editorial-page a:not(.editorial-button) { color: var(--editorial-accent); text-decoration: underline; text-decoration-color: rgba(130,58,144,.35); text-underline-offset: 3px; }
.editorial-page a:not(.editorial-button):hover { color: var(--editorial-accent-dark); text-decoration-color: currentColor; }
.editorial-intro { border-bottom: 1px solid #e8ddd1; margin: 0 auto 66px; max-width: 900px; padding: 0 0 52px; }
.editorial-kicker { color: var(--editorial-gold); display: inline-block; font-family: Arial, sans-serif; font-size: 11px; font-weight: 700; letter-spacing: .2em; margin-bottom: 16px; text-transform: uppercase; }
.editorial-intro p { font-size: 18px; }
.editorial-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.editorial-button { background: var(--editorial-accent); border: 1px solid var(--editorial-accent); border-radius: 2px; color: #fff !important; display: inline-block; font-family: Arial, sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .08em; padding: 13px 20px; text-decoration: none !important; text-transform: uppercase; transition: background .2s ease, border-color .2s ease, transform .2s ease; }
.editorial-button:hover { background: var(--editorial-accent-dark); border-color: var(--editorial-accent-dark); color: #fff !important; transform: translateY(-2px); }
.editorial-button-outline { background: transparent; color: var(--editorial-accent) !important; }
.editorial-button-outline:hover { color: #fff !important; }
.editorial-section { border-bottom: 1px solid #e8ddd1; margin: 0 auto 58px; max-width: 900px; padding-bottom: 54px; }
.editorial-section-heading { align-items: flex-start; display: flex; gap: 19px; margin-bottom: 24px; }
.editorial-section-heading > span { border-top: 1px solid var(--editorial-gold); color: var(--editorial-gold); flex: 0 0 36px; font-family: Arial, sans-serif; font-size: 11px; letter-spacing: .08em; margin-top: 11px; padding-top: 7px; }
.editorial-columns { display: grid; gap: 32px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.editorial-card-grid { display: grid; gap: 18px; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 30px; }
.editorial-card { background: var(--editorial-paper); border: 1px solid #eee5dc; border-top: 2px solid var(--editorial-gold); padding: 25px 24px; }
.editorial-card p { font-size: 15px; line-height: 1.75; margin-bottom: 0; }
.editorial-card > span { color: var(--editorial-accent); display: block; font-family: Arial, sans-serif; font-size: 13px; font-weight: 700; letter-spacing: .14em; margin-bottom: 9px; }
.editorial-area-grid { display: grid; gap: 17px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 28px; }
.editorial-area-grid .editorial-card:last-child { grid-column: 1 / -1; }
.editorial-feature-list { display: grid; gap: 10px 26px; grid-template-columns: repeat(2, minmax(0, 1fr)); list-style: none; margin: 24px 0 0; padding: 0; }
.editorial-feature-list li { border-bottom: 1px solid #e8ddd1; color: var(--editorial-muted); padding: 9px 0 12px 22px; position: relative; }
.editorial-feature-list li:before { color: var(--editorial-gold); content: "✦"; font-size: 11px; left: 0; position: absolute; top: 12px; }
.editorial-steps { counter-reset: editorial-steps; display: grid; gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); list-style: none; margin: 28px 0; padding: 0; }
.editorial-steps li { background: var(--editorial-paper); border-left: 2px solid var(--editorial-gold); padding: 22px 24px; }
.editorial-steps h3 { font-size: 19px; }
.editorial-steps p { font-size: 15px; margin: 0; }
.editorial-cta { background: #f4eee7; margin: 0 auto 56px; max-width: 900px; padding: 44px; text-align: center; }
.editorial-cta h2 { margin-bottom: 14px; }
.editorial-cta p { margin: 0 auto 23px; max-width: 690px; }
.editorial-cta .editorial-button { margin: 4px; }
.editorial-visit { background: var(--editorial-paper); border: 1px solid #eee5dc; display: grid; gap: 20px 48px; grid-template-columns: 1fr 1.2fr; margin: 0 auto; max-width: 900px; padding: 38px 42px; }
.editorial-visit h2 { margin-bottom: 12px; }
.editorial-visit h3 { font-size: 21px; }
.editorial-visit p { margin-bottom: 10px; }
.editorial-visit-close { border-top: 1px solid #e8ddd1; grid-column: 1 / -1; margin: 0 !important; padding-top: 20px; }
.editorial-divider { color: var(--editorial-gold); margin: 0 9px; }
.editorial-link-row { margin-top: 22px !important; }
.editorial-text-link { display: inline-block; font-weight: 700; }
.editorial-two-up { display: grid; gap: 36px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.editorial-faq h3 { border-top: 1px solid #eee5dc; font-size: 19px; margin: 24px 0 8px; padding-top: 19px; }
.editorial-faq p { margin-bottom: 0; }
@media (max-width: 767px) {
	.editorial-page { font-size: 16px; padding: 48px 0 64px; }
	.editorial-intro { margin-bottom: 42px; padding-bottom: 36px; }
	.editorial-intro p { font-size: 16px; }
	.editorial-section { margin-bottom: 40px; padding-bottom: 38px; }
	.editorial-section-heading { gap: 12px; }
	.editorial-section-heading > span { flex-basis: 26px; }
	.editorial-columns, .editorial-card-grid, .editorial-area-grid, .editorial-feature-list, .editorial-steps, .editorial-visit, .editorial-two-up { grid-template-columns: 1fr; }
	.editorial-area-grid .editorial-card:last-child { grid-column: auto; }
	.editorial-cta { padding: 32px 22px; }
	.editorial-visit { padding: 28px 23px; }
	.editorial-visit-close { grid-column: auto; }
}
