/* Minted / GrowthFi Matrix — global entry point.
   Consumers link this one file. Import list only; never inline a rule here.
   Values mirror the canonical source: Minted Website Dev Build css/tokens.css (md5 06c4404578de864613652f10ac2dc631, synced 2026-08-11). */
/* Minted — self-hosted variable fonts (latin + latin-ext subsets).
   Archivo: wdth 62-125 / wght 100-900 (display + body).
   JetBrains Mono: wght 100-800 (labels, buttons, nav).
   No Google Fonts request in production (GDPR + performance).
   Both families are WORKING FONTS pending client confirmation. */
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url("/assets/font-4c98b9d490d1698e.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}
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url("/assets/font-a75c792f980dc1db.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}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:100 800;font-display:swap;src:url("/assets/font-1e06740a02a443fb.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}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:100 800;font-display:swap;src:url("/assets/font-7db7affbce1fdee6.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}

/* Minted — color tokens. Two tiers: primitives hold raw values and are never
   referenced by a component; semantic tokens name a role and are the only thing
   components consume. Dark only: there is no light mode (print is a medium, see print.css).

   AMENDMENT 01 (2026-09-06) supersedes "green hairlines, never gray". Structure is
   carried by a NEUTRAL hairline; green is reserved for state. The reason is hue, not
   ratio: at these near-black luminances a green stroke and a neutral stroke measure
   the same (~1.4:1 against the fill), but the green one shares a hue family with the
   fill and so cannot be seen. See DEPTH-AMENDMENT.md section 0. */
:root{
  /* ---- primitives · screen ---- */
  --minted-green-100:#B9FFCC;   /* glow highlight, title halo, hover text */
  --minted-green-300:#24BF78;   /* bright accent, labels, borders, links, focus */
  --minted-green-400:#1A9961;   /* primary action hover */
  --minted-green-500:#16915C;   /* brand green, primary action */
  --minted-green-700:#0C6A46;   /* deep green fills, selection background */

  --minted-neutral-100:#FFFFFF; /* headline white */
  --minted-neutral-200:#E2F0D9; /* secondary text */
  --minted-neutral-400:#C4D9CC; /* muted text, nav links */
  --minted-neutral-500:#96A79E; /* faint text, legal (7.97:1 on dark-900) */

  --minted-dark-900:#050806;    /* page field */
  --minted-dark-850:#08110D;    /* surface, cards */
  --minted-dark-800:#0A1A14;    /* grid cell fill */
  --minted-dark-750:#0E1712;    /* raised ground: cards, tiles (amendment 01) */
  --minted-dark-700:#131E18;    /* raised ground, tinted variant */
  --minted-dark-950:#060B08;    /* recessed ground: matrix cells, inputs (amendment 01) */

  /* Neutral hairline primitives (amendment 01). Slightly green-tinted rather than
     pure white so they still belong to the ramp. Structure is neutral; green is state. */
  --minted-line-100:rgba(214,230,221,0.1);  /* faint: gridlines, matrix hairlines */
  --minted-line-200:rgba(214,230,221,0.14); /* structural: card edges, section rules */

  --minted-danger-500:#E5484D;  /* validation border */
  --minted-danger-200:#FF9B9E;  /* validation message text */

  /* ---- primitives · print (consumed only by the print semantic layer) ---- */
  --minted-paper-000:#FFFFFF;
  --minted-paper-050:#F5F8F6;
  --minted-paper-100:#E6F1EA;
  --minted-paper-200:#C9E3D4;
  --minted-ink-900:#050806;
  --minted-ink-600:#55645C;
  --minted-ink-line:#B4C3BB;

  /* ---- semantic · screen ---- */
  --minted-bg-page:var(--minted-dark-900);
  --minted-bg-surface:var(--minted-dark-850);
  --minted-bg-cell:var(--minted-dark-800);
  --minted-bg-cell-strong:color-mix(in srgb, var(--minted-green-700) 20%, var(--minted-dark-750)); /* tint OF the raised ground (amendment 01) */
  --minted-bg-hover-wash:rgba(36,191,120,0.1);        /* secondary button hover fill */
  --minted-surface-raised:var(--minted-dark-750);     /* things that sit above the field */
  --minted-surface-raised-hi:var(--minted-dark-700);  /* tinted raised variant */
  --minted-surface-recessed:var(--minted-dark-950);   /* things pressed into the panel */

  --minted-text-primary:var(--minted-neutral-100);    /* 20.12:1 on page */
  --minted-text-secondary:var(--minted-neutral-200);  /* 16.96:1 */
  --minted-text-muted:var(--minted-neutral-400);      /* 13.55:1 */
  --minted-text-faint:var(--minted-neutral-500);      /* 7.97:1 */
  --minted-text-accent:var(--minted-green-500);       /* LARGE TEXT ONLY on cell grounds (4.47:1 / 4.14:1) */
  --minted-text-label:var(--minted-green-300);        /* tracked mono labels, 8.43:1 */

  --minted-action-primary-bg:var(--minted-green-500);
  --minted-action-primary-bg-hover:var(--minted-green-400);
  --minted-action-primary-text:var(--minted-dark-900);
  --minted-action-secondary-border:var(--minted-green-300);
  --minted-action-secondary-text:var(--minted-green-300);
  --minted-action-secondary-bg-hover:rgba(36,191,120,0.1);

  --minted-stroke-grid:var(--minted-line-100);        /* background gridlines, matrix hairlines */
  --minted-stroke-divider:var(--minted-line-200);     /* card borders, section rules; separates by hue, not by ratio */
  --minted-stroke-active:var(--minted-green-300);     /* hover, selected, focus. The ONLY structural use of green */
  --minted-stroke-input:rgba(36,191,120,0.55);        /* form field boundary; 3.17:1 vs page, the tightest pass in the system */
  --minted-stroke-input-hover:rgba(36,191,120,0.7);   /* 4.51:1 */

  --minted-field-error:var(--minted-danger-500);
  --minted-field-error-text:var(--minted-danger-200);

  --minted-focus-ring-color:var(--minted-green-300);
  --minted-focus-ring:2px solid var(--minted-green-300); /* offset 2px, never animated, never removed */

  /* ---- gradients ---- */
  --minted-gradient-title:linear-gradient(180deg,#45A779 0%,#0F764D 100%); /* @kind color */ /* display treatments of the word MINTED only */
}

/* Minted — type tokens. Two typefaces, two jobs.
   Display formula: Archivo 700-800, font-stretch 115-125%, uppercase,
   letter-spacing -0.01em to -0.02em, line-height 0.95-1.14.
   Mono label formula: 500, uppercase, letter-spacing 0.14em-0.28em, --minted-text-label.
   Mono is never used for a sentence and never for body copy. */
:root{
  --minted-font-display:'Archivo', system-ui, sans-serif;
  --minted-font-body:'Archivo', system-ui, sans-serif;
  --minted-font-mono:'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

  --minted-text-base:17px;        /* html root size, marketing site */
  --minted-leading-body:1.6;
  --minted-leading-display:1.1;
  --minted-weight-btn:700;        /* all buttons; Josh approved the bolder look 2026-07-13 */
  --minted-track-label:0.28em;

  /* fluid scale · marketing site */
  --minted-size-hero:clamp(4.5rem,12vw,13rem);
  --minted-size-hero-mobile:clamp(2.4rem,14.5vw,5rem);
  --minted-size-headline:clamp(1.7rem,3.2vw,3rem);
  --minted-size-quote:clamp(2rem,5vw,4.4rem);
  --minted-size-h2:clamp(1.9rem,3.6vw,3.1rem);
  --minted-size-h3:clamp(1.7rem,3vw,2.6rem);
  --minted-size-card:clamp(1.3rem,2vw,1.9rem);
  --minted-size-lede:1.15rem;
  --minted-size-body:1rem;
  --minted-size-note:0.9rem;
  --minted-size-label:0.72rem;    /* mono, tracking 0.28em */
  --minted-size-btn:0.75rem;      /* mono, tracking 0.1em, weight 700 */

  /* app density · GrowthFi Matrix Tool. Same role names, values redefined at the
     root of the surface (the same pattern the print layer uses). */
  --minted-size-display:clamp(3.5rem,9vw,7rem);
  --minted-size-h1:clamp(2.5rem,5vw,4rem);
  --minted-size-tool-h2:clamp(1.75rem,3.2vw,2.5rem);
  --minted-size-tool-h3:1.375rem;
}

/* Minted — spacing, gutters, borders. Radius is zero everywhere, no exceptions. */
:root{
  --minted-cell:48px;                          /* background grid unit */
  --minted-pad-x:5vw;                          /* page gutter; 18px floor at 480px and below */
  --minted-space-1:6px;
  --minted-space-2:10px;                       /* card grid gap */
  --minted-space-3:18px;
  --minted-space-4:30px;
  --minted-space-5:clamp(40px,7vh,72px);       /* intra-section blocks */
  --minted-space-6:clamp(120px,18vh,220px);    /* section vertical padding */

  --minted-radius:0;                           /* sharp corners everywhere; no exceptions */
  --minted-border-hairline:1px solid var(--minted-stroke-divider);
  --minted-border-accent:1px solid var(--minted-green-300);
}
@media (max-width:480px){:root{--minted-pad-x:18px}}

/* Minted — shadows and interaction offsets. Glow is green, never neutral.
   Amendment 01 adds the two-plane depth set: one light source, fixed top-left. */
:root{
  --minted-shadow-card:0 14px 40px rgba(3,5,4,0.5);
  --minted-shadow-lift:0 18px 50px rgba(5,8,6,0.6), 0 0 34px rgba(36,191,120,0.18);      /* card hover */
  --minted-shadow-btn-hover:4px 4px 0 rgba(36,191,120,0.35), 0 0 34px rgba(22,145,92,0.35); /* hard offset plus glow */
  --minted-shadow-btn-hover-soft:4px 4px 0 rgba(36,191,120,0.2);                          /* secondary button */
  --minted-hover-shift:translate(-2px,-2px); /* @kind other */   /* button hover displacement */
  --minted-recede-opacity:0.75; /* @kind other */                /* non-hovered siblings; never lower, dimmed text stays AA legible */

  /* ---- depth · amendment 01 ----
     Light source is fixed top-left and there is never a second one.
     RAISED catches light on its top and left edges and casts down-right.
     RECESSED inverts it. Never nest raised inside raised. */
  --minted-lit-face:linear-gradient(158deg,rgba(255,255,255,0.055) 0%,rgba(255,255,255,0.012) 42%,rgba(0,0,0,0.1) 100%); /* @kind color */
  --minted-recessed-face:linear-gradient(180deg,rgba(0,0,0,0.34) 0%,rgba(0,0,0,0.05) 55%,rgba(255,255,255,0.03) 100%);   /* @kind color */
  --minted-bevel:inset 0 1px 0 rgba(255,255,255,0.1),inset 1px 0 0 rgba(255,255,255,0.045),inset -1px 0 0 rgba(0,0,0,0.4),inset 0 -1px 0 rgba(0,0,0,0.5); /* @kind shadow */
  --minted-bevel-lift:inset 0 1px 0 rgba(255,255,255,0.16),inset 1px 0 0 rgba(255,255,255,0.07),inset -1px 0 0 rgba(0,0,0,0.4),inset 0 -1px 0 rgba(0,0,0,0.5); /* @kind shadow */
  --minted-cast:6px 8px 0 rgba(2,4,3,0.55),14px 20px 44px rgba(2,4,3,0.7); /* @kind shadow */       /* hard offset + soft blur, both down-right */
  --minted-cast-lift:8px 11px 0 rgba(2,4,3,0.55),18px 26px 56px rgba(2,4,3,0.72); /* @kind shadow */
  --minted-press:inset 0 2px 5px rgba(0,0,0,0.55),inset 0 -1px 0 rgba(255,255,255,0.05); /* @kind shadow */
  --minted-press-deep:inset 0 2px 6px rgba(0,0,0,0.6),inset 0 -1px 0 rgba(255,255,255,0.05); /* @kind shadow */ /* form inputs */
}

/* Minted — motion. Opacity and transform only; every effect has a reduced-motion path.
   Everything moves on grid logic: cells materialize in place, elements translate
   along grid axes, staggers cascade from each section's origin corner. */
:root{
  --minted-ease-enter:cubic-bezier(0.16,1,0.3,1); /* @kind other */   /* entrances, reveals, lifts */
  --minted-ease-state:cubic-bezier(0.65,0,0.35,1); /* @kind other */  /* state changes, toggles */
  --minted-dur-fast:200ms; /* @kind other */       /* micro state changes */
  --minted-dur-base:300ms; /* @kind other */       /* larger state changes */
  --minted-dur-enter:650ms; /* @kind other */      /* entrances */
  --minted-dur-signature:1000ms; /* @kind other */ /* hero moments only */
}
@media (prefers-reduced-motion: reduce){
  :root{--minted-dur-fast:100ms; /* @kind other */ --minted-dur-base:150ms; /* @kind other */ --minted-dur-enter:200ms; /* @kind other */ --minted-dur-signature:200ms /* @kind other */}
}

/* Minted — print layer. The only light ground in the system, and a medium
   constraint rather than a theme. Role names are identical to screen; values swap.
   No print-specific class names, no duplicated markup. */
:root{
  --minted-print-bg-page:var(--minted-paper-000);
  --minted-print-bg-surface:var(--minted-paper-000);
  --minted-print-bg-cell:var(--minted-paper-050);
  --minted-print-bg-cell-strong:var(--minted-paper-200);
  --minted-print-text-primary:var(--minted-ink-900);
  --minted-print-text-secondary:var(--minted-ink-600);
  --minted-print-text-muted:var(--minted-ink-600);
  --minted-print-text-faint:var(--minted-ink-600);
  --minted-print-text-accent:var(--minted-green-700);   /* green-500 fails normal text on paper (4.01:1) */
  --minted-print-text-label:var(--minted-green-700);
  --minted-print-action-primary-bg:var(--minted-paper-000);
  --minted-print-action-primary-bg-hover:var(--minted-paper-000);
  --minted-print-action-primary-text:var(--minted-ink-900);
  --minted-print-action-secondary-border:var(--minted-ink-900);
  --minted-print-action-secondary-text:var(--minted-ink-900);
  --minted-print-action-secondary-bg-hover:transparent;
  --minted-print-stroke-grid:var(--minted-ink-line);
  --minted-print-stroke-divider:var(--minted-ink-line);
  --minted-print-focus-ring-color:var(--minted-green-700);
  /* amendment 01: depth is a screen affordance. Print carries none of it. */
  --minted-print-surface-raised:var(--minted-paper-000);
  --minted-print-surface-raised-hi:var(--minted-paper-050);
  --minted-print-surface-recessed:var(--minted-paper-050);
}
@media print{
  :root{
    --minted-bg-page:var(--minted-print-bg-page);
    --minted-bg-surface:var(--minted-print-bg-surface);
    --minted-bg-cell:var(--minted-print-bg-cell);
    --minted-bg-cell-strong:var(--minted-print-bg-cell-strong);
    --minted-text-primary:var(--minted-print-text-primary);
    --minted-text-secondary:var(--minted-print-text-secondary);
    --minted-text-muted:var(--minted-print-text-muted);
    --minted-text-faint:var(--minted-print-text-faint);
    --minted-text-accent:var(--minted-print-text-accent);
    --minted-text-label:var(--minted-print-text-label);
    --minted-action-primary-bg:var(--minted-print-action-primary-bg);
    --minted-action-primary-bg-hover:var(--minted-print-action-primary-bg-hover);
    --minted-action-primary-text:var(--minted-print-action-primary-text);
    --minted-action-secondary-border:var(--minted-print-action-secondary-border);
    --minted-action-secondary-text:var(--minted-print-action-secondary-text);
    --minted-action-secondary-bg-hover:var(--minted-print-action-secondary-bg-hover);
    --minted-stroke-grid:var(--minted-print-stroke-grid);
    --minted-stroke-divider:var(--minted-print-stroke-divider);
    --minted-focus-ring-color:var(--minted-print-focus-ring-color);
    --minted-focus-ring:2px solid var(--minted-print-focus-ring-color);
    --minted-surface-raised:var(--minted-print-surface-raised);
    --minted-surface-raised-hi:var(--minted-print-surface-raised-hi);
    --minted-surface-recessed:var(--minted-print-surface-recessed);
    --minted-stroke-active:var(--minted-print-stroke-divider);
    --minted-lit-face:none; /* @kind color */--minted-recessed-face:none; /* @kind color */
    --minted-bevel:none; /* @kind shadow */--minted-bevel-lift:none; /* @kind shadow */
    --minted-cast:none; /* @kind shadow */--minted-cast-lift:none; /* @kind shadow */
    --minted-press:none; /* @kind shadow */--minted-press-deep:none; /* @kind shadow */
    --minted-shadow-card:none;--minted-shadow-lift:none;
    --minted-shadow-btn-hover:none;--minted-shadow-btn-hover-soft:none;
  }
  @page{margin:14mm}
  html{font-size:12pt}
  body{background:#fff}
  .no-print{display:none !important}
  .ref-sec{break-inside:avoid;page-break-inside:avoid}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:0.8em;color:var(--minted-text-muted)}
}
/* On-screen review of the print layer. Aliases the same --minted-print-* tokens
   the @media print block uses, so the two can never drift. */
[data-preview="print"]{
  --minted-bg-page:var(--minted-print-bg-page);
  --minted-bg-surface:var(--minted-print-bg-surface);
  --minted-bg-cell:var(--minted-print-bg-cell);
  --minted-bg-cell-strong:var(--minted-print-bg-cell-strong);
  --minted-text-primary:var(--minted-print-text-primary);
  --minted-text-secondary:var(--minted-print-text-secondary);
  --minted-text-muted:var(--minted-print-text-muted);
  --minted-text-faint:var(--minted-print-text-faint);
  --minted-text-accent:var(--minted-print-text-accent);
  --minted-text-label:var(--minted-print-text-label);
  --minted-action-primary-bg:var(--minted-print-action-primary-bg);
  --minted-action-primary-text:var(--minted-print-action-primary-text);
  --minted-action-secondary-border:var(--minted-print-action-secondary-border);
  --minted-action-secondary-text:var(--minted-print-action-secondary-text);
  --minted-stroke-grid:var(--minted-print-stroke-grid);
  --minted-stroke-divider:var(--minted-print-stroke-divider);
  --minted-focus-ring-color:var(--minted-print-focus-ring-color);
  --minted-surface-raised:var(--minted-print-surface-raised);
  --minted-surface-raised-hi:var(--minted-print-surface-raised-hi);
  --minted-surface-recessed:var(--minted-print-surface-recessed);
  --minted-stroke-active:var(--minted-print-stroke-divider);
  --minted-lit-face:none; /* @kind color */--minted-recessed-face:none; /* @kind color */
  --minted-bevel:none; /* @kind shadow */--minted-bevel-lift:none; /* @kind shadow */
  --minted-cast:none; /* @kind shadow */--minted-cast-lift:none; /* @kind shadow */
  --minted-press:none; /* @kind shadow */--minted-press-deep:none; /* @kind shadow */
  --minted-shadow-card:none;--minted-shadow-lift:none;
}

/* Minted — base element styles shared by every surface.
   Kept minimal: components own their own look and consume semantic tokens. */
*,*::before,*::after{box-sizing:border-box}
html{font-size:var(--minted-text-base);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--minted-bg-page);color:var(--minted-text-primary);font-family:var(--minted-font-body);font-size:var(--minted-size-body);line-height:var(--minted-leading-body);-webkit-font-smoothing:antialiased}
a{color:var(--minted-green-300);text-decoration:none}
a:hover{color:var(--minted-green-100)}
::selection{background:var(--minted-green-700);color:var(--minted-neutral-100)}
:focus-visible{outline:var(--minted-focus-ring);outline-offset:2px}
h1,h2,h3,h4,p{margin:0}
img{display:block;max-width:100%}

/* Minted — buttons. Lifted verbatim from the shipped css/main.css.
   Mono, 0.75rem, weight 700, uppercase, tracking 0.1em, padding 19px 34px
   (small 12px 20px), minimum target 44px in both axes, radius 0. */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-family:var(--minted-font-mono);font-weight:var(--minted-weight-btn);font-size:var(--minted-size-btn);letter-spacing:0.1em;text-transform:uppercase;line-height:1;white-space:nowrap;padding:19px 34px;border-radius:var(--minted-radius);border:1px solid transparent;background:none;cursor:pointer;text-decoration:none;transition:transform var(--minted-dur-fast) var(--minted-ease-state),box-shadow var(--minted-dur-fast) var(--minted-ease-state),background-color 150ms var(--minted-ease-state),color 150ms var(--minted-ease-state)}
.btn--primary{background:var(--minted-action-primary-bg);color:var(--minted-action-primary-text)}
.btn--primary:hover,.btn--primary.is-hover{background:var(--minted-action-primary-bg-hover);color:var(--minted-action-primary-text);transform:var(--minted-hover-shift);box-shadow:var(--minted-shadow-btn-hover)}
.btn--primary:active,.btn--primary.is-active{transform:none;box-shadow:none;background:var(--minted-green-700);color:var(--minted-neutral-100)}
.btn--secondary{background:transparent;border-color:var(--minted-action-secondary-border);color:var(--minted-action-secondary-text)}
.btn--secondary:hover,.btn--secondary.is-hover{background:var(--minted-bg-hover-wash);color:var(--minted-green-100);transform:var(--minted-hover-shift);box-shadow:var(--minted-shadow-btn-hover-soft)}
.btn--secondary:active,.btn--secondary.is-active{transform:none;box-shadow:none;background:rgba(36,191,120,0.18)}
.btn--small{padding:12px 20px;font-size:var(--minted-size-btn)}
.btn[disabled],.btn.is-disabled{opacity:0.45;pointer-events:none}
.btn.is-focus{outline:var(--minted-focus-ring);outline-offset:2px}
@media (max-width:720px){.btn--block-mobile{white-space:normal;width:100%;line-height:1.7;padding:15px 16px;text-align:center}}

/* Minted — wordmark, mono label, pixel-square glyph, GrowthFi Matrix motif field.
   Wordmark is text and CSS only, never an image. */
.wordmark{font-family:var(--minted-font-display);font-weight:800;font-stretch:125%;letter-spacing:-0.01em;background:var(--minted-gradient-title);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block;line-height:1}
.wordmark__i{position:relative;display:inline-block;background:var(--minted-gradient-title);-webkit-background-clip:text;background-clip:text}
.wordmark__mark{position:absolute;left:50%;top:-0.34em;transform:translateX(-50%);display:grid;grid-template-columns:0.12em 0.12em;gap:0.04em}
.wordmark__mark span{width:0.12em;height:0.12em;background:var(--minted-green-300)}
.wordmark__mark span:first-child{background:var(--minted-green-100)}
.wordmark--glow{filter:drop-shadow(0 0 20px rgba(185,255,204,0.1))}

.label-mono{font-family:var(--minted-font-mono);font-size:var(--minted-size-label);font-weight:500;letter-spacing:var(--minted-track-label);text-transform:uppercase;color:var(--minted-text-label);margin:0}
.label-mono--tight{letter-spacing:0.2em}
.label-mono--nav{letter-spacing:0.14em}

.px-glyph{display:grid;gap:3px}
.px-glyph i{background:rgba(36,191,120,0.16)}
.px-glyph i.on{background:var(--minted-green-300)}
.px-glyph i.hi{background:var(--minted-green-100)}

.grid-field{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(to right,var(--minted-stroke-grid) 1px,transparent 1px),linear-gradient(to bottom,var(--minted-stroke-grid) 1px,transparent 1px);background-size:var(--gf-cell,var(--minted-cell)) var(--gf-cell,var(--minted-cell))}
.grid-field__cell{position:absolute;background:var(--minted-bg-cell)}
.grid-field__cell--strong{background:var(--minted-bg-cell-strong)}

/* Minted — card families. Ground plus 1px green hairline, radius 0, generous
   clamp() padding, grid gap --minted-space-2. Hover: border turns green-300 plus
   a lift. Explorable groups recede non-hovered siblings to --minted-recede-opacity. */

/* Testimonial card (landing + buy). Quotes and names are placeholder content. */
.testi{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--minted-space-2);align-items:start;text-align:left}
.testi-card{margin:0;background:var(--minted-bg-surface);border:var(--minted-border-hairline);padding:clamp(20px,1.8vw,28px);display:grid;gap:14px;align-content:start;transition:transform 320ms var(--minted-ease-enter),border-color 260ms var(--minted-ease-state),box-shadow 320ms var(--minted-ease-state)}
.testi-card:hover{transform:translateY(-6px);border-color:var(--minted-green-300);box-shadow:var(--minted-shadow-lift)}
.testi-card--tint{background:var(--minted-bg-cell-strong)}
.testi-card__stars{display:flex;gap:5px;color:var(--minted-green-300);font-size:0.78rem;line-height:1;letter-spacing:0.18em;text-shadow:0 0 12px rgba(36,191,120,0.45)}
.testi-card__quote{margin:0;font-family:var(--minted-font-display);font-weight:600;font-size:clamp(1rem,1.25vw,1.2rem);line-height:1.45;color:var(--minted-text-primary);text-wrap:pretty}
.testi-card__who{display:flex;align-items:center;gap:12px}
.testi-card__ava{width:42px;height:42px;flex:none;display:grid;place-content:center;background:color-mix(in srgb,var(--minted-green-700) 45%,var(--minted-dark-850));border:var(--minted-border-hairline);font-family:var(--minted-font-display);font-weight:800;font-stretch:118%;font-size:0.95rem;letter-spacing:0.02em;color:var(--minted-green-100);text-transform:uppercase;user-select:none}
.testi-card--tint .testi-card__ava{background:var(--minted-green-700)}
.testi-card__id{display:grid;gap:2px}
.testi-card__name{margin:0;font-family:var(--minted-font-mono);font-size:var(--minted-size-label);font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--minted-text-secondary)}
.testi-card__role{margin:0;font-family:var(--minted-font-mono);font-size:0.68rem;font-weight:500;letter-spacing:0.14em;text-transform:uppercase;color:var(--minted-text-faint)}

/* Learn card — grows on hover, siblings recede */
.learn-grid{list-style:none;margin:0;padding:0;display:flex;gap:var(--minted-space-2)}
.learn-card{position:relative;flex:1 1 0;min-width:0;overflow:hidden;min-height:clamp(240px,24vw,320px);background:var(--minted-bg-surface);border:var(--minted-border-hairline);padding:clamp(18px,1.8vw,28px);display:flex;flex-direction:column;justify-content:space-between;cursor:default;transition:flex-grow 480ms var(--minted-ease-enter),background-color 260ms var(--minted-ease-state),border-color 260ms var(--minted-ease-state),box-shadow 320ms var(--minted-ease-state),opacity 260ms var(--minted-ease-state)}
.learn-card__idx{font-family:var(--minted-font-mono);font-size:clamp(0.95rem,1.2vw,1.3rem);font-weight:500;line-height:1;letter-spacing:0.08em;color:var(--minted-text-label);transition:color var(--minted-dur-fast) var(--minted-ease-state)}
.learn-card__body{margin:0;width:clamp(150px,15.5vw,210px);font-family:var(--minted-font-display);font-weight:600;font-stretch:108%;font-size:clamp(1.05rem,1.55vw,1.5rem);line-height:1.25;color:var(--minted-text-secondary);transform-origin:left bottom;transition:color var(--minted-dur-fast) var(--minted-ease-state),transform 480ms var(--minted-ease-enter);text-wrap:pretty}
.learn-card:hover{flex-grow:1.7;background-color:var(--minted-green-700);border-color:var(--minted-green-300);box-shadow:0 18px 60px rgba(5,8,6,0.55),0 0 40px rgba(36,191,120,0.28)}
.learn-card:hover .learn-card__idx{color:var(--minted-green-100)}
.learn-card:hover .learn-card__body{color:var(--minted-text-primary);transform:scale(1.3)}
.learn-grid:hover .learn-card:not(:hover){opacity:var(--minted-recede-opacity)}

/* Why card — lead / with / counter */
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--minted-space-2)}
.why-card{position:relative;background:var(--minted-bg-surface);border:var(--minted-border-hairline);padding:clamp(22px,2.2vw,32px);min-height:clamp(220px,26vw,300px);display:flex;flex-direction:column;justify-content:space-between;align-items:center;text-align:center;gap:var(--minted-space-3);transition:transform 320ms var(--minted-ease-enter),border-color 260ms var(--minted-ease-state),box-shadow 320ms var(--minted-ease-state)}
.why-card:hover{transform:translateY(-6px);border-color:var(--minted-green-300);box-shadow:var(--minted-shadow-lift)}
.why-card__lead,.why-card__counter{margin:0;font-family:var(--minted-font-display);font-weight:700;font-stretch:112%;font-size:var(--minted-size-card);line-height:1.05;letter-spacing:-0.01em;text-transform:uppercase;text-wrap:balance}
.why-card__lead{color:var(--minted-text-primary)}
.why-card__counter{color:var(--minted-green-300)}
.why-card__with{display:flex;align-items:center;align-self:stretch;gap:12px;font-family:var(--minted-font-mono);font-size:0.68rem;font-weight:500;letter-spacing:0.26em;text-transform:uppercase;color:var(--minted-text-label)}
.why-card__with::before,.why-card__with::after{content:"";height:1px;flex:1;background:var(--minted-stroke-divider);transition:background-color 260ms var(--minted-ease-state)}
.why-card:hover .why-card__with::before,.why-card:hover .why-card__with::after{background:var(--minted-green-300)}

/* Author card */
.author-card{background:var(--minted-bg-surface);border:var(--minted-border-hairline);display:grid;grid-template-rows:auto 1fr;transition:border-color 260ms var(--minted-ease-state),box-shadow 320ms var(--minted-ease-state)}
.author-card:hover{border-color:var(--minted-green-300);box-shadow:var(--minted-shadow-lift)}
.author-card__photo{position:relative;aspect-ratio:16/10;overflow:hidden;border-bottom:var(--minted-border-hairline)}
.author-card__photo img{width:100%;height:100%;object-fit:cover;object-position:center 22%;filter:contrast(1.02);display:block}
.author-card__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,106,70,0.16),rgba(5,8,6,0.3));mix-blend-mode:multiply;pointer-events:none}
.author-card__info{padding:clamp(20px,2vw,30px);display:grid;gap:14px;align-content:start}
.author-card__id{display:flex;flex-direction:column;gap:var(--minted-space-1)}
.author-card__name{margin:0;font-family:var(--minted-font-display);font-weight:800;font-stretch:120%;font-size:clamp(1.5rem,2.4vw,2.2rem);line-height:1;text-transform:uppercase;letter-spacing:-0.01em}
.author-card__name a{color:var(--minted-text-primary);text-decoration:none;transition:color var(--minted-dur-fast) var(--minted-ease-state)}
.author-card__name a::after{content:"↗";font-size:0.55em;margin-left:0.3em;vertical-align:super;color:var(--minted-green-300)}
.author-card__name a:hover{color:var(--minted-green-300)}
.author-card__role{margin:0;font-family:var(--minted-font-mono);font-size:var(--minted-size-label);font-weight:500;letter-spacing:0.22em;text-transform:uppercase;color:var(--minted-text-label)}
.author-card__lead{margin:0;color:var(--minted-text-secondary);font-size:0.95rem;line-height:1.6;text-wrap:pretty}
.author-card__quote{margin:0;padding-left:18px;border-left:2px solid var(--minted-green-300);font-family:var(--minted-font-display);font-weight:600;font-size:clamp(1.1rem,1.5vw,1.45rem);line-height:1.3;color:var(--minted-text-primary);text-wrap:pretty}
.author-card__note{margin:0;color:var(--minted-text-secondary);font-size:var(--minted-size-note);line-height:1.6;text-wrap:pretty}

/* Included card (buy page) — sits on --minted-bg-cell */
.included{list-style:none;margin:0;padding:0;width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--minted-space-2);text-align:left}
.included li{background:var(--minted-bg-cell);border:var(--minted-border-hairline);padding:28px 24px;display:grid;gap:12px;align-content:start;transition:border-color 260ms var(--minted-ease-state),box-shadow 320ms var(--minted-ease-state)}
.included li:hover{border-color:var(--minted-green-300);box-shadow:var(--minted-shadow-card),0 0 28px rgba(36,191,120,0.14)}
.included__label{margin:0;font-family:var(--minted-font-mono);font-size:var(--minted-size-btn);font-weight:500;letter-spacing:0.2em;text-transform:uppercase;color:var(--minted-text-label)}
.included__body{margin:0;color:var(--minted-text-secondary);font-size:var(--minted-size-body);line-height:1.6;text-wrap:pretty}

/* Pain tile — the one card family on --minted-bg-cell-strong so it reads on the near-black field */
.pf-tile{background:var(--minted-bg-cell-strong);border:var(--minted-border-hairline);box-shadow:var(--minted-shadow-card);padding:clamp(12px,1.4vw,20px);display:flex;flex-direction:column;justify-content:flex-end;gap:var(--minted-space-2);min-height:150px;transition:transform 440ms var(--minted-ease-enter),border-color 240ms var(--minted-ease-state),box-shadow 340ms var(--minted-ease-state),opacity 320ms var(--minted-ease-state)}
.pf-tile__name{font-family:var(--minted-font-display);font-weight:700;font-stretch:112%;text-transform:uppercase;font-size:clamp(1.05rem,1.7vw,1.85rem);line-height:0.98;color:var(--minted-text-secondary);text-wrap:balance;transition:color 240ms var(--minted-ease-state)}
.pf-tile__detail{margin:0;font-family:var(--minted-font-body);font-size:clamp(0.85rem,1.05vw,1rem);line-height:1.45;color:var(--minted-text-secondary);transition:color 220ms var(--minted-ease-state)}
.pf-tile:hover{transform:translateY(-6px);border-color:var(--minted-green-300);box-shadow:0 22px 54px rgba(3,5,4,0.62),0 0 32px rgba(36,191,120,0.28);z-index:6}
.pf-tile:hover .pf-tile__name{color:var(--minted-text-primary)}
@media (max-width:980px){.testi,.why-grid,.included{grid-template-columns:1fr}.learn-grid{flex-direction:column}.learn-card{min-height:150px}.learn-card:hover{flex-grow:1}.learn-card:hover .learn-card__body{transform:none}.learn-card__body{width:auto}}
@media (hover:none){.learn-card:hover{flex-grow:1}.learn-card:hover .learn-card__body{transform:none}.learn-grid:hover .learn-card:not(:hover){opacity:1}}


/* ============ AMENDMENT 01 · raised plane ============
   Every card family sits on the raised ground with a four-sided bevel and a
   down-right cast, so it reads as a slab above the field rather than an
   outlined rectangle. Border stays a neutral hairline; green means state.
   Hover keeps the existing 6px lift and adds the deeper bevel and cast.

   NOTE for anyone editing card rules: use background-color, never the background
   SHORTHAND. The shorthand resets background-image to none and silently strips the
   lit face, so the card flattens at the exact moment it is supposed to lift. */
.testi-card,.learn-card,.why-card,.author-card,.included li,.pf-tile{
  background-color:var(--minted-surface-raised);
  background-image:var(--minted-lit-face);
  box-shadow:var(--minted-bevel),var(--minted-cast)}
.testi-card--tint{background-color:var(--minted-surface-raised-hi)}
.testi-card:hover,.learn-card:hover,.why-card:hover,.author-card:hover,.included li:hover,.pf-tile:hover{
  border-color:var(--minted-stroke-active);
  box-shadow:var(--minted-bevel-lift),var(--minted-cast-lift),0 0 34px rgba(36,191,120,0.26)}

/* Minted — form field set. Input boundaries use --minted-stroke-input (55% green),
   not the 20% card hairline: field edges need 3:1 contrast. */
.field{display:grid;gap:8px;align-content:start}
.field--full{grid-column:1/-1}
.field__label{font-family:var(--minted-font-mono);font-size:var(--minted-size-label);font-weight:500;letter-spacing:0.2em;text-transform:uppercase;color:var(--minted-text-label)}
.field__input{width:100%;min-height:44px;background:var(--minted-bg-surface);border:1px solid var(--minted-stroke-input);border-radius:var(--minted-radius);color:var(--minted-neutral-100);font-family:var(--minted-font-body);font-size:var(--minted-size-body);line-height:1.5;padding:16px 18px;transition:border-color var(--minted-dur-fast) var(--minted-ease-state),box-shadow var(--minted-dur-fast) var(--minted-ease-state),background-color var(--minted-dur-fast) var(--minted-ease-state)}
.field__input::placeholder{color:var(--minted-text-faint)}
.field__input:hover{border-color:var(--minted-stroke-input-hover)}
.field__input:focus{outline:none;border-color:var(--minted-green-300);box-shadow:0 0 0 1px var(--minted-green-300),0 0 28px rgba(36,191,120,0.18);background:var(--minted-bg-cell)}
textarea.field__input{resize:vertical;min-height:150px}
select.field__input{appearance:none;-webkit-appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 49%,var(--minted-green-300) 51%),linear-gradient(135deg,var(--minted-green-300) 49%,transparent 51%);background-repeat:no-repeat;background-position:calc(100% - 24px) 55%,calc(100% - 18px) 55%;background-size:6px 6px}
select.field__input option{background:var(--minted-dark-850);color:var(--minted-neutral-100)}
.field--err .field__input{border-color:var(--minted-field-error);box-shadow:0 0 0 1px var(--minted-field-error)}
.field__msg{margin:0;font-size:0.85rem;line-height:1.5;color:var(--minted-field-error-text);display:flex;align-items:center;gap:8px}
.field__msg::before{content:"";width:8px;height:8px;background:var(--minted-field-error);flex:none}
.field__msg[hidden]{display:none}
.field__hint{font-family:var(--minted-font-mono);font-size:0.7rem;color:var(--minted-text-faint);letter-spacing:0.06em}

.form-sent{margin:0;display:grid;justify-items:center;gap:var(--minted-space-3);padding:24px 20px 4px;text-align:center}
.form-sent__badge{position:relative;width:64px;height:64px;display:grid;place-content:center;background:var(--minted-green-500);box-shadow:var(--minted-shadow-btn-hover);animation:sent-pop 560ms var(--minted-ease-enter) both}
.form-sent__badge svg path{stroke-dasharray:34;stroke-dashoffset:34;animation:sent-check 420ms var(--minted-ease-state) 280ms forwards}
.form-sent__cells{position:absolute;inset:0;pointer-events:none}
.form-sent__cells i{position:absolute;width:8px;height:8px;background:var(--minted-green-300);opacity:0;animation:sent-cell 700ms var(--minted-ease-enter) both}
.form-sent__cells i:nth-child(1){left:-18px;top:6px;animation-delay:300ms}
.form-sent__cells i:nth-child(2){right:-16px;top:-12px;background:var(--minted-green-100);animation-delay:380ms}
.form-sent__cells i:nth-child(3){right:-22px;bottom:8px;animation-delay:340ms}
.form-sent__cells i:nth-child(4){left:-12px;bottom:-14px;background:var(--minted-green-100);animation-delay:440ms}
.form-sent__text{margin:0;font-family:var(--minted-font-mono);font-size:var(--minted-size-btn);font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:var(--minted-green-300);animation:sent-fade 400ms ease-out 380ms both}
@keyframes sent-pop{0%{transform:scale(0.2) rotate(-8deg);opacity:0}62%{transform:scale(1.14) rotate(2deg);opacity:1}100%{transform:scale(1) rotate(0deg);opacity:1}}
@keyframes sent-check{to{stroke-dashoffset:0}}
@keyframes sent-cell{0%{transform:scale(0);opacity:0}55%{transform:scale(1.3);opacity:1}100%{transform:scale(1);opacity:1}}
@keyframes sent-fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: reduce){.form-sent__badge,.form-sent__badge svg path,.form-sent__cells i,.form-sent__text{animation:none;opacity:1;stroke-dashoffset:0;transform:none}}


/* ============ AMENDMENT 01 · inputs are recessed ============
   An input is a hole, not a card: recessed ground, inverted light. The 55%
   green boundary is unchanged, since a field edge still needs its 3:1. */
.field__input{
  background-color:var(--minted-surface-recessed);
  background-image:var(--minted-recessed-face);
  box-shadow:var(--minted-press-deep)}

/* Minted — section frame, checklist, FAQ, booking slot. */
.sec{position:relative;padding:var(--minted-space-6) var(--minted-pad-x);border-top:var(--minted-border-hairline)}
.sec--surface{background:var(--minted-bg-surface)}
.sec-title{margin:0 0 18px;font-family:var(--minted-font-display);font-weight:700;font-stretch:115%;font-size:var(--minted-size-h2);line-height:1.12;letter-spacing:-0.01em;text-transform:uppercase}
.sec-title em{font-style:normal;color:var(--minted-green-300)}
.sec-sub{margin:0 0 clamp(40px,7vh,64px);color:var(--minted-text-secondary);font-size:1.1rem;max-width:62ch;text-wrap:pretty}
.sec--center .sec-title,.sec--center .sec-sub{text-align:center;margin-left:auto;margin-right:auto}
.sec__label{margin:0 0 18px}

.checklist{list-style:none;margin:0;padding:0;width:100%}
.checklist li{position:relative;padding:15px 4px 15px 28px;color:var(--minted-text-secondary);font-size:1.05rem;border-top:var(--minted-border-hairline);transition:background-color var(--minted-dur-fast) var(--minted-ease-state),color var(--minted-dur-fast) var(--minted-ease-state),padding-left var(--minted-dur-fast) var(--minted-ease-state)}
.checklist li:last-child{border-bottom:var(--minted-border-hairline)}
.checklist li::before{content:"";position:absolute;left:4px;top:1.35em;width:9px;height:9px;background:var(--minted-green-500);transition:background-color var(--minted-dur-fast) var(--minted-ease-state)}
.checklist li:hover{background:var(--minted-green-500);color:var(--minted-dark-900);padding-left:34px}
.checklist li:hover::before{background:var(--minted-dark-900)}

.faq__list{border-bottom:var(--minted-border-hairline)}
.faq__item{border-top:var(--minted-border-hairline)}
.faq__q{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 4px;cursor:pointer;list-style:none;font-family:var(--minted-font-display);font-weight:700;font-stretch:112%;font-size:clamp(1.1rem,1.8vw,1.45rem);line-height:1.25;letter-spacing:-0.005em;text-transform:uppercase;color:var(--minted-text-primary);transition:color var(--minted-dur-fast) var(--minted-ease-state)}
.faq__q::-webkit-details-marker{display:none}
.faq__q:hover{color:var(--minted-green-300)}
.faq__mark{flex:none;width:34px;height:34px;display:grid;place-content:center;border:var(--minted-border-hairline);font-family:var(--minted-font-mono);font-size:1rem;font-weight:400;color:var(--minted-green-300);transition:transform 280ms var(--minted-ease-enter),background-color var(--minted-dur-fast) var(--minted-ease-state),color var(--minted-dur-fast) var(--minted-ease-state)}
.faq__item[open] .faq__mark{transform:rotate(45deg);background:var(--minted-green-500);color:var(--minted-dark-900);border-color:var(--minted-green-500)}
.faq__a{margin:0;padding:0 4px 28px;color:var(--minted-text-secondary);font-size:1.05rem;line-height:1.65;max-width:64ch;text-wrap:pretty}
@media (prefers-reduced-motion: reduce){.faq__item[open] .faq__mark{transform:none}}

.slot{position:relative;min-height:380px;display:grid;place-content:center;justify-items:center;gap:16px;padding:clamp(28px,3vw,48px);background:var(--minted-bg-cell);background-image:linear-gradient(to right,var(--minted-stroke-grid) 1px,transparent 1px),linear-gradient(to bottom,var(--minted-stroke-grid) 1px,transparent 1px);background-size:var(--minted-cell) var(--minted-cell)}
.slot__label{margin:0;font-family:var(--minted-font-mono);font-size:var(--minted-size-label);font-weight:500;letter-spacing:var(--minted-track-label);text-transform:uppercase;color:var(--minted-text-label);text-align:center}
.slot__note{margin:0;color:var(--minted-text-faint);font-size:var(--minted-size-note);text-align:center;max-width:30ch;text-wrap:pretty}

/* Minted — fixed nav and footer. */
.site-nav{position:fixed;top:0;left:0;right:0;z-index:50;background:color-mix(in srgb,var(--minted-dark-900) 82%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:var(--minted-border-hairline);transition:background-color var(--minted-dur-base) var(--minted-ease-state),border-color var(--minted-dur-base) var(--minted-ease-state)}
.site-nav--static{position:absolute}
.site-nav__inner{display:flex;align-items:center;justify-content:space-between;height:60px;padding:0 var(--minted-pad-x);transition:height var(--minted-dur-base) var(--minted-ease-state)}
.site-nav--scrolled{background:color-mix(in srgb,var(--minted-dark-900) 94%,transparent);border-bottom-color:rgba(36,191,120,0.35)}
.site-nav--scrolled .site-nav__inner{height:52px}
.site-nav__brand{font-size:1.15rem;line-height:1}
.site-nav__links{display:flex;align-items:center;gap:30px}
.site-nav__link{font-family:var(--minted-font-mono);font-size:var(--minted-size-label);letter-spacing:0.14em;text-transform:uppercase;color:var(--minted-text-muted);position:relative;padding:8px 2px;text-decoration:none}
.site-nav__link::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--minted-green-300);transform:scaleX(0);transform-origin:left;transition:transform var(--minted-dur-fast) var(--minted-ease-state)}
.site-nav__link:hover{color:var(--minted-green-300)}
.site-nav__link:hover::after{transform:scaleX(1)}
.site-nav__link[aria-current="page"]{color:var(--minted-green-300)}
.site-nav__link[aria-current="page"]::after{transform:scaleX(1)}
.site-nav__toggle{display:none;width:44px;height:44px;place-content:center;background:transparent;border:var(--minted-border-hairline);cursor:pointer;padding:0}

.footer3{position:relative;border-top:var(--minted-border-hairline);overflow:hidden}
.footer3__meta{display:flex;flex-wrap:wrap;gap:28px;align-items:center;justify-content:space-between;padding:44px var(--minted-pad-x)}
.footer3__links{display:flex;gap:26px;flex-wrap:wrap}
.footer3__legal{display:grid;gap:4px;justify-items:end;text-align:right}
.footer3__legal p{margin:0;color:var(--minted-text-faint);font-size:0.8125rem}
.footer3__giant{display:block;font-family:var(--minted-font-display);font-weight:800;font-stretch:125%;font-size:21vw;line-height:0.72;letter-spacing:-0.02em;text-align:center;-webkit-background-clip:text;background-clip:text;color:transparent;opacity:0.3;transform:translateY(0.06em);pointer-events:none;user-select:none;background-image:linear-gradient(100deg,rgba(185,255,204,0) 20%,rgba(185,255,204,0.95) 50%,rgba(185,255,204,0) 80%),var(--minted-gradient-title);background-size:60% 100%,100% 100%;background-repeat:no-repeat;background-position:-90% 0,0 0;animation:giant-shine 5.5s ease-in-out infinite}
@keyframes giant-shine{0%{background-position:-90% 0,0 0}60%,100%{background-position:190% 0,0 0}}
@media (prefers-reduced-motion: reduce){.footer3__giant{animation:none;background-position:50% 0,0 0}}
@media (max-width:720px){
  .site-nav__toggle{display:grid;position:relative;z-index:2}
  .site-nav__links{position:fixed;top:0;left:0;width:100%;height:100dvh;flex-direction:column;justify-content:center;gap:var(--minted-space-1);background:color-mix(in srgb,var(--minted-dark-900) 96%,transparent);backdrop-filter:blur(18px);padding:80px var(--minted-pad-x) 40px;opacity:0;pointer-events:none;transition:opacity 260ms var(--minted-ease-state)}
  .site-nav--open .site-nav__links{opacity:1;pointer-events:auto}
  .site-nav__link{font-size:0.95rem;letter-spacing:0.2em;padding:16px 10px}
  .footer3__meta{flex-direction:column;align-items:center;gap:20px;text-align:center}
  .footer3__legal{justify-items:center;text-align:center}
}

/* Minted — GrowthFi Matrix Tool matrix. Built from the cell state table and the cell
   ID / state class contract in minted-design-system.md (sections 7 and 8); the
   tool's own CSS does not exist yet, so this is the reference implementation.
   .is-hover / .is-focus / .is-active are documentation hooks only and never ship. */
.gg-grid{display:grid;gap:1px;background:var(--minted-stroke-grid);border:1px solid var(--minted-stroke-grid)}
.gg-grid__head{display:grid;gap:1px;background:var(--minted-stroke-grid)}
.gg-pillar-head{background:var(--minted-bg-surface);padding:14px 16px;font-family:var(--minted-font-mono);font-size:var(--minted-size-label);font-weight:500;letter-spacing:var(--minted-track-label);text-transform:uppercase;color:var(--minted-text-label)}

.gg-cell{position:relative;display:flex;align-items:center;justify-content:center;min-height:var(--minted-cell);aspect-ratio:1;padding:12px;background:var(--minted-bg-cell);border:1px solid var(--minted-stroke-grid);border-radius:var(--minted-radius);cursor:pointer;text-align:center;transition:background-color var(--minted-dur-fast) var(--minted-ease-state),border-color var(--minted-dur-fast) var(--minted-ease-state)}
.gg-cell__label{font-family:var(--minted-font-mono);font-size:var(--minted-size-label);font-weight:500;letter-spacing:0.14em;text-transform:uppercase;color:var(--minted-text-muted);line-height:1.35}
.gg-cell:hover,.gg-cell.is-hover{border-color:var(--minted-stroke-divider)}
.gg-cell:focus-visible,.gg-cell.is-focus{outline:var(--minted-focus-ring);outline-offset:-2px}
.gg-cell.is-selected{background-color:var(--minted-bg-cell-strong);border-color:var(--minted-stroke-divider)}
.gg-cell.is-selected .gg-cell__label{color:var(--minted-text-primary)}
.gg-cell.is-selected:hover{border-color:var(--minted-green-300)}
/* Selection and recommendation must survive grayscale: fill is never the only signal. */
.gg-cell.is-selected::after{content:"";position:absolute;top:8px;right:8px;width:8px;height:8px;background:var(--minted-green-300)}
.gg-cell.is-recommended{border:1px dashed var(--minted-stroke-divider)}
.gg-cell.is-recommended::after{content:"";position:absolute;top:8px;right:8px;width:8px;height:8px;border:1px solid var(--minted-green-300)}
.gg-cell.is-busy{opacity:0.6;cursor:progress}
.gg-cell[disabled],.gg-cell.is-disabled{background-color:var(--minted-bg-page);border-color:var(--minted-stroke-grid);cursor:not-allowed}
.gg-cell[disabled] .gg-cell__label,.gg-cell.is-disabled .gg-cell__label{color:var(--minted-text-faint)}

.gg-legend{display:flex;flex-wrap:wrap;gap:var(--minted-space-4);align-items:center}
.gg-legend__item{display:flex;align-items:center;gap:10px;font-family:var(--minted-font-mono);font-size:0.68rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--minted-text-faint)}
.gg-legend__swatch{width:22px;height:22px;background:var(--minted-bg-cell);border:1px solid var(--minted-stroke-grid);position:relative;flex:none}
.gg-legend__swatch--selected{background:var(--minted-bg-cell-strong);border-color:var(--minted-stroke-divider)}
.gg-legend__swatch--selected::after{content:"";position:absolute;top:3px;right:3px;width:6px;height:6px;background:var(--minted-green-300)}
.gg-legend__swatch--recommended{border:1px dashed var(--minted-stroke-divider)}
.gg-legend__swatch--recommended::after{content:"";position:absolute;top:3px;right:3px;width:6px;height:6px;border:1px solid var(--minted-green-300)}
@media (hover:none){.gg-cell{min-height:56px}}


/* ============ AMENDMENT 01 · recessed plane ============
   The matrix is the one place depth carries meaning rather than decoration:
   cells are pressed INTO the panel, so selecting one is a physical act.
   The grid container becomes the raised ground the cells are cut out of. */
.gg-grid{background:var(--minted-surface-raised)}
.gg-cell{background-image:var(--minted-recessed-face);box-shadow:var(--minted-press)}
.gg-cell.is-selected{box-shadow:var(--minted-press)}
.gg-cell:hover,.gg-cell.is-hover{border-color:var(--minted-stroke-active)}
.gg-legend__swatch{background-image:var(--minted-recessed-face);box-shadow:var(--minted-press)}

