/* ==========================================================================
   Free Security Snapshot pages (security-snapshot*.html)
   Ported from the Marketing Bootstrap 5 mockups. Every rule is scoped to
   .mt-snapshot so nothing here leaks into the rest of the site. The site
   already loads Bootstrap 5.3 (assets/bootstrap), so no second Bootstrap is
   loaded; the rules below undo the dark-theme globals in style.css (white
   headings, p{margin:0}, .btn, .accordion, .section-title) inside the wrapper.
   ========================================================================== */
.mt-snapshot {
	--mt-navy: #1a2237;
	--mt-cyan: #18fef5;
	--mt-blue: #0d6efd;
	--mt-soft: #f3f6fa;
	background: #fff;
	color: #1f2633;
	font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	text-align: left;
}

/* --- reset site-wide theme rules inside the wrapper (Bootstrap defaults) --- */
.mt-snapshot h1, .mt-snapshot h2, .mt-snapshot h3,
.mt-snapshot h4, .mt-snapshot h5, .mt-snapshot h6 {
	font-family: 'Exo', 'Inter', sans-serif;
	color: inherit;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0;
	margin-top: 0;
	margin-bottom: .5rem;
}
.mt-snapshot p { margin-top: 0; margin-bottom: 1rem; }
.mt-snapshot ul, .mt-snapshot ol { margin-top: 0; margin-bottom: 1rem; }
.mt-snapshot a:not(.btn) { font-family: inherit; color: #0d6efd; text-decoration: underline; }
.mt-snapshot a:not(.btn):hover { color: #0a58ca; }
.mt-snapshot .btn {
	padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
	font-family: 'Exo', 'Inter', sans-serif;
	font-size: var(--bs-btn-font-size);
	line-height: var(--bs-btn-line-height);
	border-radius: var(--bs-btn-border-radius);
	text-decoration: none;
}
.mt-snapshot .section-title { text-align: left; }
.mt-snapshot li::marker { color: inherit !important; }

/* --- mockup styles --- */
.mt-snapshot .bg-navy { background: var(--mt-navy); }
.mt-snapshot .text-cyan { color: var(--mt-cyan) !important; }
.mt-snapshot .eyebrow { font-size: .8rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.mt-snapshot .btn-mt { background: var(--mt-cyan); color: var(--mt-navy); font-weight: 800; letter-spacing: .03em; border: 0; }
.mt-snapshot .btn-mt:hover, .mt-snapshot .btn-mt:focus { background: #7ffffa; color: var(--mt-navy); }
.mt-snapshot .btn-outline-mt { border: 2px solid var(--mt-navy); color: var(--mt-navy); font-weight: 700; }
.mt-snapshot .btn-outline-mt:hover { background: var(--mt-navy); color: #fff; }
.mt-snapshot .hero { background: var(--mt-navy); color: #fff; }
.mt-snapshot .hero .lead { color: #d6dceb; }
.mt-snapshot .badge-pill { border: 1.5px solid var(--mt-cyan); color: #fff; border-radius: 999px; padding: .3rem .8rem; font-size: .85rem; font-weight: 600; display: inline-block; }
.mt-snapshot .section-title { color: var(--mt-navy); font-weight: 700; }
.mt-snapshot .section-title::after { content: ""; display: block; width: 56px; height: 4px; background: var(--mt-cyan); margin-top: .5rem; border-radius: 2px; }
.mt-snapshot .text-center .section-title::after { margin-left: auto; margin-right: auto; }
.mt-snapshot .check-card { background: var(--mt-soft); border-left: 4px solid var(--mt-navy); border-radius: .5rem; height: 100%; }
.mt-snapshot .check-card h3 { font-size: 1.05rem; color: var(--mt-navy); font-weight: 700; }
.mt-snapshot .item-num { width: 1.7rem; height: 1.7rem; flex: 0 0 auto; border-radius: 50%; background: var(--mt-navy); color: var(--mt-cyan); font-weight: 800; display: inline-flex; align-items: center; justify-content: center; font-family: 'Exo', sans-serif; font-size: .9rem; }
.mt-snapshot .note-box { border-left: 4px solid var(--mt-cyan); background: #f7fbff; }
.mt-snapshot .step-card { border: 2px solid var(--mt-navy); border-radius: .75rem; background: #fff; }
.mt-snapshot .step-card.opt { border-style: dashed; background: var(--mt-soft); }
.mt-snapshot .step-tag { background: var(--mt-cyan); color: var(--mt-navy); font-weight: 800; font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; padding: .2rem .5rem; border-radius: 4px; }
.mt-snapshot .step-tag.opt { background: #fff; border: 1px solid var(--mt-navy); }
.mt-snapshot .step-num { width: 2.4rem; height: 2.4rem; border-radius: 50%; background: var(--mt-navy); color: var(--mt-cyan); font-weight: 800; display: flex; align-items: center; justify-content: center; font-family: 'Exo', sans-serif; flex: 0 0 auto; }
.mt-snapshot .spec { border: 1px solid #dfe4ec; border-radius: .5rem; height: 100%; }
.mt-snapshot .spec strong { color: var(--mt-navy); }
.mt-snapshot a.text-cyan { text-decoration: none; font-weight: 600; }

/* hub (chooser) page */
.mt-snapshot-hub .hero .lead { max-width: 760px; }
.mt-snapshot .choice-card { border: 2px solid var(--mt-navy); border-radius: .75rem; height: 100%; background: #fff; }
.mt-snapshot .choice-card.alt { background: var(--mt-soft); border-style: dashed; }
.mt-snapshot .choice-card h3 { color: var(--mt-navy); font-weight: 700; }

/* --- FAQ accordion: undo the site's dark accordion theme (style.css uses !important) --- */
.mt-snapshot .accordion { margin-bottom: 0; }
.mt-snapshot .accordion-item {
	background: #fff;
	border: 1px solid #dee2e6;
	margin-bottom: 0;
	box-shadow: none;
}
.mt-snapshot .accordion-item:not(:first-of-type) { border-top: 0; }
.mt-snapshot .accordion-item:first-of-type { border-top-left-radius: .375rem; border-top-right-radius: .375rem; }
.mt-snapshot .accordion-item:last-of-type { border-bottom-left-radius: .375rem; border-bottom-right-radius: .375rem; }
.mt-snapshot .accordion-header { background: transparent !important; padding: 0; margin: 0; }
.mt-snapshot .accordion-button {
	background: #fff !important;
	color: var(--mt-navy) !important;
	font-family: inherit;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
}
.mt-snapshot .accordion-button:not(.collapsed) {
	background: #e9fffe !important;
	color: var(--mt-navy) !important;
	box-shadow: inset 0 -1px 0 #dee2e6 !important;
}
.mt-snapshot .accordion-button:focus { box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25) !important; }
.mt-snapshot .accordion-button::after { content: ""; color: inherit !important; }
.mt-snapshot .accordion-button:not(.collapsed)::after { content: ""; }
.mt-snapshot .accordion-body { color: #212529 !important; }
