:root {
  --bg: #06111f;
  --bg-deep: #030a12;
  --panel: #0a1828;
  --panel-2: #0d1d2e;
  --text: #f3f0e8;
  --muted: #91a0af;
  --muted-2: #657587;
  --gold: #dca93a;
  --gold-2: #f0c568;
  --line: rgba(230, 194, 111, .17);
  --line-soft: rgba(255,255,255,.08);
  --max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--bg-deep);
  color: var(--text);
  font-family: "Segoe UI", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }
img { max-width: 100%; height: auto; display: block; }

.site-shell {
  background:
    radial-gradient(circle at 78% 9%, rgba(15, 50, 76, .34), transparent 28%),
    linear-gradient(180deg, #071421 0%, #030a12 100%);
  min-height: 100vh;
}
.container { width: min(calc(100% - 48px), var(--max)); margin: 0 auto; }
.section { position: relative; padding: 112px 0; }
.section-border { border-top: 1px solid var(--line-soft); }
.section-dark { background: rgba(1, 8, 15, .56); border-top: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); }

.nav-wrap {
  position: fixed; inset: 0 0 auto 0; z-index: 50;
  background: rgba(3, 10, 18, .72);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(255,255,255,.065);
}
.nav { height: 96px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display:flex; align-items:center; flex:0 0 auto; }
.brand img { width: 342px; height: auto; object-fit: contain; object-position: left center; }
.nav-links { display: flex; align-items: center; gap: 28px; font-size: 13px; color: #c8d0d7; letter-spacing: .02em; }
.nav-links > a:not(.button) { transition: color .2s ease; }
.nav-links > a:not(.button):hover { color: var(--gold-2); }
.menu-toggle { display: none; background: none; border: 0; color: var(--text); font: inherit; }

.button {
  display: inline-flex; align-items: center; justify-content: center; gap: 14px;
  min-height: 52px; padding: 0 24px;
  background: linear-gradient(135deg, #e6b74b, #b87d16);
  color: #07111b; border: 1px solid rgba(255,220,136,.45); border-radius: 3px;
  font-weight: 750; font-size: 13px; letter-spacing: .055em; text-transform: uppercase;
  box-shadow: 0 10px 30px rgba(191,130,25,.14), inset 0 1px 0 rgba(255,255,255,.25);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.button:hover { transform: translateY(-2px); filter: brightness(1.08); box-shadow: 0 16px 36px rgba(191,130,25,.23); }
.button-small { min-height: 40px; padding: 0 18px; font-size: 11px; }
.button-large { min-height: 58px; padding-inline: 30px; }
.text-link { display: inline-flex; align-items: center; gap: 12px; font-size: 13px; color: #c2cbd3; }
.text-link span { color: var(--gold); }

.hero { min-height: 820px; padding-top: 184px; display: flex; align-items: center; overflow: hidden; }
.hero-grid { display: grid; grid-template-columns: 1.04fr .96fr; align-items: center; gap: 60px; }
.eyebrow, .kicker { color: var(--gold-2); font-size: 11px; font-weight: 650; letter-spacing: .2em; text-transform: uppercase; }
.eyebrow { display: flex; align-items: center; gap: 12px; margin-bottom: 28px; }
.eyebrow span { width: 30px; height: 1px; background: var(--gold); }
.hero h1, .section-heading h2, .performance-copy h2, .cta-inner h2 {
  margin: 0; font-weight: 420; letter-spacing: -.045em; line-height: 1.01;
}
.hero h1 { font-size: clamp(54px, 6vw, 82px); max-width: 780px; }
em { font-style: normal; color: var(--gold-2); }
.hero-lead { max-width: 630px; margin: 26px 0 34px; color: #aab5bf; font-size: 18px; line-height: 1.72; }
.hero-actions { display: flex; align-items: center; gap: 30px; flex-wrap: wrap; }
.hero-meta { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin-top: 56px; max-width: 620px; border-top: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); }
.hero-meta div { padding: 18px 0 16px; position: relative; }
.hero-meta div + div { padding-left: 24px; border-left: 1px solid var(--line-soft); }
.hero-meta strong { display: block; font-size: 14px; letter-spacing: .06em; }
.hero-meta span { display: block; color: var(--muted-2); font-size: 11px; margin-top: 5px; text-transform: uppercase; letter-spacing: .08em; }

.hero-visual { min-height: 580px; position: relative; display: grid; place-items: center; }
.mark-card { width: min(86%, 520px); aspect-ratio: 1; border-radius: 50%; display: grid; place-items: center; position: relative; z-index: 3; }
.mark-card::before { content:""; position:absolute; inset: 16%; border-radius:50%; background: radial-gradient(circle, rgba(221,168,54,.12), transparent 67%); filter: blur(12px); }
.mark-card img { width: 92%; filter: drop-shadow(0 36px 40px rgba(0,0,0,.38)); position:relative; z-index:2; }
.orbit { position: absolute; border-radius: 50%; border: 1px solid rgba(224,175,69,.22); }
.orbit-1 { width: 520px; height: 520px; animation: spin 36s linear infinite; }
.orbit-1::before, .orbit-1::after { content:""; position:absolute; width:7px; height:7px; background:var(--gold); border-radius:50%; box-shadow:0 0 14px rgba(220,169,58,.7); }
.orbit-1::before { left:50%; top:-4px; }.orbit-1::after { right:8%; bottom:20%; }
.orbit-2 { width: 390px; height: 390px; border-style: dashed; opacity:.42; animation: spinReverse 28s linear infinite; }
.crosshair { position:absolute; background: linear-gradient(90deg, transparent, rgba(255,255,255,.16), transparent); }
.crosshair-x { width: 90%; height:1px; }.crosshair-y { width:1px; height:90%; background:linear-gradient(180deg, transparent, rgba(255,255,255,.16), transparent); }
.signal-chip { position:absolute; z-index:4; padding:10px 12px; border:1px solid rgba(255,255,255,.08); background:rgba(3,10,18,.78); backdrop-filter:blur(10px); color:#aeb8c1; font-size:9px; letter-spacing:.15em; }
.signal-chip span { display:inline-block; width:6px; height:6px; background:var(--gold); border-radius:50%; margin-right:7px; box-shadow:0 0 10px var(--gold); }
.signal-chip-a { left:2%; top:35%; }.signal-chip-b { right:-1%; bottom:25%; }
.hero-glow { position:absolute; border-radius:50%; filter: blur(80px); pointer-events:none; }
.hero-glow-one { width:520px; height:520px; right:-160px; top:110px; background:rgba(16,51,77,.28); }
.hero-glow-two { width:340px; height:340px; left:-150px; bottom:-130px; background:rgba(203,142,30,.07); }

.ticker { border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft); overflow:hidden; background:#030b13; }
.ticker-track { width:max-content; min-width:100%; display:flex; gap:28px; align-items:center; padding:17px 0; color:#718090; font-size:10px; letter-spacing:.18em; animation:ticker 28s linear infinite; }
.ticker-track i { color:var(--gold); font-size:8px; font-style:normal; }

.split { display:grid; grid-template-columns: .95fr 1.05fr; gap:100px; }
.section-heading .kicker, .performance-copy .kicker { margin-bottom:22px; }
.section-heading h2, .performance-copy h2 { font-size: clamp(40px, 5vw, 64px); }
.section-copy { color:#a6b1ba; font-size:17px; line-height:1.78; padding-top:40px; }
.section-copy p { margin:0 0 20px; }
.section-heading.compact { max-width:650px; }
.section-heading.compact p { color:#94a1ad; line-height:1.7; max-width:600px; }
.feature-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:72px; }
.feature-card { padding:30px; min-height:255px; background:linear-gradient(180deg,rgba(11,28,45,.88),rgba(6,17,31,.74)); border:1px solid var(--line-soft); position:relative; overflow:hidden; }
.feature-card::after { content:""; position:absolute; left:0; bottom:0; width:70px; height:2px; background:var(--gold); }
.feature-number { color:#6e7d8d; font-size:11px; letter-spacing:.15em; margin-bottom:55px; }
.feature-card h3 { font-size:20px; margin:0 0 12px; font-weight:560; }
.feature-card p { color:#8796a4; line-height:1.65; margin:0; font-size:14px; }

.process-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:68px; border-top:1px solid var(--line-soft); }
.process-step { padding:30px 30px 8px 0; position:relative; }
.process-step + .process-step { padding-left:30px; border-left:1px solid var(--line-soft); }
.process-step > span { color:var(--gold); font-size:11px; letter-spacing:.12em; }
.process-line { width:34px; height:1px; background:var(--gold); margin:24px 0 45px; }
.process-step h3 { margin:0 0 12px; font-size:21px; font-weight:550; }
.process-step p { color:#80909e; font-size:14px; line-height:1.65; margin:0; }

.performance-section { overflow:hidden; }
.performance-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:70px; align-items:start; }
.performance-copy p { color:#98a6b3; line-height:1.72; font-size:16px; }
.notice { margin-top:28px; padding:18px 20px; border-left:2px solid var(--gold); background:rgba(222,170,56,.06); }
.notice strong { display:block; color:var(--gold-2); font-size:11px; text-transform:uppercase; letter-spacing:.14em; margin-bottom:8px; }
.notice span { color:#82909c; font-size:13px; line-height:1.6; }
.performance-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin-top:30px; background:var(--line-soft); border:1px solid var(--line-soft); }
.performance-stats div { background:#071421; padding:18px 20px; }
.performance-stats span { display:block; color:#68798a; font-size:9px; text-transform:uppercase; letter-spacing:.13em; margin-bottom:7px; }
.performance-stats strong { display:block; font-size:22px; font-weight:560; letter-spacing:-.025em; color:#e9edf0; }
.performance-evidence { display:grid; gap:16px; }
.backtest-card { display:block; overflow:hidden; transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.backtest-card:hover { transform:translateY(-2px); border-color:rgba(220,169,58,.3); box-shadow:0 34px 90px rgba(0,0,0,.32); }
.performance-image { width:100%; height:auto; display:block; background:#202020; }
.performance-image-main { min-height:150px; object-fit:cover; }
.report-card .performance-image { min-height:130px; object-fit:cover; object-position:top; }
.chart-card { border:1px solid var(--line-soft); background:linear-gradient(180deg,#091827,#06111e); box-shadow:0 30px 80px rgba(0,0,0,.25); }
.chart-head, .chart-footer { display:flex; justify-content:space-between; gap:20px; padding:18px 20px; color:#6f7f8e; font-size:9px; letter-spacing:.12em; }
.chart-head { border-bottom:1px solid var(--line-soft); }.chart-footer { border-top:1px solid var(--line-soft); }
.status-dot { display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--gold); margin-right:7px; box-shadow:0 0 10px rgba(220,169,58,.7); }
.chart { width:100%; display:block; padding:20px; }
.grid-lines line { stroke:rgba(255,255,255,.055); stroke-width:1; }
.chart-area { fill:url(#area); }.chart-line { fill:none; stroke:#e3b44b; stroke-width:2; vector-effect:non-scaling-stroke; filter:drop-shadow(0 0 8px rgba(220,169,58,.26)); }

.product-card { display:grid; grid-template-columns:1.25fr 1fr auto; align-items:center; gap:40px; padding:30px 34px; border:1px solid rgba(227,180,75,.22); background:linear-gradient(135deg,rgba(10,25,40,.86),rgba(4,13,23,.95)); }
.product-logo img { width:auto; max-height:115px; max-width:430px; object-fit:contain; object-position:left center; }
.product-details { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }
.product-detail span { display:block; color:#657485; font-size:9px; text-transform:uppercase; letter-spacing:.12em; margin-bottom:5px; }
.product-detail strong { font-size:13px; font-weight:560; }

.faq-grid { display:grid; grid-template-columns:.7fr 1.3fr; gap:90px; }
.faq-list details { border-top:1px solid var(--line-soft); }
.faq-list details:last-child { border-bottom:1px solid var(--line-soft); }
.faq-list summary { list-style:none; cursor:pointer; padding:22px 0; display:flex; justify-content:space-between; align-items:center; gap:20px; font-size:16px; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary span { color:var(--gold); font-size:20px; font-weight:300; transition:transform .2s ease; }
.faq-list details[open] summary span { transform:rotate(45deg); }
.faq-list details p { color:#8393a1; line-height:1.7; margin:0 0 24px; max-width:700px; font-size:14px; }

.cta-section { overflow:hidden; min-height:540px; display:grid; place-items:center; text-align:center; background:radial-gradient(circle at 50% 55%,rgba(31,62,83,.24),transparent 36%); }
.cta-inner { position:relative; z-index:2; }
.cta-inner h2 { font-size:clamp(44px,6vw,76px); margin:20px 0; }
.cta-inner p { color:#8e9ca9; margin-bottom:30px; }
.cta-orbit { position:absolute; width:680px; height:680px; border:1px solid rgba(220,169,58,.10); border-radius:50%; }
.cta-orbit::before { content:""; position:absolute; inset:70px; border:1px dashed rgba(220,169,58,.12); border-radius:50%; }

footer { border-top:1px solid var(--line-soft); background:#02080e; padding:44px 0 28px; }
.footer-grid { display:grid; grid-template-columns:1fr auto; grid-template-areas:"brand links" "copy links"; gap:10px 40px; align-items:center; }
.footer-brand { grid-area:brand; }.footer-brand img { width:270px; height:auto; object-fit:contain; object-position:left; }.footer-brand p { margin:8px 0 0; color:#536271; font-size:10px; letter-spacing:.13em; text-transform:uppercase; }
.footer-links { grid-area:links; display:flex; gap:24px; font-size:12px; color:#8796a4; }.footer-links a:hover { color:var(--gold-2); }
.footer-copy { grid-area:copy; color:#4f5e6b; font-size:11px; }
.risk-disclaimer { margin-top:30px; padding-top:22px; border-top:1px solid rgba(255,255,255,.05); color:#4f5e6c; font-size:10px; line-height:1.65; }
.risk-disclaimer strong { color:#6e7d89; }
.risk-disclaimer a { color:#a98a47; transition:color .2s ease; }
.risk-disclaimer a:hover { color:var(--gold-2); }

.reveal { opacity:0; transform:translateY(18px); transition:opacity .75s ease, transform .75s ease; }
.reveal.visible { opacity:1; transform:none; }
.delay-1 { transition-delay:.08s; }.delay-2 { transition-delay:.16s; }.delay-3 { transition-delay:.24s; }

@keyframes spin { to { transform:rotate(360deg); } }
@keyframes spinReverse { to { transform:rotate(-360deg); } }
@keyframes ticker { to { transform:translateX(-28%); } }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; }
  .reveal { opacity:1; transform:none; }
}

@media (max-width: 980px) {
  .nav-links { display:none; position:absolute; top:84px; left:0; right:0; padding:22px 24px 28px; background:#06111f; border-bottom:1px solid var(--line-soft); flex-direction:column; align-items:stretch; }
  .nav-links.open { display:flex; }
  .menu-toggle { display:block; }
  .hero { padding-top:145px; }
  .hero-grid, .split, .performance-grid, .faq-grid { grid-template-columns:1fr; }
  .hero-visual { min-height:480px; }
  .split, .performance-grid, .faq-grid { gap:45px; }
  .section-copy { padding-top:0; }
  .feature-grid { grid-template-columns:1fr; }
  .process-grid { grid-template-columns:repeat(2,1fr); }
  .process-step:nth-child(3) { border-left:0; padding-left:0; border-top:1px solid var(--line-soft); }
  .process-step:nth-child(4) { border-top:1px solid var(--line-soft); }
  .product-card { grid-template-columns:1fr; }
  .product-logo img { max-width:520px; }
}

@media (max-width: 650px) {
  .container { width:min(calc(100% - 30px), var(--max)); }
  .section { padding:82px 0; }
  .nav { height:82px; }.brand img { width:255px; height:auto; }.nav-links { top:82px; }
  .hero { min-height:auto; padding-top:132px; padding-bottom:70px; }
  .hero-grid { gap:35px; }
  .hero h1 { font-size:49px; }
  .hero-lead { font-size:16px; }
  .hero-meta { grid-template-columns:1fr; }
  .hero-meta div + div { padding-left:0; border-left:0; border-top:1px solid var(--line-soft); }
  .hero-visual { min-height:390px; }
  .orbit-1 { width:360px; height:360px; }.orbit-2 { width:280px; height:280px; }
  .signal-chip { display:none; }
  .section-heading h2, .performance-copy h2 { font-size:42px; }
  .process-grid { grid-template-columns:1fr; }
  .process-step + .process-step { border-left:0; padding-left:0; border-top:1px solid var(--line-soft); }
  .product-details { grid-template-columns:1fr 1fr; }
  .performance-stats { grid-template-columns:1fr 1fr; }
  .footer-grid { grid-template-columns:1fr; grid-template-areas:"brand" "links" "copy"; gap:24px; }
  .footer-links { flex-wrap:wrap; }
  .cta-inner h2 { font-size:44px; }
}


/* Secondary pages */
.subpage-shell { min-height:100vh; background:radial-gradient(circle at 75% 5%,rgba(18,56,83,.25),transparent 30%),linear-gradient(180deg,#071421 0%,#030a12 100%); }
.subpage-main { padding-top:96px; }
.subpage-hero { padding:105px 0 68px; border-bottom:1px solid var(--line-soft); position:relative; overflow:hidden; }
.subpage-hero::after { content:""; position:absolute; width:420px; height:420px; border:1px solid rgba(220,169,58,.09); border-radius:50%; right:-130px; top:-150px; }
.subpage-hero h1 { margin:16px 0 20px; max-width:900px; font-size:clamp(48px,6vw,76px); font-weight:420; letter-spacing:-.045em; line-height:1.02; }
.subpage-hero p { max-width:760px; color:#9aa8b5; font-size:17px; line-height:1.72; margin:0; }
.subpage-content { padding:76px 0 110px; }
.content-card { max-width:900px; border:1px solid var(--line-soft); background:linear-gradient(180deg,rgba(10,24,40,.88),rgba(5,15,25,.9)); padding:38px; }
.content-card + .content-card { margin-top:18px; }
.content-card h2 { margin:0 0 15px; font-size:25px; font-weight:540; letter-spacing:-.02em; }
.content-card p, .content-card li { color:#92a0ad; font-size:15px; line-height:1.78; }
.content-card p:last-child { margin-bottom:0; }
.content-card ul { margin:12px 0 0; padding-left:20px; }
.content-card li + li { margin-top:8px; }
.contact-panel { max-width:760px; padding:42px; border:1px solid rgba(227,180,75,.22); background:linear-gradient(135deg,rgba(10,25,40,.92),rgba(4,13,23,.96)); }
.contact-label { color:#68798a; font-size:10px; letter-spacing:.16em; text-transform:uppercase; margin-bottom:12px; }
.contact-email { display:block; color:var(--gold-2); font-size:clamp(24px,4vw,40px); font-weight:520; letter-spacing:-.025em; overflow-wrap:anywhere; }
.contact-note { color:#8796a4; margin:18px 0 0; line-height:1.7; }
.subpage-actions { display:flex; gap:14px; flex-wrap:wrap; margin-top:30px; }
.button-secondary { background:transparent; color:#ccd4da; border-color:rgba(255,255,255,.15); box-shadow:none; }
.button-secondary:hover { background:rgba(255,255,255,.04); box-shadow:none; }
.legal-meta { margin-top:26px; color:#586979; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
@media (max-width:650px) {
  .subpage-main { padding-top:82px; }
  .subpage-hero { padding:78px 0 54px; }
  .subpage-content { padding:52px 0 80px; }
  .content-card, .contact-panel { padding:26px 22px; }
}

/* Publication polish: resilient content, readable labels and responsive navigation. */
:root { --muted-2: #94a4b4; }
html { scroll-padding-top: 112px; }
:focus-visible { outline: 3px solid var(--gold-2); outline-offset: 5px; }
.skip-link { position: fixed; top: 8px; left: 16px; z-index: 100; padding: 12px 18px; background: var(--gold-2); color: #07111b; transform: translateY(-160%); }
.skip-link:focus { transform: none; }
.reveal { opacity: 1; transform: none; }
.nav-links, .button, .button-small, .text-link, .footer-links { font-size: .875rem; }
.eyebrow, .kicker, .signal-chip, .ticker-track, .feature-number, .process-step > span { font-size: .75rem; }
.hero-meta span, .notice strong, .chart-head, .chart-footer, .footer-brand p, .footer-copy, .legal-meta { font-size: .75rem; color: #9ba9b6; }
.performance-stats span, .product-detail span, .contact-label { font-size: .875rem; color: #a0aebc; letter-spacing: .07em; }
.product-detail strong { font-size: 1rem; }
.feature-card p, .process-step p, .faq-list details p, .content-card p, .content-card li { font-size: 1rem; }
.notice span, .risk-disclaimer { font-size: .875rem; color: #a0aebc; }
.risk-disclaimer strong { color: #c5cdd4; }
.risk-disclaimer a { color: var(--gold-2); }
.chart-head, .chart-footer { flex-wrap: wrap; gap: 10px; }
.product-card { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.product-card > .button { grid-column: 1 / -1; justify-self: start; }
.product-logo img { max-width: 100%; height: auto; }
.contact-email:hover { text-decoration: underline; text-underline-offset: .15em; }

.nav .brand { min-width: 0; flex-shrink: 1; }
.nav .brand img { max-width: 100%; }
@media (min-width: 981px) and (max-width: 1200px) {
  .brand img { width: 270px; }
  .nav-links { gap: 18px; }
}
@media (max-width: 980px) {
  .menu-toggle { display: none; min-height: 44px; padding: 8px; flex-shrink: 0; }
  .nav-links { top: 100%; max-height: calc(100dvh - 96px); overflow-y: auto; }
  .menu-ready .menu-toggle { display: block; }
  .nav-links a { min-height: 44px; display: flex; align-items: center; }
  html:not(.menu-ready) .site-shell .nav-wrap { position: relative; }
  html:not(.menu-ready) .site-shell .nav { height: auto; flex-wrap: wrap; padding-block: 16px; }
  html:not(.menu-ready) .site-shell .nav-links { display: flex; position: static; width: 100%; padding: 0; }
  .product-card { grid-template-columns: minmax(0,1fr); }
  .product-card > .button { grid-column: auto; }
}
@media (max-width: 650px) {
  html { scroll-padding-top: 96px; }
  .nav { gap: 12px; }
  .nav .brand img { width: min(255px, 54vw); }
  .nav > .button { font-size: .75rem; padding-inline: 10px; max-width: 42%; }
  .nav-links { max-height: calc(100dvh - 82px); }
  .hero h1 { font-size: clamp(2.5rem, 10vw, 3.0625rem); }
  .hero-visual { min-height: 330px; }
  .orbit-1 { width: min(360px, 88vw); height: auto; aspect-ratio: 1; }
  .orbit-2 { width: min(280px, 68vw); height: auto; aspect-ratio: 1; }
  .eyebrow { letter-spacing: .12em; line-height: 1.6; }
  .product-card { padding: 26px 22px; }
  .button { white-space: normal; text-align: center; padding-block: 12px; }
}

@media (max-width: 650px) { .contact-email { font-size: clamp(1.125rem, 5vw, 1.5rem); } }


/* Preserve the complete original report at every screen size. */
.performance-image-main, .report-card .performance-image { min-height: 0; object-fit: contain; }

/* Reveal only when the observer is available; otherwise content stays visible. */
@media (prefers-reduced-motion: no-preference) {
  .reveal.reveal-pending { opacity: 0; transform: translateY(18px); }
  .reveal.reveal-pending:focus-within { opacity: 1; transform: none; }
}

