@import url("./brand-compatibility.css?v=20260914review1");

/* ============================================================================
   SURGE PEPTIDES — Design Tokens
   Canonical shared values. Existing names and effective colors are preserved.
   /branding/ reads this file directly. Dark sections use explicit on-brand roles.
   Compatibility colors remain until their consumers are reviewed.
   ============================================================================ */

:root {
  /* Generated consumer aliases — review legacy tokens before promotion. */
  --color-context-a2f4be7c: rgba(255, 255, 255, .18);
  --color-context-f2012854: rgba(255, 255, 255, .22);
  --color-context-35c8d18e: rgba(63, 100, 132, .16);
  --color-context-1bdfa8af: rgba(63, 100, 132, .35);
  --color-context-8bf10178: rgba(47, 77, 102, .38);
  --color-context-66da1ca6: rgba(47, 77, 102, .35);
  --color-context-9aaa4453: rgba(47, 77, 102, .55);
  --color-context-10c60300: rgba(58, 93, 122, .18);
  --color-context-bfeccfcf: rgba(255,255,255,0.08);
  --color-context-843252bb: rgba(16, 24, 40, .05);
  --color-context-b5271bf5: rgba(16, 24, 40, .22);
  --color-context-6f729fd1: rgba(16, 24, 40, .28);
  --color-context-31ffb7f0: rgba(16, 24, 40, .04);
  --color-context-4fd81c94: rgba(59,130,246,0.12);
  --color-context-d9148f42: rgba(59,130,246,0.35);
  --color-context-bdbe0bae: rgba(255,255,255,.07);
  --color-context-08e14993: rgba(255,255,255,.06);
  --color-context-0f1c00d7: rgba(255,255,255,.08);
  --color-context-44501a11: rgba(255,255,255,.05);
  --color-context-760a9c2b: rgba(255,255,255,.45);
  --color-context-b95d02d8: rgba(255,255,255,.55);
  --color-context-931cbf00: rgba(255,255,255,.75);
  --color-context-ad13c7f0: rgba(255,255,255,.25);
  --color-context-7a92317e: rgba(255,255,255,.15);
  --color-context-895780ff: rgba(255,255,255,.12);
  --color-context-7390b8d1: rgba(255,255,255,.35);
  --color-context-e65a3569: rgba(255,255,255,.14);
  --color-context-8e62391d: rgba(203,213,225,.72);
  --color-context-fef5ea39: rgba(255,255,255,.85);
  --color-context-2aca67f4: rgba(96,165,250,0.7);
  --color-context-6bdf9608: rgba(58,93,122,0.08);
  --color-context-11fe2a07: rgba(58,93,122,0.04);
  --color-context-3d5019da: rgba(58,93,122,0.15);
  --color-context-a3a6b8ad: rgba(58,93,122,0.12);
  --color-context-6e5bc0e0: rgba(255,255,255,.1);
  --color-context-c22384a1: rgba(255,255,255,.4);
  --color-context-3079dc5a: rgba(74,222,128,.12);
  --color-context-71dfec2f: rgba(74,222,128,.25);
  --color-context-6563d066: rgba(139,92,246,.15);
  --color-context-cbbbcd48: rgba(139,92,246,.14);
  --color-context-851c6b2c: rgba(255,255,255,.6);
  --color-context-94e02b50: rgba(74,222,128,.06);
  --color-context-5401e080: rgba(74,222,128,.15);
  --color-context-ff9a60c6: rgba(74,222,128,.28);
  --color-context-8065ebf9: rgba(255,255,255,.5);
  --color-context-29719542: rgba(58,143,212,.15);
  --color-context-689a65f1: rgba(58,143,212,.12);
  --color-context-7fa9906e: rgba(58,143,212,.25);
  --color-context-73a06625: rgba(255,255,255,.7);
  --color-context-eaedc3e4: rgba(58,143,212,.08);
  --color-context-2a3c342a: rgba(245,158,11,.08);
  --color-context-2b2e5de4: rgba(245,158,11,.25);
  --color-context-0fe1fda1: rgba(52,211,153,.25);
  --color-context-155ffe4c: rgba(100,164,196,.5);
  --color-context-94c69509: rgba(14,158,110,.25);
  --color-context-ac600927: rgba(58,93,122,.08);
  --color-context-b5bff560: rgba(58,93,122,.04);
  --color-context-9ec8d655: rgba(58,93,122,.15);
  --color-context-40905a35: rgba(22,163,74,.08);
  --color-context-5147acfa: rgba(139,92,246,.2);
  --color-context-c588de94: rgba(20,184,166,.2);
  --color-context-d78148f7: rgba(139,92,246,.3);
  --color-context-c421ea1f: rgba(22,163,74,.06);
  --color-context-6dbe4d0c: rgba(58,143,212,.2);
  --color-context-bdbd0d36: rgba(5,150,105,.25);
  --color-context-a5cc3f50: rgba(5,150,105,.18);
  --color-context-3c188cbc: rgba(5,150,105,.08);
  --color-context-a2541754: rgba(5,150,105,.22);
  --color-context-4d149195: rgba(8,145,178,.08);
  --color-context-545fc461: rgba(8,145,178,.22);
  --color-context-76d868c4: rgba(5,150,105,.06);
  --color-context-686a347a: rgba(52,211,153,.1);
  --color-context-99926328: rgba(0, 0, 0, 0.2);
  --color-context-a1e61526: rgba(0, 0, 0, 0.4);
  --color-context-6ae7d007: rgb(255, 255, 255);
  --color-context-0ec95a08: rgba(15,20,35,.75);
  --color-context-fc9f7af8: rgba(20,32,54,.06);
  --color-context-cfe06a65: rgba(22,163,74,.2);
  --color-context-af4e288f: rgba(5,150,105,.1);
  --color-context-616f60d2: rgba(29,90,56,.08);
  --color-context-ad8eaee1: rgba(29,90,56,.22);
  --color-context-3e90c63e: rgba(58,93,122,.4);
  --color-context-c8bba044: rgba(46,75,99,.28);
  --color-context-8e4839a6: rgb(122,220,180);
  --color-context-c00bc185: rgb(238,238,238);
  --color-context-35a1eab3: rgb(169,184,195);
  --color-context-c5bcafe8: rgb(151,120,209);
  --color-context-e1398187: rgb(255,206,236);
  --color-context-eeef7da4: rgb(152,150,240);
  --color-context-5916f849: rgb(254,205,165);
  --color-context-39e3b5de: rgb(255,203,112);
  --color-context-d1122f0c: rgb(255,245,203);
  --color-context-9a683779: rgb(182,227,212);
  --color-context-dcdc35c4: rgb(202,248,128);
  --color-context-29b185a0: rgb(113,206,126);
  --color-context-d6658b54: rgba(0,0,0,0.04);
  --color-context-348c9372: rgba(0,0,0,0.08);
  --color-context-f863dbfa: rgba(0,0,0,0.06);
  --color-context-be5aa7aa: rgb(155,81,224);
  --color-context-efb1b55d: rgb(74,234,220);
  --color-context-0e42ea5c: rgb(207,42,186);
  --color-context-2e138b6f: rgb(238,44,130);
  --color-context-4cc3faa9: rgb(251,105,98);
  --color-context-d1949300: rgb(254,248,76);
  --color-context-a6e483b3: rgb(199,81,192);
  --color-context-5b663e25: rgb(51,167,181);
  --color-context-1f6b8d46: rgb(40,116,252);
  --color-context-c7238605: rgba(0,0,0,0.1);
  --color-context-547365ae: rgba(0,0,0,.07);
  --color-context-f356b760: rgba(0,0,0,.05);
  --color-context-c5102c91: rgba(0,0,0,.08);
  --color-context-b3a743ad: rgba(0,0,0,.06);
  --color-context-c26f5d42: rgba(0,0,0,.04);
  --color-context-29617b79: rgba(0,0,0,.10);
  --color-context-3db55f56: rgb(6,147,227);
  --color-context-88fe0561: rgb(0,208,130);
  --color-context-e39aa463: rgb(252,185,0);
  --color-context-9fd6b175: rgb(255,105,0);
  --color-context-52fbe24b: rgb(207,46,46);
  --color-context-ea1b7970: rgb(254,45,45);
  --color-context-b8e61dfe: rgb(65,88,208);
  --color-context-f51ff588: rgb(107,0,62);
  --color-context-7fcda67f: rgb(2,3,129);
  --color-context-68f6f4bc: rgb(0, 0, 0);
  --color-context-abfef18f: #000000;
  --color-context-ffb0bce3: #abb8c3;
  --color-surface: #ffffff;
  --color-context-eda1905a: #f78da7;
  --color-context-64020ae5: #cf2e2e;
  --color-context-ae1d6bfe: #ff6900;
  --color-context-638c7688: #fcb900;
  --color-context-31e8959f: #7bdcb5;
  --color-context-2e350b5f: #00d084;
  --color-context-6eb9bb2c: #8ed1fc;
  --color-context-2d92729a: #0693e3;
  --color-context-6e0a768f: #9b51e0;
  --color-context-2b06a61a: #32373c;
  --color-context-e4b15368: #333333;
  --color-page: #fafafa;
  --color-brand-forest-50: #1f5138;
  --color-context-9c9e6bf9: #2b2b2b;
  --color-context-28ce17ea: #999999;
  --color-context-7e539be2: #555555;
  --color-context-3a74d675: #666666;
  --color-context-ec8f71e3: #7f7f7f;
  --color-context-8f5c37a3: #355773;
  --color-context-524bf277: #f5f5f5;
  --color-context-ad38b8d4: #4a6f94;
  --color-context-daee1048: #101828;
  --color-context-8a601f8f: #344054;
  --color-context-61afa19d: #667085;
  --color-context-40670397: #1a7f37;
  --color-context-c8644ff6: #e8f5ec;
  --color-context-8acdc85f: #bfe3ca;
  --color-context-4b27d287: #17663a;
  --color-context-8664d716: #f4f7fa;
  --color-context-fee9e56d: #e6edf3;
  --color-context-0425105c: #475467;
  --color-context-e049ffd7: #98a2b3;
  --color-surface: #FFFFFF;
  --color-context-f4027907: #E3E9F0;
  --color-context-e37247fb: #F7FAFD;
  --color-context-850c3fa3: #3D4B5C;
  --color-context-428b4020: #2C475E;
  --color-context-9c19e824: #B3261E;
  --color-context-90e971ab: #FDF7F7;
  --color-brand-forest-10: #E8EFEA;
  --color-context-2ed3bdf1: #f8fbfd;
  --color-context-9e4146dc: #eef5fa;
  --color-context-bf9d8ce2: #cbd5df;
  --color-context-f7d0d60e: #9fb0c0;
  --color-context-1d69756f: #3f6484;
  --color-context-d01f93f4: #93c5fd;
  --color-context-90c04d02: #60a5fa;
  --color-context-26aeb143: #27356B;
  --color-context-8cc25267: #1f5138;
  --color-context-f3f3ce76: #28583D;
  --color-context-674b19bb: #6B7280;
  --color-context-3c25dea5: #1A1F36;
  --color-context-f4bac6fc: #F4F6FA;
  --color-context-23a98c34: #3A4257;
  --color-context-d85ab149: #E7E9EF;
  --color-context-56f3bf5f: #EEF2FB;
  --color-context-5cf96212: #9CA3AF;
  --color-context-789cf680: #5A6373;
  --color-context-cc80eed9: #e6e9ef;
  --color-context-2aaeb9a1: #1f8a5b;
  --color-context-927f2219: #fbfdfc;
  --color-context-c6b57f3a: #1a2436;
  --color-context-d03e63ce: #1f2937;
  --color-context-b1ab5a91: #d1d5db;
  --color-context-dec382a3: #6b7280;
  --color-context-b32ab68e: #e2e6ee;
  --color-context-499668ca: #f8fafc;
  --color-context-48338848: #16a34a;
  --color-context-20219d60: #cbd5dd;
  --color-context-23be5af3: #9ca3af;
  --color-context-28578b8b: #f6f8fb;
  --color-context-ce398330: #111827;
  --color-context-54438514: #111111;
  --color-context-627840e2: #2a2a2a;
  --color-context-95caa71b: #f0f7ff;
  --color-context-d0ce4dc1: #cfe1f7;
  --color-context-5719a0ae: #1b2a4a;
  --color-context-9d35f93b: #2c64ad;
  --color-context-c1419dcb: #22c55e;
  --color-context-aadf8f84: #ca8a04;
  --color-context-40db1339: #a855f7;
  --color-context-64d53237: #14b8a6;
  --color-context-e9db2df9: #1e293b;
  --color-context-58d44d32: #475569;
  --color-context-d699259c: #f1f5f9;
  --color-context-e66b9d0a: #cbd5e1;
  --color-context-87e694cf: #dc9814;
  --color-context-b0281d30: #1e68c4;
  --color-context-65600e3c: #323232;
  --color-context-c43fad92: #3bb54a;
  --color-context-69613d4f: #009245;
  --color-context-7fa445f7: #ee9e13;
  --color-context-ab9a2c94: #efeee3;
  --color-context-7d15e54d: #404040;
  --color-context-e5dd59dc: #f8f8f8;
  --color-context-e0f010aa: #1a1a1a;
  --color-context-faf561d3: #e0e0e0;
  --color-context-a23bf166: #2e4f68;
  --color-context-00e622b8: #E0E0E0;
  --color-context-44354ce6: #f0f0f0;
  --color-context-18046fe2: #64748b;
  --color-context-3de0edf4: #0f172a;
  --color-context-33598f25: #1f5138;
  --color-context-c845935b: #b0b8c4;
  --color-context-3f490c71: #f8fafc;
  --color-context-1f73bce4: #86efac;
  --color-context-68cdd63f: #e2e8f0;
  --color-context-013de1e1: #cbd5e1;
  --color-context-26fb22bc: #8b5cf6;
  --color-context-7437b68d: #c99a2e;
  --color-context-47fb0fc0: #e5e7eb;
  --color-context-5c0480d7: #E7EFE8;
  --color-context-8d40328c: #DCEFE1;
  --color-context-df3dc844: #fffbeb;
  --color-context-4c423a9d: #fde68a;
  --color-context-0c246fc6: #92400e;
  --color-context-5858f7f2: #e2e8f0;
  --color-context-6f036578: #faf5ff;
  --color-context-bd1fa3ea: #f0fdfa;
  --color-context-3fb6e34e: #ede9fe;
  --color-context-f9ec05dd: #ccfbf1;
  --color-context-7925e8d1: #0d9488;
  --color-context-16064472: #a78bfa;
  --color-context-ea5f2470: #c4b5fd;
  --color-context-20bc81bc: #081a12;
  --color-context-2a39d3dc: #6ee7b7;
  --color-context-b739e892: #a7f3d0;
  --color-context-77816030: #fefce8;
  --color-context-6dd2d0ef: #2d6a96;
  --color-context-a733d7e2: #ecfdf5;
  --color-context-f60cdf0a: #94a3b8;
  --color-context-be136154: #374151;
  --color-context-a293054a: #ef4444;
  --color-context-d792d82f: #f5f3ff;
  --color-context-5c2b245a: #ddd6fe;
  --color-context-fe3bb61f: #fef2f2;
  --color-context-49d9ae6c: #fecaca;
  --color-context-9a19e53b: #fff7ed;
  --color-context-54f5d5d5: #fff1f2;
  --color-context-63ea905f: #7c3aed;
  --color-context-09f9f14e: #d97706;
  --color-context-5b8e18c2: #fafbfc;
  --color-context-c769e3c0: #dbeafe;
  --color-context-06deed61: #064e3b;
  --color-context-af5655ed: #065f46;
  --color-context-05b580d8: #34d399;
  --color-context-3abcc6f5: #d1fae5;
  --color-context-fe6ad17d: #164e63;
  --color-context-b7b9e5fa: #0d1b2a;
  --color-context-c99a3a11: #8fa8bf;
  --color-context-5b4ea80d: #64a4c4;
  --color-context-6ef712c2: #3a5570;
  --color-context-277a5eb3: #4a7a9b;
  --color-context-fee8da92: #f2f7fb;
  --color-context-7583ad09: #d8e6f0;
  --color-context-020e0683: #e1ecf5;
  --color-context-9a02d9ac: #2c4a63;
  --color-context-4ec2b180: #f4f8fb;
  --color-context-dd8775d2: #e7f0f7;
  --color-context-43d79b60: #F5F8FB;
  --color-context-d16c2468: #EEF3F8;
  --color-text-muted: #3A4744;
  --color-context-faae3c9b: #DCE5EE;
  --color-text: #15201E;
  --color-brand-forest-90: #112D1F;
  --color-context-eadcbab3: #C9D6E4;
  --color-text-subtle: #5F6A65;
  --color-context-6372961d: #F2F5F9;
  --color-context-74ebbb0a: #E5ECF2;
  --color-context-d6fd82de: #E6F5EE;
  --color-context-480c2d2c: #0A7A54;
  --color-border-strong: #D7D7DC;
  --color-context-9d3e148f: #C5343A;
  --color-context-49d515d4: #27356b;
  --color-context-0da11cb1: #f4f6fa;
  --color-context-21a46ff0: #3a4257;
  --color-context-6fd33f3b: #e7e9ef;
  --color-context-f55168ef: #eef2fb;
  --color-context-8f957a54: #1f2a55;
  --color-context-448afe93: #0f2342;
  --color-context-081cc9e3: #10b981;
  --color-context-3b8aacc3: #7E9CB8;
  --color-context-34b11348: #0E9E6E;
  --color-context-e5457d22: #4FD0A2;
  --color-context-a1787bb1: #C77A12;
  --color-context-abf6cea0: #E8B15A;
  --color-context-f20e28db: #7C3AED;
  --color-context-a5d55ea7: #A985F0;
  --color-context-d743d85e: #1602;
  --color-context-6e31e639: #1579;
  --color-context-d195b556: #8211;
  --color-context-35ba82cd: #038;
  --color-surface: #fff;
  --color-context-cdddffcd: #111;
  --color-context-4c58cd21: #eee;
  --color-context-8fc3840f: #222;
  --color-context-44ca7d7a: #999;
  --color-context-d4360451: #ccc;
  --color-context-752909e3: #444;
  --color-context-bc52a098: #036;
  --color-context-cb48e6e5: #333;
  --color-context-df9c1d2d: #666;
  --color-context-877a6d1a: #555;
  --color-context-b204248b: #ddd;
  --color-context-598b32b7: #000;
  /* ---- Restored Legacy Aliases & Safety Fallbacks ----------------------- */
  --color-legacy-513f55cd: #FFFFFF; /* High-frequency white text (used across buttons & toasts) */
  --color-legacy-1e9d958e: #2BE49E; /* Toast checkmark accent */
  --color-legacy-183f2c:   #1f5138; /* Surge green */
  --color-legacy-15201e:   #15201E; /* Charcoal dark */
  --color-legacy-3a4744:   #3A4744; /* Muted text */
  --color-legacy-596b66:   #596B66; /* Subtle text */
  --color-legacy-fdfcfb:   #FDFCFA;
  --color-legacy-f3f1ec:   #F3F1EC;
  --color-legacy-598b32b7: #000000;
  --color-legacy-cab0c87a: #0E9E6E;
  --color-legacy-ab05687b: #0A7A54;
  --color-legacy-2424d641: #E6F5EE;
  --color-legacy-9bfa8ec1: #2563EB;
  --color-legacy-f3f3ce76: #1D4FD7;
  --color-legacy-7bfd5cff: #E5ECFD;
  --color-legacy-ab050d70: #7C3AED;
  --color-legacy-bd125596: #6A28D9;
  --color-legacy-7571125c: #EEE7FC;
  --color-legacy-edd4f4de: #E0831F;
  --color-legacy-d3fe9a88: #B45309;
  --color-legacy-cbadf282: #FBEFDA;
  --color-legacy-7eebdc49: #E5484D;
  --color-legacy-8c44d187: #C5343A;
  --color-legacy-d373049c: #FCEAEA;
  --color-legacy-d91c18c4: #0E9AA6;
  --color-legacy-e27c2b81: #0A767F;
  --color-legacy-de9990fc: #E3F4F5;
  --color-legacy-b7b4cbb0: #5F6A65;
  --color-legacy-e0db2266: #15201E;
  --color-legacy-87a569dc: #0E9E6E;
  --color-legacy-1a6890d1: #22C55E;
  /* ---- Public semantic brand contract ---------------------------------- */
  --color-brand-forest-10: #E8EFEA;
  --color-brand-forest-50: #1f5138;
  --color-brand-forest-90: #112D1F;
  --color-page: #FAFAFA;
  --color-surface: #FFFFFF;
  --color-text: #15201E;
  --color-text-muted: #3A4744;
  --color-text-subtle: #5F6A65;
  --color-border: #E6E6E9;
  --color-border-strong: #D7D7DC;
  --color-action: var(--color-brand-forest-50);
  --color-action-hover: var(--color-brand-forest-90);
  --type-display-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --type-body-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --type-label-family: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
  /* ---- Surfaces / paper -------------------------------------------------- */
  --paper:            #FAFAFA; /* page bg — neutral near-white                  */
  --paper-sunk:       var(--color-ink-100); /* recessed / alternating sections               */
  --surface:          #FFFFFF; /* cards, panels, spec tables, COA viewer        */
  --surface-raised:   #FFFFFF; /* hover-lifted surface (differs by shadow only) */

  /* ---- Ink / text -------------------------------------------------------- */
  --ink:    var(--color-ink-900);  /* primary text & headlines — verdigris-keyed near-black  */
  --ink-2:  var(--color-ink-700);  /* body copy                                             */
  --ink-3:  var(--color-ink-500);  /* tertiary / captions / small labels — AA on paper+sunk */
  --muted:  #9AA39F;  /* DECORATION ONLY (ticks, placeholders) — not body text */

  /* ---- Hairlines / borders ---------------------------------------------- */
  --hairline:        var(--color-ink-200); /* default ruled line — structural workhorse        */
  --hairline-strong: var(--color-ink-300); /* hover / active borders                          */

  /* ---- Signature hue (Surge Forest Green) -------------------------------- */
  --accent:        #1f5138; /* primary CTA, active states, links, focus, figures (white text = AA) */
  --accent-press:  #17402B; /* pressed / hover / accent-text-on-light (AA)        */
  --accent-tint:   #EBF3EE; /* faint wash — verified badge, active tab            */
  --accent-tint-2: #F3F7F4; /* lightest breath — data rail, signature panel base  */

  /* ---- Clinical Gold Accents (High-value perks, savings & seals) --------- */
  --gold:          #D8A43A;
  --gold-deep:     #B8860B;
  --gold-tint:     #FDF9EE;
  --gold-border:   rgba(216, 164, 58, 0.35);
  --gold-badge:    linear-gradient(135deg, #FBE7A8 0%, #EBC461 55%, #D8A43A 100%);
  --gold-text:     #5E420B;

  /* ---- Categorical accents (descriptions, data viz, research areas) ------ */
  /* Lively but clinical — used to classify mechanisms, bars, cards. Slate    */
  /* accent stays the brand; these add ~50% more color across the site.       */
  --c-emerald: var(--color-emerald-500); --c-emerald-ink: var(--color-emerald-700); --c-emerald-tint: var(--color-emerald-50);
  --c-azure: var(--color-azure-500); --c-azure-ink: var(--color-azure-700); --c-azure-tint: var(--color-azure-50);
  --c-violet: var(--color-violet-500); --c-violet-ink: var(--color-violet-700); --c-violet-tint: var(--color-violet-50);
  --c-amber: var(--color-amber-500); --c-amber-ink: var(--color-amber-700); --c-amber-tint: var(--color-amber-50);
  --c-rose: var(--color-rose-500); --c-rose-ink: var(--color-rose-700); --c-rose-tint: var(--color-rose-50);
  --c-teal: var(--color-teal-500); --c-teal-ink: var(--color-teal-700); --c-teal-tint: var(--color-teal-50);

  /* ---- Data / analytical ------------------------------------------------ */
  --trace:      #1f5138; /* chromatogram / mass-spec stroke (== accent)          */
  --trace-soft: #55745E; /* secondary trace, under-curve, bond highlight         */
  --success:    #1D7A4C; /* PASS / in-spec / verified status only                */
  --warn:       #9A6A12; /* caution accents/borders (decorative weight)          */
  --warn-text:  #8A5E0F; /* caution TEXT — AA on paper (5.4:1)                   */
  --focus-ring: #1f5138; /* focus-visible ring color                            */

  /* ---- Tonal gradients (one hue, two lightness stops) ------------------- */
  --grad-hero:        linear-gradient(180deg, #FFFFFF 0%, #FAFAFA 100%);
  --grad-accent:      linear-gradient(160deg, #F2F6F3 0%, #E8EFEA 100%);
  --grad-trace-under: linear-gradient(180deg, rgba(31,81,56,0.10) 0%, rgba(31,81,56,0) 100%);

  /* ---- Typography -------------------------------------------------------- */
  /* Clinical IBM Plex system — scientific/technical register, one sans + one mono */
  --font-display: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-sans:  "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-serif: var(--font-sans); /* serif retired — clinical brand uses sans display */
  --font-mono:  "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;

  --fs-display: clamp(2.6rem, 1rem + 5.2vw, 4.6rem);
  --fs-h1:      clamp(2rem, 1.2rem + 2.8vw, 3rem);
  --fs-h2:      clamp(1.6rem, 1.2rem + 1.4vw, 2rem);
  --fs-h3:      var(--text-size-600);
  --fs-h4:      var(--text-size-500);
  --fs-wholesale-title: clamp(2.3rem, 5vw, 3.7rem); /* existing wholesale headline */
  --lh-wholesale-title: 1.03;
  --fs-lead:    var(--text-size-500); /* wholesale lead and opt-in subtitle preset */
  --fs-body:    var(--text-size-400);
  --fs-sm:      var(--text-size-300);
  --fs-xs:      var(--text-size-200);
  --fs-eyebrow: var(--text-size-100);
  --fs-meta:    var(--text-size-200);
  --fs-figure:  clamp(2rem, 1.2rem + 2.6vw, 2.75rem);

  --lh-tight:   1.04;
  --lh-heading: 1.12;
  --lh-body:    1.65;
  /* Existing tag metrics also drive the opt-in text presets. */
  --lh-h1: 1.1;
  --lh-h2: 1.14;
  --lh-h3: 1.2;
  --lh-h4: 1.3;
  --lh-small-heading: 1.4;
  --tracking-section: -0.018em;
  --tracking-h3: -0.012em;
  --tracking-h4: -0.006em;

  /* Contextual titles: preserve each deployed template's proportions. */
  --fs-home-title: clamp(2.6rem, 4.7vw, 4.25rem);
  --tracking-home-title: -0.028em;
  --fs-product-title: clamp(2.15rem, 1.2rem + 2.2vw, 3.45rem);
  --lh-product-title: 0.98;
  --fs-product-title-mobile: 1.65rem;
  --lh-product-title-mobile: 1.02;
  --fs-legal-title: clamp(2.1rem, 4.6vw, 3.1rem);
  --lh-legal-title: 1.05;

  --tracking-display: -0.022em;
  --tracking-h1:      -0.02em;
  --tracking-h2:      -0.015em;
  --tracking-eyebrow:  0.16em;

  /* ---- Spacing scale ----------------------------------------------------- */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;
  --space-9: 6rem;
  --space-10: 8rem;

  --section-pad: clamp(3.5rem, 6vw, 5.5rem);
  --gutter:      clamp(0.85rem, 0.35rem + 1vw, 1.25rem);

  /* ---- Containers -------------------------------------------------------- */
  --container:    1380px;
  --container-md: var(--container); /* aligned with --container so section edges match */
  --container-sm: 1000px;
  --container-xs: 860px;
  --container-text: 760px;

  /* ---- Radii (restrained, near-architectural) --------------------------- */
  --radius-0:    0px;
  --radius-xs:   var(--radius-100);
  --radius-sm:   var(--radius-200);
  --radius-md:   var(--radius-300);
  --radius-lg:   var(--radius-400);
  --radius-pill: var(--radius-full);

  /* ---- Elevation (hairline-first, cool, low-alpha) ---------------------- */
  --shadow-hairline: 0 1px 0 0 rgba(21,32,30,0.04);
  --shadow-1: var(--shadow-100);
  --shadow-2: var(--shadow-200);
  --shadow-3: var(--shadow-300);

  /* ---- Motion tokens ----------------------------------------------------- */
  --dur-instant: 120ms;
  --dur-fast:    200ms;
  --dur-base:    340ms;
  --dur-slow:    440ms;
  --dur-draw:    1100ms;
  --dur-countup: 1200ms;

  --ease-out:      cubic-bezier(0.16, 1, 0.3, 1);
  --ease-out-soft: cubic-bezier(0.22, 0.61, 0.36, 1);
  --ease-inout:    cubic-bezier(0.65, 0, 0.35, 1);
  --ease-magnetic: cubic-bezier(0.33, 1, 0.68, 1);

  --travel-fadeup:    20px;
  --travel-fadeup-sm: 16px;
  --lift-card:        -3px;
  --lift-card-strong: -4px;

  --stagger-step: 32ms;

  /* ---- Animation-kit bridge (surge-animations.css reads these) ------------- */
  --surge-accent:       #1f5138;
  --surge-accent-rgb:   31, 81, 56;
  --surge-accent-dark:  #112D1F;
  --surge-accent-light: #E8EFEA;
  --surge-ink:          #15201E;
  --surge-muted:        #5F6A65;
  --surge-surface:      #FFFFFF;
  --surge-line:         #E4E2DB;
  --surge-radius:       var(--radius-200);
  --surge-ease:         cubic-bezier(0.16, 1, 0.3, 1);

  /* ---- Compatibility palette: retained deployed colors, one owner -------- */
  --surge-paper: #F4F7F1; /* legacy warm page surface */
  --surge-white: #FFFEFA; /* legacy warm cards and reversed brand text */
  --surge-mist: #E7EFE8; /* legacy soft chips */
  --surge-clear: #DCEFE1; /* pale green emphasis */
  --surge-green: var(--color-forest-700); /* legacy green actions */
  --surge-deep: #123D28; /* deep-green actions and dark brand surface */
  --legacy-panel-wash: rgba(220,239,225,.55); /* decorative hero glow only */
  --legacy-chip-line: rgba(31,81,56,.18); /* decorative chip boundary only */
  --legacy-card-shadow: 0 12px 32px -6px rgba(18,61,40,.10), 0 0 0 1px rgba(18,61,40,.05);

  /* ---- Semantic roles: wholesale + opt-in element library ---------------- */
  --surface-brand: var(--surge-deep); /* one dark hero anchor */
  --surface-brand-raised: var(--accent); /* tier card on dark hero */
  --surface-brand-active: var(--surge-green); /* current volume tier */
  --on-brand: var(--surge-white); /* headings/numbers on brand surfaces */
  --on-brand-muted: var(--surge-clear); /* secondary text on brand surfaces */
  --border-brand: color-mix(in srgb, var(--on-brand-muted) 35%, transparent); /* decorative boundary */
  --on-accent: var(--surface); /* text on primary light-page actions */
  --border-control: var(--ink-3); /* visible input boundary on light surfaces */
  --error: var(--c-rose-ink); /* error text, with a written message */
  --mask-solid: #000000; /* opaque mask stop, not a text or surface role */

  /* ---- Restored Legacy Aliases & Safety Fallbacks ---- */
  --color-legacy-d0e60b79: #081B12; /* Core dark green surface */
  --color-legacy-04cc754a: #C3CCDB; /* Sunk text / muted slate */
  --color-legacy-0629e8a0: #E6E9ED; /* High contrast light slate */
  --color-legacy-5c0480d7: #E7EFE8; /* Light green surface / mist */
  --color-legacy-c996194e: #BDCEC3; /* Muted green border / sep */
  --color-legacy-c5fe4108: #CBDDCF; /* Verify card border */
  --color-legacy-8d40328c: #DCEFE1; /* Clear cyan dot / accent */
  --color-legacy-8cc25267: #1f5138; /* Surge forest green */
  --color-legacy-aa064345: #435E4B; /* Muted forest text */
  --color-legacy-302cb840: #F4F7F1; /* Pale paper surface */
  --color-legacy-d51c3db5: #ECF0F6; /* Recessed sunk surface */
  --color-context-8d7a2619: rgba(59, 178, 130, 0.16); /* Dark section border */
  --color-context-dfccdece: rgba(59, 178, 130, 0.20); /* Footer border */
  --color-context-27cf3fc9: rgba(59, 178, 130, 0.13); /* Radial glow */
  --color-context-efcbf000: rgba(70, 120, 200, 0.20); /* Shop hero radial glow */
  --color-context-f02a4040: rgba(31, 81, 56, 0.16);  /* Verify portal radial glow */
  --color-context-53bee044: rgba(8, 27, 18, 0.22);   /* Hero bottom shade */
  --color-context-76b9324e: rgba(8, 27, 18, 0.62);   /* Hero veil dark start */
  --color-context-f13f505d: rgba(8, 27, 18, 0.28);   /* Hero veil dark mid */
  --color-context-711406d8: rgba(8, 27, 18, 0.08);   /* Hero veil dark end */
  --color-context-d1ff836a: rgba(8, 27, 18, 0.72);   /* Mobile hero veil start */
  --color-context-958297b0: rgba(8, 27, 18, 0.40);   /* Mobile hero veil mid */
  --color-context-5f02ad37: rgba(8, 27, 18, 0.08);   /* Mobile hero veil end */
  --color-context-202e5357: rgba(220, 239, 225, 0.35); /* Chip border */
  --color-context-0953a133: rgba(18, 61, 40, 0.24);  /* Chip background */
  --color-context-9d653dbf: rgba(18, 61, 40, 0.14);  /* Card shadow */
  --color-context-cf3cd4d4: rgba(59, 178, 130, 0.06); /* Analytical grid texture */
  --color-context-ac698629: rgba(59, 178, 130, 0.05); /* Shop grid texture */
  --color-context-68ca3622: rgba(8, 27, 18, 0.30);   /* Analytical flat overlay */
  --color-context-6cf58987: rgba(8, 27, 18, 0.90);   /* Analytical veil start */
  --color-context-a49de7f8: rgba(8, 27, 18, 0.44);   /* Analytical veil mid */
  --color-context-ef35e565: rgba(8, 27, 18, 0.34);   /* Analytical veil end */

  /* ---- Z layers ---------------------------------------------------------- */
  --z-grain:    1;
  --z-content:  2;
  --z-rail:     40;
  --z-nav:      50;
  --z-progress: 60;
  --z-cursor:   9999;
}

/* ============================================================================
   DESIGN SYSTEM LAYER (2026-10-05) — one scale per concept. Existing names above
   keep working; they now point at these steps. Plain names: --color-ink-900,
   --text-size-300, --radius-200, --border-subtle, --shadow-200, --space-300.
   ============================================================================ */
:root {
  /* ---- Color scales: one per hue, steps 50-900 (50 = lightest tint) ---- */
  --color-forest-50: #F3F7F4;
  --color-forest-100: #EBF3EE;
  --color-forest-200: #CBDACF;
  --color-forest-300: #9EBBA9;
  --color-forest-400: #6F9680;
  --color-forest-500: #55745E;
  --color-forest-600: #2E6B48;
  --color-forest-700: #1f5138;
  --color-forest-800: #1f5138;
  --color-forest-900: #17402B;

  --color-ink-50: #FAFAFA;
  --color-ink-100: #F0F0F2;
  --color-ink-200: #E6E6E9;
  --color-ink-300: #D7D7DC;
  --color-ink-400: #A3ABA8;
  --color-ink-500: #5F6A65;
  --color-ink-600: #4B5753;
  --color-ink-700: #3A4744;
  --color-ink-800: #26312F;
  --color-ink-900: #15201E;

  --color-emerald-50: #E6F5EE;
  --color-emerald-100: #BBE4D4;
  --color-emerald-200: #90D2BB;
  --color-emerald-300: #64C1A1;
  --color-emerald-400: #39AF88;
  --color-emerald-500: #0E9E6E;
  --color-emerald-600: #0C8C61;
  --color-emerald-700: #0A7A54;
  --color-emerald-800: #064F37;
  --color-emerald-900: #043122;

  --color-azure-50: #E5ECFD;
  --color-azure-100: #BFD1F9;
  --color-azure-200: #98B5F6;
  --color-azure-300: #729AF2;
  --color-azure-400: #4B7EEF;
  --color-azure-500: #2563EB;
  --color-azure-600: #2159E1;
  --color-azure-700: #1D4FD7;
  --color-azure-800: #13338C;
  --color-azure-900: #0C2056;

  --color-violet-50: #EEE7FC;
  --color-violet-100: #D7C4F9;
  --color-violet-200: #C0A2F6;
  --color-violet-300: #AA7FF3;
  --color-violet-400: #935DF0;
  --color-violet-500: #7C3AED;
  --color-violet-600: #7331E3;
  --color-violet-700: #6A28D9;
  --color-violet-800: #451A8D;
  --color-violet-900: #2A1057;

  --color-amber-50: #FBEFDA;
  --color-amber-100: #F6D9B5;
  --color-amber-200: #F0C48F;
  --color-amber-300: #EBAE6A;
  --color-amber-400: #E59944;
  --color-amber-500: #E0831F;
  --color-amber-600: #CA6B14;
  --color-amber-700: #B45309;
  --color-amber-800: #753606;
  --color-amber-900: #482104;

  --color-rose-50: #FCEAEA;
  --color-rose-100: #F7CACB;
  --color-rose-200: #F3A9AB;
  --color-rose-300: #EE898C;
  --color-rose-400: #EA686C;
  --color-rose-500: #E5484D;
  --color-rose-600: #D53E44;
  --color-rose-700: #C5343A;
  --color-rose-800: #802226;
  --color-rose-900: #4F1517;

  --color-teal-50: #E3F4F5;
  --color-teal-100: #B8E2E5;
  --color-teal-200: #8ED0D5;
  --color-teal-300: #63BEC6;
  --color-teal-400: #39ACB6;
  --color-teal-500: #0E9AA6;
  --color-teal-600: #0C8892;
  --color-teal-700: #0A767F;
  --color-teal-800: #064D53;
  --color-teal-900: #042F33;

  --color-white: #FFFFFF;
  --color-black: #000000;

  /* ---- Type scale ---- */
  --text-size-100: 0.75rem;    /* eyebrow, micro labels */
  --text-size-200: 0.8125rem;  /* meta, captions */
  --text-size-300: 0.875rem;   /* small body, buttons */
  --text-size-400: 1rem;       /* body */
  --text-size-500: 1.125rem;   /* lead, h4 */
  --text-size-600: 1.375rem;   /* h3 */
  --text-size-700: clamp(1.6rem, 1.2rem + 1.4vw, 2rem);      /* h2 */
  --text-size-800: clamp(2rem, 1.2rem + 2.8vw, 3rem);        /* h1 */
  --text-size-900: clamp(2.6rem, 1rem + 5.2vw, 4.6rem);      /* display */
  --leading-100: 1.04; --leading-200: 1.12; --leading-300: 1.3; --leading-400: 1.45; --leading-500: 1.65;
  --weight-regular: 400; --weight-medium: 500; --weight-semibold: 600; --weight-bold: 700;
  --tracking-tight: -0.02em; --tracking-normal: 0; --tracking-wide: 0.04em; --tracking-label: 0.12em;

  /* ---- Radius scale ---- */
  --radius-100: 3px; --radius-200: 6px; --radius-300: 10px; --radius-400: 14px; --radius-500: 20px; --radius-full: 999px;

  /* ---- Border set: width + color levels ---- */
  --border-width-100: 1px; --border-width-200: 2px;
  --border-subtle: var(--border-width-100) solid var(--color-ink-200);
  --border-default: var(--border-width-100) solid var(--color-ink-300);
  --border-strong: var(--border-width-100) solid var(--color-ink-500);
  --border-accent: var(--border-width-100) solid var(--color-forest-800);
  --border-focus: var(--border-width-200) solid var(--color-forest-800);
  --border-color-subtle: var(--color-ink-200); --border-color-default: var(--color-ink-300); --border-color-strong: var(--color-ink-500); --border-color-accent: var(--color-forest-800);

  /* ---- Shadow scale (cool, low alpha) ---- */
  --shadow-100: 0 1px 2px rgba(21,32,30,0.05), 0 0 0 1px rgba(21,32,30,0.03);
  --shadow-200: 0 4px 12px -2px rgba(21,32,30,0.08), 0 0 0 1px rgba(21,32,30,0.04);
  --shadow-300: 0 12px 32px -6px rgba(21,32,30,0.10), 0 2px 8px -2px rgba(21,32,30,0.06);
  --shadow-focus: 0 0 0 3px rgba(24,63,44,0.28);

  /* ---- Spacing scale (4px base) ---- */
  --space-50: 0.125rem; --space-100: 0.25rem; --space-150: 0.375rem; --space-200: 0.5rem; --space-300: 0.75rem; --space-400: 1rem;
  --space-500: 1.5rem; --space-600: 2rem; --space-700: 3rem; --space-800: 4rem; --space-900: 6rem;
  --gutter-min: 1rem; /* never less than 16px side gutter */

  /* ---- Recovered color aliases (values restored from pre-tokenisation CSS) ---- */
  --color-context-00b666a5: rgba(59,178,130,0.14);
  --color-context-0690c4ee: rgba(21, 32, 30, .07);
  --color-context-073130f3: rgba(59,178,130,0.12);
  --color-context-07a51b44: rgba(16,39,64,0.90);
  --color-context-08f6a992: rgba(58,93,122,0.14);
  --color-context-09e1e8d2: rgba(255, 255, 255, 0.2);
  --color-context-09f434b6: rgba(169,186,214,0.18);
  --color-context-09f48282: rgba(46, 75, 99, .35);
  --color-context-0bd159b5: rgba(16, 24, 32, 0.16);
  --color-context-0d3f8e07: rgba(29,122,76,0.16);
  --color-context-1119e81f: rgba(252,253,255,0.55);
  --color-context-1220db09: rgba(28,44,61,0.10);
  --color-context-12959fe1: rgba(58,93,122,0.55);
  --color-context-1534bf66: rgba(46, 75, 99, .3);
  --color-context-16115198: rgba(255, 255, 255, 0.55);
  --color-context-171f9e64: rgba(169,186,214,0.20);
  --color-context-19df861f: rgba(46, 75, 99, .45);
  --color-context-1cbb38ce: rgba(59,178,130,0.18);
  --color-context-1d00c31e: rgba(169,186,214,0.32);
  --color-context-1e77a2b1: rgba(29,122,76,0.25);
  --color-context-1e820de1: rgba(220,239,225,.10);
  --color-context-1e8fc987: rgba(18,61,40,.10);
  --color-context-20cd1d15: rgba(16, 39, 64, 0.18);
  --color-context-20e1d9f5: #243b50;
  --color-context-21c415ad: rgba(55,208,138,0);
  --color-context-254f7567: rgba(255, 255, 255, 0);
  --color-context-25768e1e: rgba(255, 255, 255, .45);
  --color-context-25e1cb03: #e5edf3;
  --color-context-275563ce: rgba(92,147,230,0.55);
  --color-context-28b516db: rgba(255, 255, 255, 0.45);
  --color-context-2a9ccdf8: rgba(78, 143, 134, 0.35);
  --color-context-2aa373e8: rgba(24,40,66,0.92);
  --color-context-2c5f3604: rgba(91, 228, 155, .55);
  --color-context-34270575: rgba(46, 75, 99, 0.22);
  --color-context-34f8e530: rgba(28,44,61,0.32);
  --color-context-35dcd7b2: rgba(58,93,122,0.10);
  --color-context-38bd7705: rgba(46, 75, 99, 0.36);
  --color-context-38bdce64: rgba(29,122,76,0.10);
  --color-context-38da6d9f: rgba(255,255,255,0.07);
  --color-context-3af24e9d: rgba(8,15,26,0.72);
  --color-context-3b3c3448: rgba(220,239,225,.30);
  --color-context-431ad745: rgba(15,27,45,0.20);
  --color-context-48643f55: rgba(169,186,214,0.26);
  --color-context-48c247e1: rgba(29,90,56,.18);
  --color-context-4ac867a4: rgba(0,0,0,0.35);
  --color-context-4acc41aa: rgba(59,178,130,0.02);
  --color-context-4bf3c31a: rgba(16,24,32,0.55);
  --color-context-4c791ca1: rgba(18,61,40,.05);
  --color-context-5098ef65: rgba(255, 255, 255, 0.94);
  --color-context-55c2fb0c: rgba(46, 75, 99, 0.95);
  --color-context-561bbd1e: #65717b;
  --color-context-573476d5: rgba(169,186,214,0.45);
  --color-context-58bdb557: rgba(15,27,45,0.12);
  --color-context-5923c494: rgba(55,208,138,0.5);
  --color-context-5bf41fa5: rgba(21, 32, 30, .14);
  --color-context-5e4c306b: rgba(20,40,74,0.85);
  --color-context-611ab071: rgba(24,63,44,.06);
  --color-context-65a46ff3: rgba(59,178,130,0.07);
  --color-context-66090de4: rgba(21, 32, 30, 0.04);
  --color-context-661e9ea7: rgba(255,255,255,.10);
  --color-context-6c22d43c: rgba(21, 32, 30, .35);
  --color-context-70c9fdd1: rgba(59,178,130,0.22);
  --color-context-75469876: rgba(0,0,0,0.62);
  --color-context-7914e075: rgba(16,39,64,0.06);
  --color-context-7a1c0ffd: rgba(59,178,130,0.35);
  --color-context-7ea7ea43: rgba(58,93,122,0.18);
  --color-context-7f8b941c: rgba(255, 255, 255, 0.32);
  --color-context-7fb9736c: rgba(91, 228, 155, 0);
  --color-context-80ac29a3: rgba(255, 255, 255, .13);
  --color-context-80f16d7e: rgba(46, 75, 99, 0.3);
  --color-context-824c5f12: rgba(24,63,44,0.6);
  --color-context-83978b5d: rgba(10, 19, 32, 0.5);
  --color-context-84da7a19: rgba(255,255,255,0.04);
  --color-context-851ad24d: rgba(2,8,20,0.95);
  --color-context-85f89ec1: rgba(255,255,255,0.05);
  --color-context-874bf614: rgba(169,186,214,0.10);
  --color-context-875ad3bb: rgba(16, 39, 64, 0.38);
  --color-context-8bd89f9e: rgba(78, 143, 134, .35);
  --color-context-8d2af7fb: rgba(255, 255, 255, 0.22);
  --color-context-90b5ac04: rgba(21, 32, 30, .3);
  --color-context-91655961: rgba(169,186,214,0.12);
  --color-context-931ec956: #8ea8bc;
  --color-context-937dce02: rgba(55,208,138,0.6);
  --color-context-95584efa: rgba(169,186,214,0.14);
  --color-context-971a40e0: rgba(15,27,45,0.18);
  --color-context-9b3f0b80: rgba(157,180,218,0.45);
  --color-context-9e6a48e5: rgba(21,32,30,0.08);
  --color-context-9fd0217a: rgba(15, 18, 24, .03);
  --color-context-a34f88bc: rgba(58,93,122,0.42);
  --color-context-a5d8b569: rgba(46, 75, 99, 0.45);
  --color-context-a71fe651: rgba(0,0,0,0.55);
  --color-context-a862f879: rgba(240, 240, 242, 0.5);
  --color-context-aa171829: rgba(16,39,64,0.97);
  --color-context-ad8d1fd1: rgba(46, 75, 99, .22);
  --color-context-adc5232e: rgba(252,253,255,0.84);
  --color-context-af3ac47f: rgba(91, 228, 155, 0.55);
  --color-context-af665e3b: rgba(255,255,255,0.92);
  --color-context-afdc0c4e: rgba(29,122,76,0.06);
  --color-context-b0bd9622: rgba(24,63,44,0.45);
  --color-context-b18516ac: rgba(16, 24, 32, 0.1);
  --color-context-b1cb2539: rgba(46, 75, 99, 0.85);
  --color-context-b5c93340: rgba(21, 32, 30, .4);
  --color-context-bde3e682: rgba(58,93,122,0.62);
  --color-context-c2bad8af: rgba(24,63,44,0.06);
  --color-context-c369c5e1: rgba(2,8,20,0.9);
  --color-context-c4ec5c7d: rgba(16, 24, 32, 0.28);
  --color-context-c792a458: rgba(10, 19, 32, 0.38);
  --color-context-c90ada57: rgba(255,255,255,0.78);
  --color-context-ca012478: rgba(255, 255, 255, 0.13);
  --color-context-cad61acb: rgba(10, 19, 32, 0.55);
  --color-context-cc631e0e: rgba(24,63,44,0);
  --color-context-cca0907b: rgba(18,61,40,.72);
  --color-context-ce34a166: rgba(15,26,38,0.28);
  --color-context-d0043b6d: rgba(14,24,42,0.94);
  --color-context-d3d534b8: rgba(123,224,169,0.32);
  --color-context-d4f980a8: rgba(16, 39, 64, 0.09);
  --color-context-d556a72c: rgba(18,61,40,.55);
  --color-context-d6ebb368: rgba(255, 255, 255, .32);
  --color-context-d86c51f7: rgba(59,178,130,0.30);
  --color-context-da090f06: rgba(59,178,130,0.10);
  --color-context-def7283c: rgba(24,63,44,0.55);
  --color-context-dffc7765: rgba(21, 32, 30, .11);
  --color-context-e31e9854: rgba(9,17,30,0.55);
  --color-context-e354b874: rgba(16, 24, 32, 0.2);
  --color-context-e4fb9c64: rgba(220,239,225,.22);
  --color-context-e5d5973c: rgba(92,147,230,0.30);
  --color-context-e9ea3e30: rgba(255,255,255,0.06);
  --color-context-ed7d66d8: rgba(21, 32, 30, .05);
  --color-context-ef906a2a: rgba(29,122,76,0.05);
  --color-context-f0252325: rgba(255,255,255,0.65);
  --color-context-f0cf025d: rgba(46, 75, 99, 0.35);
  --color-context-f28759d4: rgba(15,26,38,0.34);
  --color-context-f31dc98c: rgba(169,186,214,0.28);
  --color-context-f7be18a4: rgba(220,239,225,.55);
  --color-context-f8ca3e50: rgba(16, 24, 32, 0.055);
  --color-context-f8f94169: #101820;
  --color-context-fc2096af: rgba(59,178,130,0.08);
  --color-context-fcde0663: rgba(220,239,225,.34);
  --color-context-fd25538b: rgba(158,178,210,0.16);
  --color-context-fed31dfe: rgba(16, 24, 32, 0.12);
  --color-context-ff251f2a: rgba(15,27,45,0.30);
  --color-context-ff484be7: rgba(255,255,255,0.14);
  --color-context-ffaf9cd0: rgba(29,122,76,0.14);
  --color-legacy-05f468dc: #F7F3FE;
  --color-legacy-073d2732: #EAF0F8;
  --color-legacy-0a5f7aa5: #FDFEFE;
  --color-legacy-0da22e81: #55745E;
  --color-legacy-11b45bda: #E6ECF6;
  --color-legacy-1238dd6f: #F1F5FB;
  --color-legacy-1d6e6642: #E0A33C;
  --color-legacy-1eabaad2: #F2F6F3;
  --color-legacy-210b83b7: #F6F7F9;
  --color-legacy-23ea0bff: #9BB6A2;
  --color-legacy-246dc19c: #5BE49B;
  --color-legacy-2660cf92: #D9DAE3;
  --color-legacy-26a0466d: #9DB4DA;
  --color-legacy-2718ddb9: #6E809E;
  --color-legacy-2a07e21f: #DCE5DD;
  --color-legacy-2ef2ac4d: #EDF1F8;
  --color-legacy-30f86365: #E5484D;
  --color-legacy-381e46da: #93A6C6;
  --color-legacy-44ca7d7a: #999;
  --color-legacy-494cf62a: #F2F7FF;
  --color-legacy-4bf29fc7: #37D08A;
  --color-legacy-5340b2c3: #F0F0F2;
  --color-legacy-5375b18d: #17251D;
  --color-legacy-5cf96212: #9CA3AF;
  --color-legacy-61699457: #12A971;
  --color-legacy-62a00461: #BFE6D3;
  --color-legacy-65c0eb9a: #3D4A5F;
  --color-legacy-661dfbc1: #286344;
  --color-legacy-669fdb80: #C6D2E6;
  --color-legacy-6bef897b: #EAF2FF;
  --color-legacy-6fd9a503: #0A7A50;
  --color-legacy-70974d15: #42688A;
  --color-legacy-76e97166: #123D28;
  --color-legacy-77302882: #B8D6C0;
  --color-legacy-773de1c8: #B4C9BB;
  --color-legacy-7ccc97ef: #E6EEF6;
  --color-legacy-803e656c: #DCE0E9;
  --color-legacy-80c45436: #4A739A;
  --color-legacy-828a6034: #E0831F;
  --color-legacy-82ea1fa8: #3A6B66;
  --color-legacy-8b17f032: #77869F;
  --color-legacy-934f2728: #EBEFF5;
  --color-legacy-9573553f: #DCDEE5;
  --color-legacy-977ab2d7: #8FA3C4;
  --color-legacy-9b979874: #6E82A4;
  --color-legacy-9dac8e84: #8194B4;
  --color-legacy-9def87d9: #0C2016;
  --color-legacy-9f893659: #152238;
  --color-legacy-a1787bb1: #C77A12;
  --color-legacy-a260f8ed: #B7BBC3;
  --color-legacy-a37aa384: #7BE0A9;
  --color-legacy-a45380e0: #F2FBF7;
  --color-legacy-a5909ca3: #F3F6FE;
  --color-legacy-a675430c: #E5E8EF;
  --color-legacy-a6a5fd45: #1C2C3D;
  --color-legacy-aba4faee: #EEF2F8;
  --color-legacy-abf6f275: #5A6F93;
  --color-legacy-ae271583: #5A7062;
  --color-legacy-b2013ea8: #FDF4F4;
  --color-legacy-b488345d: #5080A8;
  --color-legacy-bcda0dd8: #EAF1F8;
  --color-legacy-be136154: #374151;
  --color-legacy-bf65c20a: #0F1A26;
  --color-legacy-bfc0be68: #CFE0FA;
  --color-legacy-c10408bb: #F3F6FB;
  --color-legacy-c1363c9e: #21543B;
  --color-legacy-ccd3c3ef: #F5F8F8;
  --color-legacy-cf802270: #E8F3EC;
  --color-legacy-d34dc998: #7FA8C9;
  --color-legacy-dac22734: #DCE7F1;
  --color-legacy-db4be7d9: #3BB282;
  --color-legacy-e0c200b2: #FDF7EE;
  --color-legacy-e64c1498: #5E7290;
  --color-legacy-eb985be4: #3F7A72;
  --color-legacy-ecce0a64: #F1FAFB;
  --color-legacy-f3e1e03f: #4E8F86;
  --color-legacy-fd1e3228: #E8F0EF;
  --color-legacy-fd7d429f: #DFF5E8;
  --color-legacy-fde1800b: #0E9AA6;
  --color-legacy-fdfba0eb: #0D2619;
  --color-legacy-130e8324: var(--color-forest-700);
  --color-legacy-39edff84: var(--color-teal-500);
  --color-legacy-469258d6: var(--color-azure-500);
  --color-legacy-d2c0f1be: var(--color-emerald-500);
  --color-legacy-d3fa70b7: var(--color-rose-500);
  --color-legacy-f982dd41: var(--color-violet-500);
  --color-legacy-9ca10fbb: var(--color-azure-500);
  --color-legacy-7b948f06: var(--color-azure-700);
  --color-legacy-4dde2dad: var(--color-amber-500);
  --color-legacy-66a4b482: var(--color-ink-400);
  --color-legacy-7bc9248b: var(--color-ink-300);
  --color-legacy-a888c51f: var(--color-white);
  --color-legacy-8c061e97: var(--color-ink-500);
  --color-legacy-ba43364e: var(--color-ink-300);
  --color-legacy-e97a9ef5: var(--color-ink-300);
}

/* ============================================================================
   Recovered aliases (G17 R7, 2026-10-06)
   The design-token migration (tools/migrate-design-tokens.mjs, commit 0844688) replaced every literal color with
   var(--color-context-<sha1 of the literal, first 8 hex>) but its generated alias block lost some entries, so
   81 names were used and never defined (the browser dropped those declarations).
   Each value below is the original literal, recovered from git (`git show 0844688^:<file>`) and checked by
   sha1(value)[0:8] = the name. A separate :root block so a re-run of the migrator cannot erase it.
   Checked by: node tools/check-css-vars.mjs (must print 0 undefined).
   ============================================================================ */
:root {
  --color-context-00f02078: rgba(20,30,45,.18); /* was in site/faq.html */
  --color-context-01b6ef48: #F4F7FC; /* was in site/membership.html */
  --color-context-04668775: #F7FCF9; /* was in site/membership.html */
  --color-context-0b102c4d: rgba(20,30,45,.4); /* was in site/faq.html */
  --color-context-0b40930c: #d8dde2; /* was in site/faq.html */
  --color-context-0c2d46eb: #9AA39F; /* was in site/assets/css/tokens.css */
  --color-context-0c55fc8a: #1E7B4D; /* was in site/account.html */
  --color-context-14589cf6: rgba(255,255,255,.56); /* was in site/membership.html */
  --color-context-15b44749: #5b46b8; /* was in site/contact.html */
  --color-context-16a36154: #D3F0E0; /* was in site/membership.html */
  --color-context-1eabaad2: #F2F6F3; /* was in site/assets/css/sections.css */
  --color-context-1fb7d2d4: rgba(24,63,44,0.3); /* was in site/typography-ab-comparison.html */
  --color-context-23090ef6: rgba(16, 24, 32, .12); /* was in site/membership.html */
  --color-context-2409b7e2: rgba(58, 93, 122, 0.85); /* was in site/index.html */
  --color-context-24ef6ea0: rgba(16,24,32,.06); /* was in site/membership.html */
  --color-context-26931180: #102A20; /* was in site/membership.html */
  --color-context-2d770b36: rgba(20,30,45,.2); /* was in site/faq.html */
  --color-context-3054ede2: #E9EEF6; /* was in site/membership.html */
  --color-context-30f86365: #E5484D; /* was in site/assets/css/components.css */
  --color-context-35eb719f: #B3352E; /* was in site/account.html */
  --color-context-43c35811: #0A2B1D; /* was in site/membership.html */
  --color-context-4be840ea: #8A6100; /* was in site/account.html */
  --color-context-4e1cfe56: #E7B6B3; /* was in site/account.html */
  --color-context-532eea27: #E7F8EF; /* was in site/membership.html */
  --color-context-533dcdad: #7C9183; /* was in site/membership.html */
  --color-context-5375b18d: #17251D; /* was in site/assets/css/brand-compliance.css */
  --color-context-600a35f6: rgba(20,30,45,.45); /* was in site/faq.html */
  --color-context-64790384: #B9D5C1; /* was in site/membership.html */
  --color-context-65172890: #FAFBFC; /* was in site/account.html */
  --color-context-65977fb8: #6f5bd6; /* was in site/contact.html */
  --color-context-661dfbc1: #286344; /* was in site/assets/css/sections.css */
  --color-context-68ac6082: #e7eaed; /* was in site/faq.html */
  --color-context-68edb738: #6b7480; /* was in site/faq.html */
  --color-context-6aadddd9: rgba(58,93,122,0.07); /* was in site/about.html */
  --color-context-6fbc1867: rgba(20,30,45,.03); /* was in site/faq.html */
  --color-context-703f6c10: #2FBF83; /* was in site/partners.html */
  --color-context-72542a6f: rgba(255, 255, 255, 0.8); /* was in site/index.html */
  --color-context-76e97166: #123D28; /* was in site/assets/css/brand-compliance.css */
  --color-context-77748c62: rgba(46, 75, 99, 0.55); /* was in site/index.html */
  --color-context-7b0f5460: #BDE8D0; /* was in site/membership.html */
  --color-context-7ec137e2: #EFF0F2; /* was in site/membership.html */
  --color-context-828a6034: #E0831F; /* was in site/assets/css/product.css */
  --color-context-8434bc6b: rgba(58, 93, 122, 0.28); /* was in site/index.html */
  --color-context-861df998: #1a2026; /* was in site/faq.html */
  --color-context-86967987: rgba(0,0,0,0.3); /* was in site/typography-ab-comparison.html */
  --color-context-882cfae3: #E7F7EE; /* was in site/membership.html */
  --color-context-8ab498f2: #c0d3c7; /* was in site/typography-ab-comparison.html */
  --color-context-9021e5c7: #8FA89B; /* was in site/typography-ab-comparison.html */
  --color-context-93852c58: rgba(58, 93, 122, 0.11); /* was in site/index.html */
  --color-context-93ce6d02: #f1f3f5; /* was in site/faq.html */
  --color-context-9bb95e0a: rgba(16, 39, 64, 0.06); /* was in site/account.html */
  --color-context-9bfa8ec1: #4E8062; /* was in site/assets/css/brand-compliance.css */
  --color-context-9cf24185: #9BA8BC; /* was in site/membership.html */
  --color-context-9d41bd7a: #E7F5EC; /* was in site/account.html */
  --color-context-a07f2a9c: rgba(255, 255, 255, 0.3); /* was in site/index.html */
  --color-context-a111b19e: #E2ECE5; /* was in site/typography-ab-comparison.html */
  --color-context-aa064345: #435E4B; /* was in site/assets/css/sections.css */
  --color-context-ad85b399: #A6AFAC; /* was in site/membership.html */
  --color-context-ae5def70: rgba(255,255,255,.16); /* was in site/membership.html */
  --color-context-b028b090: #46505a; /* was in site/faq.html */
  --color-context-b1dc5356: #FBEAE9; /* was in site/account.html */
  --color-context-b4861979: rgba(24,63,44,0.25); /* was in site/typography-ab-comparison.html */
  --color-context-c69c2313: #EFFAF4; /* was in site/membership.html */
  --color-context-c6eeb025: #B45309; /* was in site/assets/css/tokens.css */
  --color-context-d09cfa69: rgba(58,93,122,0.06); /* was in site/verify.html */
  --color-context-d0e60b79: #081B12; /* was in site/assets/css/sections.css */
  --color-context-d7247567: #F0FAF5; /* was in site/membership.html */
  --color-context-da3d8a08: rgba(255,255,255,.96); /* was in site/membership.html */
  --color-context-db4be7d9: #3BB282; /* was in site/assets/css/sections.css */
  --color-context-de233e9b: rgba(21,32,30,.5); /* was in site/coa-library.html */
  --color-context-defe9906: rgba(255,255,255,.93); /* was in site/assets/js/cart.js */
  --color-context-e6397eb7: #174B35; /* was in site/membership.html */
  --color-context-eba73c93: rgba(16, 39, 64, 0.03); /* was in site/account.html */
  --color-context-ec4219d8: #9B2C2C; /* was in site/ruo-policy.html */
  --color-context-f12e777e: #D8F2E5; /* was in site/membership.html */
  --color-context-f8200947: rgba(255,255,255,0.1); /* was in site/typography-ab-comparison.html */
  --color-context-f9ba20e3: #32506A; /* was in site/account.html */
  --color-context-fb5db786: #E4E2DB; /* was in site/assets/css/tokens.css */
  --color-context-fd164d14: #FBF3DF; /* was in site/account.html */
  --color-context-fe051bbb: #F26D71; /* was in site/partners.html */
  --color-context-ff50535d: rgba(255, 255, 255, 0.62); /* was in site/index.html */

  /* Never defined anywhere in git history (no value to recover): mapped to the nearest token of the new scale. */
  --ink-1: var(--ink);              /* contact.html text: strongest ink = the primary ink token */
  --paper-2: var(--paper-sunk);     /* coa-library / structure-viewer thumbnail backing: recessed paper */
  --radius: var(--radius-md);       /* policy + bundle-builder + coa-library cards: the standard card radius */
}

/* ============================================================================
   Amino Club Clinical Merchandising Layer (2026-10-24)
   Defined in :root so check-css-vars.mjs verifies 0 undefined custom properties.
   ============================================================================ */
:root {
  --topbar-h: 38px;
  --sheen-x: 50%;
  --sheen-y: 50%;
  --card-sheen-x: 50%;
  --card-sheen-y: 50%;
  --amino-forest-950: #0E261B;
  --amino-forest-900: #17402B;
  --amino-forest-800: #1f5138;
  --amino-mint: #7BE0A9;
  --amino-mint-bright: #34D399;
  --amino-gold: #D8A43A;
  --amino-ivory: #FAF8F4;
  --amino-blush: #FDF6F0;
  --amino-save-bg: #E6F6EE;
  --amino-save-ink: #0F6A3F;
  --amino-save-border: #B7E4CC;
  --amino-b2g1-bg: #112D1F;
  --amino-b2g1-ink: #E8F8F0;
  --amino-pill-warm-bg: #FEF5E7;
  --amino-pill-warm-ink: #8A5208;
  --amino-pill-warm-border: #F5D59B;
  --amino-shadow-card: 0 18px 38px -14px rgba(17, 45, 31, 0.14), 0 4px 12px -4px rgba(17, 45, 31, 0.06);
  --amino-shadow-buybox: 0 24px 48px -18px rgba(17, 45, 31, 0.12), 0 0 0 1px rgba(31, 81, 56, 0.08);
}
