/* Lifted lettering — shared by the app, the fund page and the landing page.
   Moved out of theme.css so a page with its own palette (landing.html) can
   take the lettering without the theme's colours. */

/* ═══════════════════════════════════════════════════════════════════════
   LIFTED LETTERING  (html.sn-lift, switched from the header "Aa" button)
   ───────────────────────────────────────────────────────────────────────
   Every theme. Gill Sans letters with Outfit figures, letters that sit
   slightly raised off the card. The shadows have no blur at all: a hard
   1px step just below each glyph (2px stacked for headings and big
   figures), so the letters read as raised but every edge stays sharp — a
   blurred halo made the text look out of focus. No heavy weights — every
   bold request tops out at SemiBold, so the depth comes from the step.
   ═══════════════════════════════════════════════════════════════════════ */
/* Same faces as the soft-neutral ones, capped: 500 and up is SemiBold. For the
   variable Outfit face the declared range clamps the weight, so 800 draws at 600. */
@font-face {
  font-family: 'SN Lift Digits';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/outfit/v15/QGYvz_MVcBeNP4NJtEtqUYLknw.woff2) format('woff2');
  unicode-range: U+0030-0039, U+002B-002E, U+0025, U+2212;
}
@font-face { font-family: 'SN Lift Letters'; font-style: normal; font-weight: 100 349; src: local('GillSans-Light'), local('Gill Sans Light'); }
@font-face { font-family: 'SN Lift Letters'; font-style: normal; font-weight: 350 499; src: local('GillSans'), local('Gill Sans'); }
@font-face { font-family: 'SN Lift Letters'; font-style: normal; font-weight: 500 1000; src: local('GillSans-SemiBold'), local('Gill Sans SemiBold'); }
@font-face { font-family: 'SN Lift Letters'; font-style: italic; font-weight: 100 349; src: local('GillSans-LightItalic'), local('Gill Sans Light Italic'); }
@font-face { font-family: 'SN Lift Letters'; font-style: italic; font-weight: 350 499; src: local('GillSans-Italic'), local('Gill Sans Italic'); }
@font-face { font-family: 'SN Lift Letters'; font-style: italic; font-weight: 500 1000; src: local('GillSans-SemiBoldItalic'), local('Gill Sans SemiBold Italic'); }

/* Dark themes (Midnight, Carbon): light text on a dark card, so the step is
   a deep black to read as depth. */
:root.sn-lift {
  --sn-font: 'SN Lift Digits', 'SN Lift Letters', 'Gill Sans MT', 'Cabin', 'Seravek', Calibri, 'Trebuchet MS', sans-serif;
  --sn-lift-sm: 0 1px 0 rgba(0, 0, 0, .70);
  --sn-lift-lg: 0 1px 0 rgba(0, 0, 0, .75), 0 2px 0 rgba(0, 0, 0, .40);
}
/* Soft Neutral: a faint navy step on the warm white card — dark enough to
   lift the letter, light enough not to read as a second outline. */
:root[data-theme="soft-neutral"].sn-lift {
  --sn-lift-sm: 0 1px 0 rgba(31, 42, 68, .14);
  --sn-lift-lg: 0 1px 0 rgba(31, 42, 68, .20), 0 2px 0 rgba(31, 42, 68, .09);
}
:root.sn-lift *:not(code):not(pre):not(kbd):not(samp):not(.mono):not([class*="mono"]) {
  font-family: var(--sn-font) !important;
}
:root.sn-lift body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-kerning: normal;
  letter-spacing: .005em;
  text-shadow: var(--sn-lift-sm);
}
:root[data-theme="soft-neutral"].sn-lift body { color: var(--sn-ink); }
:root.sn-lift :is(h1, h2, h3, h4, h5, h6, .page-title, .card-title,
  .wealth-card-title, .n2-card-head h3, .mp-panel h3, .mt-panel h3, .section-card h3) {
  font-weight: 500 !important;
  letter-spacing: .01em !important;
  text-shadow: var(--sn-lift-lg);
}
:root.sn-lift :where(.stat-value, .mp-kpi .v, .mt-kpi .v, .n2-kpi .v2, .n2-flow .amt,
  .home-stat-val, .analytics-kpi-value, .ret-kpi .v, .mp-vc-nav, .mp-nav-v, .idx-stat .px) {
  font-weight: 500 !important;
  text-shadow: var(--sn-lift-lg);
}
/* Form fields, code, filled buttons and gradient/highlight text stay flat —
   a shadow inside transparent/gradient text or under dark ink causes dark hollow glyphs. */
:root.sn-lift :is(input, textarea, select, option, code, pre, kbd,
  .btn-primary, .ce-hilo-toggle, canvas, .hero-highlight, .hero h1, .cta-section h2, .section-title,
  .page-title, .mobile-page-title, .login-title, .logo-title, .logo-span-1, .logo-span-2,
  .logo-name, .home-title-accent, .ph-title,
  [style*="-webkit-background-clip: text"], [style*="background-clip: text"],
  [style*="-webkit-text-fill-color: transparent"], [style*="-webkit-text-fill-color:transparent"]) {
  text-shadow: none !important;
}

:root.sn-lift .hero h1,
:root.sn-lift .section-title,
:root.sn-lift .cta-section h2 {
  font-weight: 900 !important;
  text-shadow: none !important;
}

/* The header switch between lifted and flat lettering. */
#sn-type-btn {
  display: inline-flex; align-items: center; justify-content: center;
  font-size: .78rem; font-weight: 500; letter-spacing: .01em; min-width: 30px;
}
:root.sn-lift #sn-type-btn {
  background: var(--sel-fill, #6bbf2a) !important; color: var(--sel-ink, #10210a) !important;
  border-color: #4f8f1c !important;
  text-shadow: 0 1px 1px rgba(16, 33, 10, .25) !important;
}
