/* ============================================================
   LA ISLA NETWORK — Colors, Type, & Tokens
   Namespace: --lin_
   Version: 1.0 · March 2026
   Font: Inter · Grid: 8px
   ============================================================ */

/* ── FONT FACES (local + Google Fonts fallback) ───────────── */
@font-face {
  font-family: 'Inter';
  src: url("../assets/fonts/font-4b2e2e1f-0b1f-4e88-bec0-916a01b03782.ttf") format('truetype-variations');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url("../assets/fonts/font-723b9b1c-1db7-4496-9958-5ac07baf4ff5.ttf") format('truetype-variations');
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

:root {
  /* ── BRAND BLUE (from logo chevrons #6399AF) ───────────── */
  --lin_blue-100:     #E8F1F5;   /* Background wash, hover tints */
  --lin_blue-300:     #A8C8D6;   /* Subtle accents, borders */
  --lin_blue-400:     #85B0C3;   /* Light accent, icons on dark */
  --lin_blue-500:     #6399AF;   /* Primary · logo · CTA · links */
  --lin_blue-600:     #4D7D93;   /* Hover */
  --lin_blue-700:     #3A6175;   /* Active / pressed */

  /* ── NAVY (dark UI base) ───────────────────────────────── */
  --lin_navy-600:     #3D4E60;
  --lin_navy-700:     #2E3A4A;
  --lin_navy-800:     #1A2330;   /* Header bg · primary dark */
  --lin_navy-900:     #0D0F10;   /* Near-black · footer */

  /* ── NEUTRALS ──────────────────────────────────────────── */
  --lin_grey-100:     #EEF1F3;
  --lin_grey-200:     #C5D0D6;
  --lin_grey-300:     #A0B0B8;
  --lin_grey-400:     #6B7D87;
  --lin_grey-500:     #3D4E56;

  /* ── TEXT ──────────────────────────────────────────────── */
  --lin_text-primary:   #1A2330;
  --lin_text-body:      #3D4E56;
  --lin_text-muted:     #6B7D87;
  --lin_text-inverse:   #FFFFFF;

  /* ── SURFACES ──────────────────────────────────────────── */
  --lin_surface-white:  #FFFFFF;
  --lin_surface-light:  #EEF1F3;
  --lin_surface-dark:   #2E3A4A;
  --lin_surface-navy:   #1A2330;

  /* ── SEMANTIC STATES ───────────────────────────────────── */
  --lin_focus:          #9CBECF;
  --lin_error:          #E8685A;
  --lin_success:        #7DDBB8;
  --lin_warning:        #F2C96A;

  /* ── CHART PALETTE (sequential order) ──────────────────── */
  --lin_chart-1:        #D6E4EC;
  --lin_chart-2:        #E8685A;
  --lin_chart-3:        #F2C96A;
  --lin_chart-4:        #7DDBB8;
  --lin_chart-5:        #3D4E60;
  --lin_chart-6:        #2A3545;
  --lin_chart-7:        #E0EBF0;

  /* ── LOGO-ONLY (do not use in UI) ──────────────────────── */
  --lin_logo-olive:     #606637;

  /* ── TYPOGRAPHY ────────────────────────────────────────── */
  --lin_font-family:   'Inter', -apple-system, BlinkMacSystemFont, sans-serif; /* @kind font */
  --lin_font-mono:     'SF Mono', 'Fira Code', ui-monospace, monospace; /* @kind font */

  --lin_text-xs:    0.75rem;    /* 12 */
  --lin_text-sm:    0.875rem;   /* 14 */
  --lin_text-base:  1rem;       /* 16 */
  --lin_text-lg:    1.125rem;   /* 18 */
  --lin_text-xl:    1.25rem;    /* 20 */
  --lin_text-2xl:   1.5rem;     /* 24 */
  --lin_text-3xl:   1.875rem;   /* 30 */
  --lin_text-4xl:   2.25rem;    /* 36 */
  --lin_text-5xl:   3rem;       /* 48 */
  --lin_text-6xl:   3.75rem;    /* 60 */

  --lin_weight-light:    300; /* @kind font */
  --lin_weight-regular:  400; /* @kind font */
  --lin_weight-medium:   500; /* @kind font */
  --lin_weight-semibold: 600; /* @kind font */
  --lin_weight-bold:     700; /* @kind font */

  --lin_leading-tight:   1.2; /* @kind font */
  --lin_leading-snug:    1.35; /* @kind font */
  --lin_leading-normal:  1.5; /* @kind font */
  --lin_leading-relaxed: 1.65; /* @kind font */

  --lin_tracking-tight:  -0.02em; /* @kind font */
  --lin_tracking-normal:  0em; /* @kind font */
  --lin_tracking-wide:    0.04em; /* @kind font */
  --lin_tracking-widest:  0.1em; /* @kind font */

  /* ── SPACING (8px grid) ────────────────────────────────── */
  --lin_space-1:   0.25rem;
  --lin_space-2:   0.5rem;
  --lin_space-3:   0.75rem;
  --lin_space-4:   1rem;
  --lin_space-5:   1.25rem;
  --lin_space-6:   1.5rem;
  --lin_space-8:   2rem;
  --lin_space-10:  2.5rem;
  --lin_space-12:  3rem;
  --lin_space-16:  4rem;
  --lin_space-20:  5rem;
  --lin_space-24:  6rem;

  /* ── BORDER RADIUS ─────────────────────────────────────── */
  --lin_radius-sm:   4px;
  --lin_radius-md:   8px;
  --lin_radius-lg:   12px;
  --lin_radius-xl:   16px;
  --lin_radius-full: 9999px;

  /* ── SHADOWS ───────────────────────────────────────────── */
  --lin_shadow-sm:  0 1px 3px rgba(30,50,65,0.08), 0 1px 2px rgba(30,50,65,0.06);
  --lin_shadow-md:  0 4px 12px rgba(30,50,65,0.10), 0 2px 4px rgba(30,50,65,0.06);
  --lin_shadow-lg:  0 12px 32px rgba(30,50,65,0.12), 0 4px 8px rgba(30,50,65,0.06);
  --lin_shadow-xl:  0 24px 48px rgba(30,50,65,0.16);

  /* ── BORDERS ───────────────────────────────────────────── */
  --lin_border-light:  1px solid #C5D0D6; /* @kind color */
  --lin_border-medium: 1px solid #A8C8D6; /* @kind color */
  --lin_border-dark:   1px solid #2E3A4A; /* @kind color */

  /* ── TRANSITIONS ───────────────────────────────────────── */
  --lin_transition-fast:   150ms ease; /* @kind other */
  --lin_transition-normal: 250ms ease; /* @kind other */
  --lin_transition-slow:   400ms ease; /* @kind other */

  /* ── LAYOUT ────────────────────────────────────────────── */
  --lin_container-sm:   640px; /* @kind other */
  --lin_container-md:   768px; /* @kind other */
  --lin_container-lg:   1024px; /* @kind other */
  --lin_container-xl:   1280px; /* @kind other */
  --lin_container-2xl:  1440px; /* @kind other */

  /* ── SEMANTIC TYPE ROLES ───────────────────────────────── */
  --lin_fg-heading:     var(--lin_text-primary);
  --lin_fg-body:        var(--lin_text-body);
  --lin_fg-muted:       var(--lin_text-muted);
  --lin_fg-inverse:     var(--lin_text-inverse);
  --lin_fg-accent:      var(--lin_blue-500);
}

/* ── BASE ─────────────────────────────────────────────────── */
html, body {
  font-family: var(--lin_font-family);
  color: var(--lin_text-primary);
  background: var(--lin_surface-white);
  font-size: var(--lin_text-base);
  line-height: var(--lin_leading-relaxed);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* ── SEMANTIC TYPE ─────────────────────────────────────────── */
.lin-overline {
  font-size: var(--lin_text-xs);
  font-weight: var(--lin_weight-semibold);
  letter-spacing: var(--lin_tracking-widest);
  text-transform: uppercase;
  color: var(--lin_blue-500);
}

.lin-display, h1.lin {
  font-size: var(--lin_text-5xl);
  font-weight: var(--lin_weight-bold);
  letter-spacing: var(--lin_tracking-tight);
  line-height: var(--lin_leading-tight);
  color: var(--lin_text-primary);
}
.lin-h1 {
  font-size: var(--lin_text-4xl);
  font-weight: var(--lin_weight-bold);
  letter-spacing: var(--lin_tracking-tight);
  line-height: var(--lin_leading-tight);
  color: var(--lin_text-primary);
}
.lin-h2 {
  font-size: var(--lin_text-3xl);
  font-weight: var(--lin_weight-semibold);
  letter-spacing: var(--lin_tracking-tight);
  line-height: var(--lin_leading-snug);
  color: var(--lin_text-primary);
}
.lin-h3 {
  font-size: var(--lin_text-2xl);
  font-weight: var(--lin_weight-semibold);
  line-height: var(--lin_leading-snug);
  color: var(--lin_text-primary);
}
.lin-h4 {
  font-size: var(--lin_text-xl);
  font-weight: var(--lin_weight-semibold);
  line-height: var(--lin_leading-snug);
  color: var(--lin_text-primary);
}
.lin-lead {
  font-size: var(--lin_text-lg);
  font-weight: var(--lin_weight-regular);
  line-height: var(--lin_leading-relaxed);
  color: var(--lin_text-body);
}
.lin-body {
  font-size: var(--lin_text-base);
  font-weight: var(--lin_weight-regular);
  line-height: var(--lin_leading-relaxed);
  color: var(--lin_text-body);
}
.lin-small {
  font-size: var(--lin_text-sm);
  line-height: var(--lin_leading-normal);
  color: var(--lin_text-muted);
}
.lin-caption {
  font-size: var(--lin_text-xs);
  color: var(--lin_text-muted);
}


/* cyrillic-ext */
@font-face {
  font-family: 'Inter Tight';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-08bb678f-9e1c-434a-8392-84aaa58415b5.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Inter Tight';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-1f6f7a30-dea9-4281-8751-16cc0076339f.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter Tight';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-003a5b04-0b1c-4b82-8882-2a0c854770dd.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter Tight';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-d37dadff-7ad1-4409-a42f-ecfd797930c4.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Inter Tight';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-d24a45ec-37d8-464b-98cd-37851f90e977.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inter Tight';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-99bd2d83-4a6e-4cbb-851a-27a4dd2d6c5d.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter Tight';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-627a4053-bec2-46fa-9320-f7844ae065a4.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-748a702d-7e9e-4886-9f19-b2cb1b26fa12.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-39de346a-c3aa-4377-a085-1ed8659e0a82.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-b1283863-1932-4152-b410-d0727a470f20.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-9f0ff91f-6196-4a26-a92a-cbc9e9b40b10.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-7505d9cf-8caf-4e13-a096-ac0209f18514.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-d0658eba-e466-4342-93ea-a7f09a9fe958.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../assets/fonts/font-6a408327-160c-4de1-b8c4-857c53cfbec1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}



    :root { --lin_font-display: 'Inter Tight', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; --lin_font-mono: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; }
    html, body { margin: 0; padding: 0; background: #0D0F10; }

    ::selection { background: #A8C8D6; color: #1A2330; }
    @keyframes chPulse { 0%{transform:scale(1);opacity:.9} 70%{transform:scale(2.6);opacity:0} 100%{transform:scale(2.6);opacity:0} }
    .ch00-pulse-ring { animation: chPulse 2.2s ease-out infinite; }
    .ch03-card .ch03-reveal { opacity: 0; transform: translateY(8px); transition: opacity .35s ease, transform .35s ease; pointer-events: none; z-index: 4; }
    .ch03-card .ch03-base { opacity: 1; transform: translateY(0); transition: opacity .35s ease, transform .35s ease; z-index: 4; }
    .ch03-card.is-revealed .ch03-base { opacity: 0; transform: translateY(-6px); }
    .ch03-card.is-revealed .ch03-reveal { opacity: 1; transform: translateY(0); }
    .ch03-card .asset-image { transition: transform .8s ease; }
    .ch03-card:hover .asset-image { transform: scale(1.02); }
    .ch03-card .ch03-thermal { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center center; opacity: 0; transition: opacity .5s ease; pointer-events: none; z-index: 2; }
    .ch03-card:hover .ch03-thermal, .ch03-card.is-revealed .ch03-thermal { opacity: 1; }
  

.ch00-logo {
  color: inherit;
  text-decoration: none;
  border-bottom: 0;
  transition: none;
}
.ch00-logo:hover,
.ch00-logo:focus-visible {
  color: inherit;
  border-bottom-color: transparent;
}
.ch00-logo:focus-visible {
  outline: 2px solid var(--lin_blue-300);
  outline-offset: 4px;
}
.ch07-logo {
  display: flex;
  color: inherit;
  text-decoration: none;
  border-bottom: 0;
  filter: none;
}
.ch07-logo svg {
  width: 220px;
  height: auto;
}
.ch07-logo:hover,
.ch07-logo:focus-visible {
  color: inherit;
  border-bottom-color: transparent;
}
.ch07-logo:focus-visible {
  outline: 2px solid var(--lin_blue-500);
  outline-offset: 4px;
}
.ch07-logo svg * {
  fill: var(--lin_blue-500) !important;
}
.ch07-link {
  color: var(--lin_blue-500);
  text-decoration: none;
  border-bottom: 2px solid transparent;
  transition: color 150ms ease, border-color 150ms ease;
}
.ch07-link:hover,
.ch07-link:focus-visible {
  color: var(--lin_blue-600);
  border-bottom-color: var(--lin_blue-500);
}
.ch07-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 22px;
  border: 1px solid var(--lin_blue-600);
  border-radius: 8px;
  background: var(--lin_blue-600);
  color: #fff;
  text-decoration: none;
  box-shadow: 0 10px 24px rgba(30, 50, 65, .18);
  transition: background 150ms ease, border-color 150ms ease, color 150ms ease, box-shadow 150ms ease;
}
.ch07-button:hover,
.ch07-button:focus-visible {
  border-color: var(--lin_blue-700);
  background: var(--lin_blue-700);
  color: #fff;
  box-shadow: 0 12px 28px rgba(30, 50, 65, .24);
}
.ch07-button:focus-visible {
  outline: 2px solid var(--lin_blue-300);
  outline-offset: 4px;
}
.ch07-donate {
  color: inherit;
  text-decoration: none;
  border-bottom: 0;
}
.ch07-donate:hover,
.ch07-donate:focus-visible {
  color: var(--lin_blue-500);
}
#ch07 .ch07-line {
  color: var(--lin_text-inverse) !important;
}
#ch07 .ch07-links .ch07-link {
  color: var(--lin_blue-300);
}
#ch07 .ch07-links .ch07-link:hover,
#ch07 .ch07-links .ch07-link:focus-visible {
  color: var(--lin_blue-100);
}
#ch07 .ch07-viudas {
  color: var(--lin_blue-300) !important;
}
.ch07-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 200px;
  min-height: 200px;
  padding: 0 8vw;
  background: #000;
}
.ch01-metric {
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 12px 32px rgba(13, 15, 16, .18);
}
.ch01-headline,
.ch03-title {
  white-space: nowrap;
}
.ch04-step-icon {
  width: clamp(64px, 7vw, 96px);
  height: clamp(64px, 7vw, 96px);
  margin-bottom: 18px;
  background: var(--lin_blue-500);
  -webkit-mask: var(--ch04-icon) center / contain no-repeat;
  mask: var(--ch04-icon) center / contain no-repeat;
}
.ch04b-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ch04b-interior {
  justify-content: flex-start !important;
}
.ch04b-content {
  width: 100%;
}
.ch06-scroll {
  position: relative;
  min-height: 360vh;
  background: var(--lin_navy-900);
  color: var(--lin_text-inverse);
}
.ch06-scroll__stage {
  position: sticky;
  top: 0;
  height: 100vh;
  min-height: 620px;
  overflow: hidden;
  background:
    radial-gradient(circle at 66% 46%, rgba(99,153,175,.18), transparent 31%),
    linear-gradient(180deg, var(--lin_navy-900), var(--lin_navy-800));
}
.ch06-scroll__header {
  position: absolute;
  z-index: 5;
  top: clamp(28px, 7vh, 80px);
  left: clamp(24px, 8vw, 140px);
  right: clamp(24px, 8vw, 140px);
  width: auto;
  transition: opacity 240ms ease, transform 240ms ease;
}
.ch06-scroll__kicker {
  margin: 0 0 22px;
  color: var(--lin_blue-400);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.ch06-scroll__headline {
  margin: 0;
  color: var(--lin_text-inverse);
  font-family: var(--lin_font-display);
  font-size: clamp(36px, 5vw, 76px);
  font-weight: 300;
  letter-spacing: -.025em;
  line-height: 1.05;
}
.ch06-scroll__proof {
  position: absolute;
  z-index: 5;
  left: 50%;
  bottom: clamp(140px, 18vh, 180px);
  width: max-content;
  margin: 0;
  color: var(--lin_text-inverse);
  font-family: var(--lin_font-family);
  font-size: clamp(16px, 2.4vw, 34px);
  font-weight: 400;
  letter-spacing: -.025em;
  line-height: 1.05;
  text-align: center;
  white-space: nowrap;
  opacity: 0;
  transform: translate(-50%, 26px);
  transition: opacity 240ms ease, transform 240ms ease;
}
.ch06-scroll__source {
  position: absolute;
  z-index: 5;
  left: clamp(24px, 8vw, 140px);
  bottom: 24px;
  max-width: 430px;
  color: rgba(168, 200, 214, .65);
  font-size: 11px;
  line-height: 1.4;
}
.ch06-scroll__source a {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: transparent;
  transition: text-decoration-color 150ms ease;
}
.ch06-scroll__source a:hover,
.ch06-scroll__source a:focus-visible {
  text-decoration-color: currentColor;
}
.ch06-scroll__svg {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  opacity: .96;
}
.ch06-scroll__grid {
  position: absolute;
  z-index: 1;
  left: -100%;
  top: -100%;
  width: 300%;
  height: 300%;
  pointer-events: none;
  will-change: transform;
  background-image:
    repeating-linear-gradient(0deg, rgba(168, 200, 214, .14) 0 1px, transparent 1px 90px),
    repeating-linear-gradient(90deg, rgba(168, 200, 214, .14) 0 1px, transparent 1px 90px);
  background-size: 90px 90px;
}
.ch06-scroll__trail {
  fill: none;
  stroke: rgba(99, 153, 175, .22);
  stroke-width: 18;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}
.ch06-scroll__pulse {
  fill: none;
  stroke: url(#ch06-pulse-gradient);
  stroke-width: 8;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
  filter: drop-shadow(0 0 12px rgba(99, 153, 175, .72));
}
.ch06-scroll__halo {
  fill: var(--lin_blue-400);
  opacity: .24;
  filter: url(#ch06-dot-glow);
}
.ch06-scroll__dot {
  fill: var(--lin_text-inverse);
  stroke: var(--lin_blue-300);
  stroke-width: 2;
  vector-effect: non-scaling-stroke;
}
.ch06-scroll__pulse-box-anchor {
  opacity: 0;
  transform: scale(.92);
  transform-box: fill-box;
  transform-origin: center;
  transition: opacity 260ms ease, transform 260ms ease;
  will-change: opacity, transform;
}
.ch06-scroll__pulse-box {
  width: 250px;
  height: 104px;
  padding: 10px 12px;
  overflow: hidden;
  border: 1px solid rgba(168, 200, 214, .22);
  border-radius: 6px;
  background: rgba(13, 15, 16, .28);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  color: var(--lin_text-inverse);
  font-family: var(--lin_font-family);
}
.ch06-scroll__pulse-box-eyebrow {
  color: var(--lin_blue-300);
  font-size: 12px;
  letter-spacing: .12em;
  line-height: 1;
}
.ch06-scroll__pulse-box-value {
  margin-top: 2px;
  color: var(--lin_text-inverse);
  font-size: 42px;
  font-variant-numeric: tabular-nums;
  font-weight: 700;
  letter-spacing: -.055em;
  line-height: 1.05;
}
.ch06-scroll__pulse-box-label {
  margin-top: 4px;
  color: var(--lin_blue-300);
  font-family: var(--lin_font-family);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: .01em;
}
.ch06-scroll__callout {
  opacity: 0;
  transform: scale(.84);
  transform-box: fill-box;
  transform-origin: center;
  will-change: opacity, transform;
}
.ch06-scroll__callout-line {
  stroke: var(--lin_blue-300);
  stroke-width: 1.5;
  vector-effect: non-scaling-stroke;
}
.ch06-scroll__callout-label {
  fill: var(--lin_blue-300);
  font-family: var(--lin_font-family);
  font-size: 12px;
  font-weight: 400;
  letter-spacing: .16em;
  text-transform: uppercase;
  opacity: .85;
}
.ch05-panel {
  background: linear-gradient(180deg, #ffffff 5%, #6399af 50%, #3d4e60 100%);
}
.ch05-panel-intro {
  background: linear-gradient(180deg, #ffffff 5%, #6399af 50%, #3d4e60 100%);
}
.ch05-panel-intro-kicker {
  color: var(--lin_navy-700) !important;
}
.ch05-panel-intro-title {
  color: var(--lin_navy-800) !important;
}
.ch05b-interstitial {
  background: linear-gradient(180deg, #3d4e60 0%, var(--lin_navy-900) 100%) !important;
}
.ch05b-interstitial > div {
  width: 100%;
  max-width: none !important;
}
.ch05b-kicker {
  color: var(--lin_blue-300) !important;
}
.ch05b-title {
  color: var(--lin_text-inverse) !important;
  width: 100%;
  text-align: center;
  white-space: nowrap;
}
.ch05b-body {
  color: var(--lin_text-inverse) !important;
}
.ch05-panel-intro-subtitle {
  color: var(--lin_navy-800) !important;
}
.ch05-panel-stage-title {
  color: var(--lin_navy-800) !important;
}
.ch05-panel-stage-meta {
  color: var(--lin_navy-700) !important;
}
@media (max-width: 720px) {
  .ch03-cards {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .ch04-steps {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }
  .ch04-step {
    display: grid;
    grid-template-columns: minmax(64px, 18vw) 1fr;
    column-gap: 20px;
    align-items: start;
  }
  .ch04-step-icon {
    margin-bottom: 0;
    grid-row: span 2;
  }
  .ch04b-content {
    text-align: center;
  }
  .ch04b-metrics {
    justify-content: center !important;
    text-align: center;
  }
  .ch04b-metrics > div {
    min-width: 100% !important;
    text-align: center !important;
  }
  .ch04b-metrics > div > div:last-child {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .ch06-scroll__stage {
    min-height: 560px;
  }
  .ch06-scroll__header {
    top: 28px;
  }
  .ch06-scroll__headline {
    font-size: clamp(34px, 11vw, 58px);
  }
  .ch06-scroll__proof {
    bottom: 130px;
  }
  .ch06-scroll__callout-label {
    font-size: 10px;
  }
  .ch06-scroll__source {
    right: 24px;
    bottom: 22px;
    left: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ch06-scroll__header,
  .ch06-scroll__proof,
  .ch06-scroll__pulse-box-anchor,
  .ch06-scroll__callout {
    transition: none;
  }
}


.asset-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
