/* ==================================================================
   The Longevity Edge — 60-Day Energy Challenge page styles
   ================================================================== */

/* Kadence page chrome reset (same approach as page-about.css) */
body.page-template-page-energy-challenge .entry-header,
body.page-template-page-energy-challenge .page-title,
body.page-template-page-energy-challenge .entry-title { display: none !important; }
body.page-template-page-energy-challenge .content-area { margin-top: 0 !important; padding: 0 !important; }
body.page-template-page-energy-challenge .entry-content-wrap { padding: 0 !important; }
body.page-template-page-energy-challenge main#main { padding: 0 !important; }
body.page-template-page-energy-challenge .primary-sidebar { display: none !important; }

/* Full-bleed sections + inner 1180 container */
.ec-hero,
.ec-problem,
.ec-story,
.ec-science,
.ec-commit,
.ec-offer,
.ec-guarantee,
.ec-journal,
.ec-results,
.ec-context,
.ec-faq,
.ec-final,
.ec-legal { width: 100vw; position: relative; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; }

.ec-hero .container,
.ec-problem .container,
.ec-story .container,
.ec-science .container,
.ec-commit .container,
.ec-offer .container,
.ec-guarantee .container,
.ec-journal .container,
.ec-results .container,
.ec-context .container,
.ec-faq .container,
.ec-final .container { max-width: 1180px; margin: 0 auto; padding: 0 var(--s-5); }
.ec-legal .container-text { max-width: 720px; margin: 0 auto; padding: 0 var(--s-5); }

/* ---- Shared section heads + prose ---- */
.ec-section-head { margin: 0 0 var(--s-7); max-width: 820px; }
.ec-section-head h2 { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-3xl); color: var(--navy-900); margin: 0 0 var(--s-3); letter-spacing: var(--ls-tight); line-height: var(--lh-tight); }
.ec-section-head h2 em { font-style: italic; color: var(--gold-text); font-weight: 600; }
.ec-section-head--center { text-align: center; margin-left: auto; margin-right: auto; }
.ec-section-sub { font-size: var(--fs-lg); color: var(--ink-700); margin: 0; line-height: var(--lh-relaxed); max-width: 62ch; }
.ec-section-head--center .ec-section-sub { margin-left: auto; margin-right: auto; }

.ec-prose { max-width: 720px; font-size: var(--fs-lg); color: var(--ink-900); line-height: var(--lh-relaxed); }
.ec-prose p { margin: 0 0 var(--s-4); }
.ec-prose p:last-child { margin-bottom: 0; }
.ec-prose strong { color: var(--navy-900); font-weight: 700; }
.ec-prose--center { margin: 0 auto; text-align: center; }
.ec-prose-callout { font-family: var(--font-display); font-style: italic; color: var(--navy-900); font-weight: 500; font-size: var(--fs-xl); border-left: 3px solid var(--gold-600); padding-left: var(--s-4); margin-top: var(--s-5) !important; }

/* =============================================================
   HERO
   ============================================================= */
.ec-hero { background: var(--canvas); padding: var(--s-7) 0 var(--s-8); border-bottom: 1px solid var(--navy-100); position: relative; overflow: hidden; }
.ec-hero::after { content: ""; position: absolute; right: -120px; top: -120px; width: 480px; height: 480px; background: radial-gradient(circle at 50% 50%, rgba(200,148,26,0.10) 0%, transparent 65%); pointer-events: none; }

.ec-hero-urgency { display: inline-flex; align-items: center; gap: var(--s-3); background: var(--cta-100); color: var(--cta-700); font-family: var(--font-body); font-size: var(--fs-sm); font-weight: 600; padding: var(--s-3) var(--s-5); border-radius: var(--r-pill); margin-bottom: var(--s-6); border: 1px solid rgba(159,38,34,0.15); position: relative; z-index: 1; }
.ec-hero-urgency-dot { width: 10px; height: 10px; border-radius: 50%; background: var(--cta-600); box-shadow: 0 0 0 4px rgba(200,49,45,0.18); flex-shrink: 0; animation: ec-pulse 2.2s ease-in-out infinite; }
@keyframes ec-pulse {
	0%, 100% { box-shadow: 0 0 0 4px rgba(200,49,45,0.18); }
	50% { box-shadow: 0 0 0 8px rgba(200,49,45,0.06); }
}

.ec-hero-grid { display: grid; grid-template-columns: 7fr 5fr; gap: var(--s-8); align-items: center; position: relative; z-index: 1; }
@media (max-width: 900px) { .ec-hero-grid { grid-template-columns: 1fr; gap: var(--s-6); } }

.ec-hero-text h1 { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-5xl); color: var(--navy-900); margin: 0 0 var(--s-4); letter-spacing: var(--ls-tight); line-height: var(--lh-tight); }
.ec-hero-text h1 em { font-style: italic; color: var(--gold-text); font-weight: 600; display: block; margin-top: var(--s-1); }
@media (max-width: 700px) { .ec-hero-text h1 { font-size: var(--fs-4xl); } }

.ec-hero-lede { font-size: var(--fs-lg); color: var(--ink-700); line-height: var(--lh-relaxed); margin: 0 0 var(--s-6); max-width: 56ch; }

.ec-hero-cta { display: flex; flex-direction: column; gap: var(--s-3); align-items: flex-start; }
.ec-hero-cta .btn { white-space: normal; text-align: center; line-height: 1.2; padding: var(--s-4) var(--s-6); min-height: 64px; }
.ec-hero-cta-meta { font-size: var(--fs-sm); color: var(--ink-700); margin: 0; }
.ec-hero-cta-guarantee { display: inline-flex; align-items: center; gap: var(--s-2); font-size: var(--fs-sm); color: var(--success); font-weight: 600; margin: 0; }
.ec-hero-cta-guarantee svg { flex-shrink: 0; }

.ec-hero-media { display: flex; justify-content: center; align-items: center; }
.ec-hero-media-frame { position: relative; border-radius: var(--r-lg); overflow: hidden; box-shadow: 0 24px 48px rgba(14,26,43,0.18); background: linear-gradient(135deg, var(--canvas) 0%, var(--gold-50) 100%); padding: var(--s-5); max-width: 460px; }
.ec-hero-media-frame::before { content: ""; position: absolute; inset: 0; box-shadow: inset 0 0 0 2px var(--gold-300); border-radius: var(--r-lg); pointer-events: none; z-index: 2; }
.ec-hero-media-frame img { display: block; width: 100%; height: auto; object-fit: contain; border-radius: var(--r-md); }

.ec-hero-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--s-5); padding: var(--s-6) 0 0; margin: var(--s-7) 0 0; border-top: 1px solid var(--navy-100); position: relative; z-index: 1; }
@media (max-width: 900px) { .ec-hero-stats { grid-template-columns: repeat(2, 1fr); gap: var(--s-4); } }
@media (max-width: 480px) { .ec-hero-stats { grid-template-columns: 1fr; } }
.ec-hero-stat { display: flex; flex-direction: column; gap: 6px; }
.ec-hero-stat-num { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-3xl); color: var(--gold-text); letter-spacing: var(--ls-tight); line-height: 1; }
.ec-hero-stat-label { font-size: var(--fs-sm); color: var(--ink-700); line-height: var(--lh-normal); font-weight: 500; }

/* =============================================================
   PROBLEM
   ============================================================= */
.ec-problem { background: var(--surface); padding: var(--s-9) 0; }

/* =============================================================
   DR. DAVE'S STORY
   ============================================================= */
.ec-story { background: var(--canvas); padding: var(--s-9) 0; }
.ec-story-grid { display: grid; grid-template-columns: 4fr 8fr; gap: var(--s-8); align-items: start; margin-bottom: var(--s-8); }
@media (max-width: 900px) { .ec-story-grid { grid-template-columns: 1fr; gap: var(--s-6); } }

.ec-story-portrait { position: relative; max-width: 320px; margin: 0 auto; }
.ec-story-portrait-frame { position: relative; border-radius: var(--r-lg); overflow: hidden; box-shadow: 0 16px 36px rgba(14,26,43,0.14); transform: rotate(-1deg); }
.ec-story-portrait-frame::before { content: ""; position: absolute; inset: 0; box-shadow: inset 0 0 0 2px var(--gold-300); border-radius: var(--r-lg); pointer-events: none; z-index: 2; }
.ec-story-portrait-frame img { width: 100%; height: auto; display: block; aspect-ratio: 4/5; object-fit: cover; }
.ec-story-portrait-sig { position: absolute; bottom: -14px; right: -8px; background: var(--navy-900); color: #fff; font-family: var(--font-display); font-weight: 600; font-size: var(--fs-sm); padding: 6px 14px; border-radius: var(--r-pill); letter-spacing: var(--ls-tight); box-shadow: 0 8px 16px rgba(14,26,43,0.22); }

.ec-story-body h2 { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-3xl); color: var(--navy-900); margin: 0 0 var(--s-4); letter-spacing: var(--ls-tight); line-height: var(--lh-tight); }
.ec-story-body h2 em { font-style: italic; color: var(--gold-text); font-weight: 600; }
.ec-story-body p { font-size: var(--fs-base); color: var(--ink-700); line-height: var(--lh-relaxed); margin: 0 0 var(--s-4); }
.ec-story-emphasis { font-family: var(--font-display); font-weight: 600; font-style: italic; font-size: var(--fs-xl); color: var(--navy-900) !important; border-left: 3px solid var(--gold-600); padding-left: var(--s-4); }

.ec-story-quote { background: linear-gradient(135deg, var(--navy-900) 0%, var(--navy-700) 100%); color: #fff; border-radius: var(--r-lg); padding: var(--s-7) var(--s-7); margin: 0 0 var(--s-7); text-align: center; position: relative; }
.ec-story-quote::before { content: "\201C"; position: absolute; top: 8px; left: var(--s-5); font-family: var(--font-display); font-size: 72px; color: var(--gold-300); line-height: 1; opacity: 0.5; }
.ec-story-quote p { font-family: var(--font-display); font-style: italic; font-size: var(--fs-xl); margin: 0 0 var(--s-4); line-height: var(--lh-snug); color: #fff; }
.ec-story-quote cite { font-style: normal; font-family: var(--font-body); font-size: var(--fs-sm); color: var(--gold-300); text-transform: uppercase; letter-spacing: var(--ls-widest); font-weight: 700; }

.ec-story-credentials { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--s-4); }
@media (max-width: 900px) { .ec-story-credentials { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 540px) { .ec-story-credentials { grid-template-columns: 1fr; } }
.ec-story-credential { background: var(--surface); border: 1px solid var(--navy-100); border-radius: var(--r-md); padding: var(--s-4) var(--s-5); display: flex; flex-direction: column; gap: 4px; transition: border-color 220ms var(--ease-out), box-shadow 220ms var(--ease-out); }
.ec-story-credential:hover { border-color: var(--gold-300); box-shadow: var(--shadow-sm); }
.ec-story-credential-title { font-family: var(--font-display); font-weight: 600; font-size: var(--fs-base); color: var(--navy-900); letter-spacing: var(--ls-tight); }
.ec-story-credential-sub { font-size: var(--fs-xs); color: var(--ink-700); text-transform: uppercase; letter-spacing: var(--ls-wide); font-weight: 600; }

/* =============================================================
   SCIENCE
   ============================================================= */
.ec-science { background: var(--surface); padding: var(--s-9) 0; }
.ec-science-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--s-5); margin: var(--s-7) 0 var(--s-6); }
@media (max-width: 900px) { .ec-science-grid { grid-template-columns: 1fr; } }

.ec-science-card { background: var(--canvas); border: 1px solid var(--navy-100); border-top: 4px solid var(--gold-500); border-radius: var(--r-lg); padding: var(--s-6); position: relative; }
.ec-science-card-num { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-2xl); color: var(--gold-500); letter-spacing: var(--ls-tight); display: block; margin-bottom: var(--s-3); line-height: 1; }
.ec-science-card h3 { font-family: var(--font-display); font-weight: 600; font-size: var(--fs-lg); color: var(--navy-900); margin: 0 0 var(--s-3); letter-spacing: var(--ls-tight); line-height: var(--lh-snug); }
.ec-science-card p { font-size: var(--fs-base); color: var(--ink-700); line-height: var(--lh-relaxed); margin: 0; }

.ec-science-stack { display: flex; align-items: flex-start; gap: var(--s-4); background: var(--gold-50); border: 1px solid var(--gold-100); border-left: 4px solid var(--gold-500); border-radius: var(--r-md); padding: var(--s-5) var(--s-6); margin-top: var(--s-7); }
.ec-science-stack svg { color: var(--gold-text); flex-shrink: 0; margin-top: 2px; }
.ec-science-stack p { font-size: var(--fs-base); color: var(--ink-900); line-height: var(--lh-relaxed); margin: 0; }

/* =============================================================
   COMMITMENT
   ============================================================= */
.ec-commit { background: var(--canvas); padding: var(--s-9) 0; }
.ec-commit-list { list-style: none; padding: 0; margin: 0 0 var(--s-6); display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-4); }
@media (max-width: 700px) { .ec-commit-list { grid-template-columns: 1fr; } }
.ec-commit-list li { display: grid; grid-template-columns: 36px 1fr; gap: var(--s-3); align-items: start; background: var(--surface); border: 1px solid var(--navy-100); border-radius: var(--r-md); padding: var(--s-4) var(--s-5); }
.ec-commit-check { width: 32px; height: 32px; border-radius: 50%; background: var(--success-50); color: var(--success); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.ec-commit-list strong { display: block; font-family: var(--font-display); font-weight: 600; font-size: var(--fs-lg); color: var(--navy-900); margin-bottom: 2px; letter-spacing: var(--ls-tight); line-height: var(--lh-snug); }
.ec-commit-list span { font-size: var(--fs-sm); color: var(--ink-700); }

.ec-commit-note { max-width: 720px; font-size: var(--fs-lg); color: var(--ink-700); line-height: var(--lh-relaxed); font-style: italic; font-family: var(--font-display); margin: 0; }

/* =============================================================
   OFFER
   ============================================================= */
.ec-offer { background: var(--surface); padding: var(--s-9) 0; }
.ec-offer-card { background: linear-gradient(135deg, var(--canvas) 0%, var(--gold-50) 100%); border: 1px solid var(--gold-100); border-radius: var(--r-lg); padding: var(--s-7); display: grid; grid-template-columns: 1.4fr 1fr; gap: var(--s-8); align-items: center; box-shadow: 0 12px 32px rgba(196,156,88,0.10); }
@media (max-width: 900px) { .ec-offer-card { grid-template-columns: 1fr; padding: var(--s-6); gap: var(--s-6); } }

.ec-offer-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: var(--s-3); }
.ec-offer-list li { display: grid; grid-template-columns: 24px 1fr; gap: var(--s-3); align-items: start; padding-bottom: var(--s-3); border-bottom: 1px solid rgba(14,26,43,0.06); }
.ec-offer-list li:last-child { border-bottom: 0; padding-bottom: 0; }
.ec-offer-list li::before { content: ""; width: 18px; height: 18px; border-radius: 50%; background: var(--gold-500); margin-top: 4px; position: relative; flex-shrink: 0; }
.ec-offer-list li::after { content: "\2713"; position: absolute; color: #fff; font-weight: 700; font-size: 12px; margin-top: 1px; margin-left: 4px; }
.ec-offer-list li > div { display: flex; flex-direction: column; gap: 2px; }
.ec-offer-list strong { font-family: var(--font-display); font-weight: 600; font-size: var(--fs-base); color: var(--navy-900); letter-spacing: var(--ls-tight); }
.ec-offer-list span { font-size: var(--fs-sm); color: var(--ink-700); }

.ec-offer-price { background: var(--surface); border: 1px solid var(--navy-100); border-radius: var(--r-md); padding: var(--s-6); text-align: center; display: flex; flex-direction: column; gap: var(--s-3); align-items: stretch; }
.ec-offer-price-num { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-5xl); color: var(--navy-900); line-height: 1; letter-spacing: var(--ls-tight); }
.ec-offer-price-meta { font-size: var(--fs-sm); color: var(--ink-700); line-height: var(--lh-normal); }
.ec-offer-price .btn { white-space: normal; line-height: 1.2; min-height: 60px; padding: var(--s-3) var(--s-5); }
.ec-offer-meta { font-size: var(--fs-xs); color: var(--ink-500); margin: 0; line-height: var(--lh-normal); }

.ec-offer-note { max-width: 720px; margin: var(--s-6) 0 0; font-size: var(--fs-base); color: var(--ink-700); font-style: italic; line-height: var(--lh-relaxed); }

/* =============================================================
   GUARANTEE
   ============================================================= */
.ec-guarantee { background: linear-gradient(180deg, var(--canvas) 0%, var(--gold-50) 100%); padding: var(--s-9) 0; }

.ec-guarantee-steps { list-style: none; padding: 0; margin: var(--s-7) auto var(--s-6); max-width: 980px; display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--s-5); }
@media (max-width: 800px) { .ec-guarantee-steps { grid-template-columns: 1fr; } }
.ec-guarantee-steps li { background: var(--surface); border: 1px solid var(--gold-100); border-radius: var(--r-lg); padding: var(--s-6); text-align: center; display: flex; flex-direction: column; gap: var(--s-3); align-items: center; box-shadow: var(--shadow-sm); }
.ec-guarantee-step-num { width: 56px; height: 56px; border-radius: 50%; background: var(--navy-900); color: var(--gold-300); font-family: var(--font-display); font-weight: 700; font-size: var(--fs-2xl); display: inline-flex; align-items: center; justify-content: center; line-height: 1; }
.ec-guarantee-steps p { font-family: var(--font-display); font-weight: 500; font-size: var(--fs-lg); color: var(--navy-900); margin: 0; line-height: var(--lh-snug); }
.ec-guarantee-foot { max-width: 720px; margin: 0 auto; text-align: center; font-family: var(--font-display); font-style: italic; font-weight: 500; font-size: var(--fs-xl); color: var(--navy-900); line-height: var(--lh-snug); }

/* =============================================================
   JOURNAL
   ============================================================= */
.ec-journal { background: var(--surface); padding: var(--s-9) 0; }
.ec-journal-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--s-5); margin: var(--s-7) 0; }
@media (max-width: 900px) { .ec-journal-grid { grid-template-columns: 1fr; } }
.ec-journal-card { background: var(--canvas); border: 1px solid var(--navy-100); border-radius: var(--r-lg); padding: var(--s-6); display: flex; flex-direction: column; gap: var(--s-4); }
.ec-journal-card-eyebrow { font-family: var(--font-body); font-size: var(--fs-xs); font-weight: 700; color: var(--gold-text); text-transform: uppercase; letter-spacing: var(--ls-widest); }
.ec-journal-card ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: var(--s-3); font-size: var(--fs-base); color: var(--ink-900); line-height: var(--lh-relaxed); }
.ec-journal-card li { padding-left: var(--s-4); position: relative; }
.ec-journal-card li::before { content: ""; position: absolute; left: 0; top: 11px; width: 8px; height: 8px; border-radius: 50%; background: var(--gold-500); }
.ec-journal-card li strong { color: var(--navy-900); font-weight: 700; }

.ec-journal-quote { background: var(--canvas); border: 1px solid var(--navy-100); border-left: 4px solid var(--gold-500); border-radius: var(--r-md); padding: var(--s-6); margin: 0; max-width: 880px; }
.ec-journal-quote p { font-family: var(--font-display); font-style: italic; font-size: var(--fs-lg); color: var(--navy-900); margin: 0 0 var(--s-3); line-height: var(--lh-snug); }
.ec-journal-quote cite { font-style: normal; font-family: var(--font-body); font-size: var(--fs-sm); color: var(--gold-text); text-transform: uppercase; letter-spacing: var(--ls-widest); font-weight: 700; }

/* =============================================================
   RESULTS
   ============================================================= */
.ec-results { background: var(--canvas); padding: var(--s-9) 0; }
.ec-results-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--s-5); margin-top: var(--s-7); }
@media (max-width: 900px) { .ec-results-grid { grid-template-columns: 1fr; } }
.ec-result { background: var(--surface); border: 1px solid var(--navy-100); border-radius: var(--r-lg); padding: var(--s-6); display: flex; flex-direction: column; gap: var(--s-4); margin: 0; transition: transform 220ms var(--ease-out), box-shadow 220ms var(--ease-out); }
.ec-result:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }
.ec-result-stars { color: var(--star); font-size: var(--fs-xl); letter-spacing: 0.08em; line-height: 1; }
.ec-result blockquote { margin: 0; }
.ec-result blockquote p { font-size: var(--fs-base); color: var(--ink-700); line-height: var(--lh-relaxed); margin: 0; font-style: italic; }
.ec-result figcaption { font-family: var(--font-body); font-weight: 700; font-size: var(--fs-sm); color: var(--navy-900); margin-top: auto; padding-top: var(--s-3); border-top: 1px solid var(--navy-100); }

/* =============================================================
   CONTEXT / PRICE COMPARISON
   ============================================================= */
.ec-context { background: var(--surface); padding: var(--s-9) 0; }
.ec-context-table { max-width: 720px; border: 1px solid var(--navy-100); border-radius: var(--r-lg); background: var(--canvas); overflow: hidden; }
.ec-context-row { display: grid; grid-template-columns: 1fr auto; gap: var(--s-4); padding: var(--s-4) var(--s-5); border-bottom: 1px solid var(--navy-100); align-items: center; }
.ec-context-row:last-child { border-bottom: 0; }
.ec-context-row--highlight { background: var(--gold-50); border-bottom: 2px solid var(--gold-500); }
.ec-context-row-label { font-family: var(--font-body); font-weight: 600; font-size: var(--fs-base); color: var(--navy-900); }
.ec-context-row-value { font-family: var(--font-body); font-weight: 700; font-size: var(--fs-lg); color: var(--navy-900); font-feature-settings: "tnum","lnum"; letter-spacing: -0.01em; }
.ec-context-row--highlight .ec-context-row-value { color: var(--success); font-size: var(--fs-xl); }

/* =============================================================
   FAQ
   ============================================================= */
.ec-faq { background: var(--canvas); padding: var(--s-9) 0; }
.ec-faq-list { max-width: 820px; }
.ec-faq .faq { background: var(--surface); border: 1px solid var(--navy-100); border-radius: var(--r-md); margin-bottom: var(--s-3); padding: 0 var(--s-5); }
.ec-faq .faq-summary { padding: var(--s-4) 0; }
.ec-faq .faq-body { padding: 0 0 var(--s-4); }
.ec-faq .faq-body a { color: var(--gold-text); }

/* =============================================================
   FINAL CTA
   ============================================================= */
.ec-final { background: linear-gradient(180deg, var(--canvas) 0%, var(--surface) 100%); padding: var(--s-9) 0; }
.ec-final-card { max-width: 820px; margin: 0 auto; background: var(--surface); border: 1px solid var(--gold-100); border-top: 6px solid var(--gold-500); border-radius: var(--r-lg); padding: var(--s-8) var(--s-7); box-shadow: 0 16px 40px rgba(14,26,43,0.08); }
@media (max-width: 700px) { .ec-final-card { padding: var(--s-7) var(--s-5); } }
.ec-final-card h2 { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-3xl); color: var(--navy-900); margin: 0 0 var(--s-5); letter-spacing: var(--ls-tight); line-height: var(--lh-tight); }
.ec-final-card h2 em { font-style: italic; color: var(--gold-text); font-weight: 600; }
.ec-final-card h3 { font-family: var(--font-display); font-weight: 600; font-size: var(--fs-xl); color: var(--navy-900); margin: var(--s-6) 0 var(--s-3); letter-spacing: var(--ls-tight); line-height: var(--lh-snug); padding-top: var(--s-5); border-top: 1px solid var(--navy-100); }
.ec-final-card p { font-size: var(--fs-base); color: var(--ink-700); line-height: var(--lh-relaxed); margin: 0 0 var(--s-4); }

.ec-final-cta { margin: var(--s-7) 0 var(--s-6); text-align: center; display: flex; flex-direction: column; gap: var(--s-3); align-items: center; }
.ec-final-cta .btn { white-space: normal; line-height: 1.2; min-height: 64px; padding: var(--s-4) var(--s-7); }
.ec-final-cta-meta { font-size: var(--fs-sm); color: var(--ink-700); margin: 0 !important; }

.ec-final-sig { margin-top: var(--s-6); padding-top: var(--s-5); border-top: 1px solid var(--navy-100); }
.ec-final-sig p { margin: 0 0 var(--s-2); color: var(--navy-900); font-size: var(--fs-base); }
.ec-final-sig-name { font-family: var(--font-display); font-style: italic; font-weight: 600; font-size: var(--fs-2xl); color: var(--gold-text); letter-spacing: var(--ls-tight); }

/* =============================================================
   LEGAL DISCLAIMER
   ============================================================= */
.ec-legal { background: var(--navy-900); color: var(--navy-100); padding: var(--s-7) 0; }
.ec-legal p { font-size: var(--fs-xs); line-height: var(--lh-relaxed); color: var(--navy-100); margin: 0; opacity: 0.85; }
