.snapshot-page { color: #F8FAFC; }

.snapshot-page .reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.snapshot-page .reveal.visible {
    opacity: 1;
    transform: translateY(0);
}

.snapshot-page .snapshot-hero .reveal {
    transform: translateY(24px);
}

.snapshot-page .snapshot-hero .reveal.visible {
    transform: translateY(0);
}

.snapshot-page .snapshot-hero .snapshot-eyebrow.reveal { transition-delay: 0s; }
.snapshot-page .snapshot-hero h1.reveal { transition-delay: 0.1s; }
.snapshot-page .snapshot-hero .snapshot-lead.reveal { transition-delay: 0.2s; }
.snapshot-page .snapshot-hero .snapshot-actions.reveal { transition-delay: 0.3s; }
.snapshot-page .snapshot-hero .snapshot-note.reveal { transition-delay: 0.4s; }

@keyframes snapshotDotPulse {
    0%, 100% { box-shadow: 0 0 22px rgba(56, 189, 248, 0.78); }
    50% { box-shadow: 0 0 8px rgba(56, 189, 248, 0.3); }
}

.snapshot-dot { animation: snapshotDotPulse 2s ease-in-out infinite; }

.snapshot-hero { position: relative; overflow: hidden; padding: 156px 0 96px; border-bottom: 1px solid var(--border); }
.snapshot-hero::before { content: ''; position: absolute; top: -260px; right: -220px; width: 760px; height: 760px; background: radial-gradient(circle, rgba(108, 92, 231, 0.16), transparent 68%); pointer-events: none; }
.snapshot-hero-layout.snapshot-hero-centered { display: block; max-width: 920px; margin: 0 auto; text-align: center; }
.snapshot-hero-copy { max-width: 920px; margin: 0 auto; }
.snapshot-eyebrow { display: inline-flex; align-items: center; gap: 8px; padding: 8px 18px; border: 1px solid rgba(56, 189, 248, 0.48); border-radius: 999px; background: rgba(14, 165, 233, 0.14); color: #BAE6FD; font-size: 0.82rem; font-weight: 700; margin-bottom: 22px; }
.snapshot-dot { width: 8px; height: 8px; border-radius: 50%; background: #38BDF8; box-shadow: 0 0 22px rgba(56, 189, 248, 0.78); }
.snapshot-hero h1 { max-width: 860px; margin-left: auto; margin-right: auto; font-size: clamp(2.3rem, 5vw, 4.2rem); line-height: 1.05; letter-spacing: -0.045em; margin-bottom: 24px; }
.snapshot-lead { max-width: 760px; margin-left: auto; margin-right: auto; color: #CBD5E1; font-size: 1.12rem; line-height: 1.75; margin-bottom: 24px; }
.snapshot-actions { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; margin-bottom: 18px; justify-content: center; }
.snapshot-actions .btn, .snapshot-final .btn { min-height: 48px; align-items: center; }
.snapshot-note { color: #AAB7C7; font-size: 0.94rem; }
.snapshot-note-centered { text-align: center; max-width: 820px; margin: 0 auto; }
.snapshot-warning-centered { max-width: 860px; margin: 0 auto 18px; text-align: center; }
.snapshot-label-optional { font-weight: 400; color: var(--text-secondary); }
.snapshot-note-tight { margin: -8px 0 8px; }
.snapshot-note-after { margin-top: 18px; }

.snapshot-visual { max-width: 100%; height: auto; display: block; }
.snapshot-image-card { border-radius: 24px; overflow: hidden; background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.08); box-shadow: 0 24px 80px rgba(0, 0, 0, 0.28); }

.snapshot-trust-bar { padding: 18px 0; border-top: 1px solid rgba(255,255,255,0.08); border-bottom: 1px solid rgba(255,255,255,0.08); background: rgba(255,255,255,0.025); }
.snapshot-trust-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.snapshot-trust-grid > div { display: flex; align-items: center; justify-content: center; gap: 8px; text-align: center; color: var(--text-secondary); font-weight: 700; font-size: 0.95rem; }
.snapshot-trust-grid svg { flex-shrink: 0; width: 18px; height: 18px; color: #38BDF8; opacity: 0.95; }

.snapshot-section { padding: 72px 0; }
.snapshot-section.compact { padding: 56px 0; }
.snapshot-section.alt { background: rgba(30, 41, 59, 0.34); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.snapshot-header { max-width: 720px; margin: 0 auto 36px; text-align: center; }
.snapshot-header h2 { font-size: clamp(1.6rem, 3vw, 2.3rem); line-height: 1.2; margin-bottom: 12px; }
.snapshot-header p { color: #CBD5E1; line-height: 1.75; }

.snapshot-report-layout { display: grid; grid-template-columns: minmax(320px, 0.97fr) minmax(0, 1.03fr); gap: 48px; align-items: start; }
.snapshot-report-preview { margin: 0; }
.snapshot-report-preview .mock-report-image-wrap { max-width: 560px; margin: 0 auto; }
.snapshot-report-preview img { width: 100%; height: auto; display: block; }
.snapshot-header-left { max-width: 680px; margin: 0 0 24px; text-align: left; }
.snapshot-report-points { display: grid; grid-template-columns: 1fr; gap: 14px; }
.snapshot-card.compact-card { padding: 20px 22px; }
.snapshot-card.compact-card h3 { margin-bottom: 6px; }
.snapshot-card.compact-card p { margin: 0; }
.snapshot-process-img { margin: 0 auto 28px; }
.snapshot-process-img img { width: 100%; height: auto; display: block; border-radius: 20px; border: 1px solid rgba(255, 255, 255, 0.06); box-shadow: 0 16px 60px rgba(0, 0, 0, 0.22); }

.snapshot-audience-chips { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 28px; }
.snapshot-audience-chips span { padding: 6px 14px; border-radius: 999px; background: rgba(14, 165, 233, 0.14); border: 1px solid rgba(56, 189, 248, 0.48); color: #BAE6FD; font-size: 0.85rem; font-weight: 600; }

.snapshot-checklist { max-width: 720px; margin: 0 auto; display: grid; gap: 18px; list-style: none; }
.snapshot-checklist li { position: relative; padding-left: 24px; color: #CBD5E1; line-height: 1.6; font-size: 0.97rem; }
.snapshot-checklist li strong { display: block; color: #F1F5F9; font-weight: 800; font-size: 1.02rem; line-height: 1.3; margin-bottom: 4px; }
.snapshot-checklist li::before { content: ''; position: absolute; left: 0; top: 0.65em; width: 8px; height: 8px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 10px rgba(108, 92, 231, 0.45); }

.snapshot-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.snapshot-card, .snapshot-form-card, .snapshot-final { background: linear-gradient(180deg, rgba(30, 41, 59, 0.96), rgba(15, 23, 42, 0.96)); border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); }
.snapshot-card { padding: 24px; }
.snapshot-card h3 { font-size: 1.05rem; margin-bottom: 10px; }
.snapshot-card p { color: #CBD5E1; line-height: 1.65; font-size: 0.95rem; }

.snapshot-external-img { margin: 0 auto; }
.snapshot-external-img .snapshot-image-card { background: rgba(15, 23, 42, 0.72); border-color: rgba(108, 92, 231, 0.22); box-shadow: 0 18px 52px rgba(108, 92, 231, 0.12); }
.snapshot-external-img img { width: 100%; height: auto; display: block; }

.snapshot-list { display: grid; grid-template-columns: 1fr; gap: 10px 18px; list-style: none; }
.snapshot-list li { position: relative; padding-left: 20px; color: #CBD5E1; line-height: 1.65; }
.snapshot-list li::before { content: ''; position: absolute; left: 0; top: 0.7em; width: 7px; height: 7px; border-radius: 50%; background: var(--accent-light); }

.snapshot-warning { padding: 14px 16px; border-radius: var(--radius-md); background: rgba(239, 68, 68, 0.12); border: 1px solid rgba(239, 68, 68, 0.25); color: #FCA5A5; font-weight: 700; line-height: 1.55; font-size: 0.92rem; }

.snapshot-form-card { max-width: 860px; margin: 0 auto; padding: 28px; }
.snapshot-form-card .form-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.snapshot-form-card label { display: block; margin-bottom: 6px; font-weight: 700; color: var(--text-primary); }
.snapshot-form-card input, .snapshot-form-card select, .snapshot-form-card textarea { width: 100%; min-height: 48px; padding: 14px 16px; border: 1px solid var(--border); border-radius: var(--radius-md); background: rgba(15, 23, 42, 0.82); color: var(--text-primary); font: inherit; font-size: 1rem; }
.snapshot-form-card input.invalid, .snapshot-form-card select.invalid, .snapshot-form-card textarea.invalid { border-color: #F87171 !important; box-shadow: 0 0 0 3px rgba(248, 113, 113, 0.16); background: rgba(127, 29, 29, 0.18); }
.snapshot-form-card textarea { resize: vertical; min-height: 100px; }
.snapshot-form-card .snapshot-checkbox { display: flex !important; gap: 0; align-items: flex-start; color: #CBD5E1; line-height: 1.55; margin-bottom: 14px; padding: 12px; border-radius: var(--radius-md); }
.snapshot-form-card .snapshot-checkbox input { flex: 0 0 auto; width: 22px; height: 22px; min-height: 22px; margin-top: 2px; }
.snapshot-form-card .snapshot-checkbox > span { display: block; margin-left: 12px; }
.snapshot-form-card .snapshot-checkbox.invalid { border: 1px solid rgba(248, 113, 113, 0.75); background: rgba(127, 29, 29, 0.18); }
.snapshot-fieldset { border: 1px solid rgba(148, 163, 184, 0.16); border-radius: var(--radius-lg); padding: 22px; margin: 0 0 18px; background: rgba(15, 23, 42, 0.34); }
.snapshot-fieldset legend { padding: 0 10px; color: var(--accent-light); font-weight: 800; letter-spacing: 0.02em; }
.snapshot-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.form-error { display: block; min-height: 0; margin-top: 4px; color: #FCA5A5; font-size: 0.85rem; font-weight: 700; }
.form-error:not(:empty) { display: block !important; }
.snapshot-submit { width: 100%; margin-top: 14px; justify-content: center; }
.snapshot-success, .snapshot-error { display: flex; align-items: flex-start; gap: 12px; margin-top: 18px; padding: 16px 18px; border-radius: var(--radius-md); line-height: 1.6; }
.snapshot-success { background: rgba(34, 197, 94, 0.12); border: 1px solid rgba(34, 197, 94, 0.25); color: #BBF7D0; }
.snapshot-error { background: rgba(239, 68, 68, 0.12); border: 1px solid rgba(239, 68, 68, 0.25); color: #FECACA; }

.snapshot-faq { max-width: 860px; margin: 0 auto; display: grid; gap: 12px; }
.snapshot-faq details { background: rgba(30, 41, 59, 0.82); border: 1px solid var(--border); border-radius: var(--radius-md); padding: 16px 18px; }
.snapshot-faq summary { cursor: pointer; font-weight: 800; color: var(--text-primary); }
.snapshot-faq p { color: #CBD5E1; margin-top: 10px; line-height: 1.7; }

.snapshot-final { text-align: center; padding: 44px 32px; }
.snapshot-final h2 { font-size: clamp(1.55rem, 2.35vw, 2.15rem); margin-bottom: 14px; }
.snapshot-final p { max-width: 720px; margin: 0 auto 24px; color: #CBD5E1; line-height: 1.75; }

.snapshot-sticky-cta { display: none; }
.snapshot-sticky-cta.is-hidden { display: none !important; }

@media (max-width: 960px) {
    .snapshot-grid { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
    .snapshot-report-layout { grid-template-columns: 1fr; gap: 28px; }
    .snapshot-report-copy { order: 1; }
    .snapshot-report-preview { order: 2; }
    .snapshot-report-preview .mock-report-image-wrap { max-width: 520px; }
    .snapshot-header-left { text-align: center; margin-left: auto; margin-right: auto; }
}

@media (max-width: 768px) {
    .snapshot-hero { padding: 104px 0 56px; }
    .snapshot-trust-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .snapshot-trust-grid > div { text-align: left; font-size: 0.9rem; }
    .snapshot-section { padding: 48px 0; }
    .snapshot-section.compact { padding: 40px 0; }
    .snapshot-card, .snapshot-warning, .snapshot-faq, .snapshot-caption, .snapshot-checklist { text-align: left; }
}

@media (max-width: 720px) {
    .snapshot-page { font-size: 15px; padding-bottom: 86px; }
    .snapshot-page p, .snapshot-page li, .snapshot-card p, .snapshot-faq summary, .snapshot-faq p, .snapshot-form-card label, .snapshot-form-card input, .snapshot-form-card select, .snapshot-form-card textarea, .snapshot-checkbox { font-size: 15px; }
    .snapshot-hero h1 { max-width: 430px; font-size: clamp(2rem, 9.5vw, 2.65rem); line-height: 1.08; }
    .snapshot-list, .snapshot-form-card .form-row { grid-template-columns: 1fr; }
    .snapshot-card, .snapshot-faq details { font-size: 15px; }
    .snapshot-form-card { padding: 22px 18px; }
    .snapshot-form-card .form-group { margin-bottom: 10px; }
    .snapshot-form-card input, .snapshot-form-card select { min-height: 24px; }
    .snapshot-form-card textarea { min-height: 60px; }
    .snapshot-fieldset { padding: 18px 14px; margin-bottom: 18px; }
    .snapshot-actions .btn, .snapshot-final .btn, .snapshot-submit { width: 100%; min-height: 48px; justify-content: center; }
    .snapshot-actions .btn-primary { display: none; }
    .snapshot-form-card .snapshot-checkbox { min-height: 56px; padding: 16px 12px; }
    .snapshot-form-card .snapshot-checkbox input { width: 26px; height: 26px; min-height: 26px; }
    .snapshot-sticky-cta { position: fixed; left: 12px; right: 12px; bottom: 12px; z-index: 999; display: flex; align-items: center; justify-content: center; min-height: 52px; border-radius: 14px; background: var(--accent-gradient); color: #fff; text-decoration: none; font-weight: 800; box-shadow: 0 14px 34px rgba(0, 0, 0, 0.35); }
}

@media (max-width: 640px) {
    .snapshot-report-preview .mock-report-image-wrap { max-width: 100%; }
    .snapshot-header-left { text-align: left; }
}

@media (max-width: 480px) {
    .snapshot-metric { width: 100%; }
}
