/* File: automatic.css - Version: 4.0.0-rc-3 - Generated: 2026-06-11 14:47:57 */
@charset "UTF-8";
/* Feat: Text, Headings, & Spacing */
:root {
  --root-font-size: 100%;
}
/* Feat: Palette */
:root {
  --primary: light-dark(oklch(0.5930860251 0.1395651027 249), oklch(0.5930860251 0.1395651027 249));
  --primary-hover: light-dark(oklch(0.682 0.14 249), oklch(0.682 0.14 249));
  --primary-ultra-light: light-dark(oklch(0.95 0.027 249), oklch(0.15 0.053 249));
  --primary-ultra-dark: light-dark(oklch(0.15 0.053 249), oklch(0.95 0.027 249));
  --primary-light: light-dark(oklch(0.85 0.085 249), oklch(0.25 0.089 249.0119665685));
  --primary-dark: light-dark(oklch(0.25 0.089 249.0119665685), oklch(0.85 0.085 249));
  --primary-semi-light: light-dark(oklch(0.65 0.14 249), oklch(0.35 0.125 249));
  --primary-semi-dark: light-dark(oklch(0.35 0.125 249), oklch(0.65 0.14 249));
  --secondary: light-dark(oklch(0.465 0.2183320724 288), oklch(0.465 0.2183320724 288));
  --secondary-hover: light-dark(oklch(0.535 0.218 288), oklch(0.535 0.218 288));
  --secondary-ultra-light: light-dark(oklch(0.95 0.028 288), oklch(0.1 0.059 287.9852097857));
  --secondary-ultra-dark: light-dark(oklch(0.1 0.059 287.9852097857), oklch(0.95 0.028 288));
  --secondary-light: light-dark(oklch(0.85 0.086 288.0007043967), oklch(0.25 0.147 287.9951966099));
  --secondary-dark: light-dark(oklch(0.25 0.147 287.9951966099), oklch(0.85 0.086 288.0007043967));
  --secondary-semi-light: light-dark(oklch(0.65 0.215 288.0031104201), oklch(0.35 0.205 287.9970999294));
  --secondary-semi-dark: light-dark(oklch(0.35 0.205 287.9970999294), oklch(0.65 0.215 288.0031104201));
  --tertiary: light-dark(oklch(0.6183333333 0.1386844139 48), oklch(0.6183333333 0.1386844139 48));
  --tertiary-hover: light-dark(oklch(0.711 0.139 48), oklch(0.711 0.139 48));
  --tertiary-ultra-light: light-dark(oklch(0.95 0.035 48), oklch(0.1 0.031 47.9898651874));
  --tertiary-ultra-dark: light-dark(oklch(0.1 0.031 47.9898651874), oklch(0.95 0.035 48));
  --tertiary-light: light-dark(oklch(0.85 0.114 48), oklch(0.25 0.077 47.9714650126));
  --tertiary-dark: light-dark(oklch(0.25 0.077 47.9714650126), oklch(0.85 0.114 48));
  --tertiary-semi-light: light-dark(oklch(0.65 0.139 48), oklch(0.35 0.108 48));
  --tertiary-semi-dark: light-dark(oklch(0.35 0.108 48), oklch(0.65 0.139 48));
  --accent: light-dark(oklch(0.5916666667 0.1228954344 122), oklch(0.5916666667 0.1228954344 122));
  --accent-hover: light-dark(oklch(0.68 0.123 122), oklch(0.68 0.123 122));
  --accent-ultra-light: light-dark(oklch(0.95 0.123 122), oklch(0.1 0.028 122));
  --accent-ultra-dark: light-dark(oklch(0.1 0.028 122), oklch(0.95 0.123 122));
  --accent-light: light-dark(oklch(0.85 0.123 122), oklch(0.25 0.071 122.0020259274));
  --accent-dark: light-dark(oklch(0.25 0.071 122.0020259274), oklch(0.85 0.123 122));
  --accent-semi-light: light-dark(oklch(0.65 0.123 122), oklch(0.35 0.099 122.0038120649));
  --accent-semi-dark: light-dark(oklch(0.35 0.099 122.0038120649), oklch(0.65 0.123 122));
  --base: light-dark(oklch(0.097639462 0.01 78), oklch(0.097639462 0.01 78));
  --base-hover: light-dark(oklch(0.112 0.01 78), oklch(0.112 0.01 78));
  --base-ultra-light: light-dark(oklch(0.98 0.01 78), oklch(0.1 0.01 78));
  --base-ultra-dark: light-dark(oklch(0.1 0.01 78), oklch(0.98 0.01 78));
  --base-light: light-dark(oklch(0.9 0.01 78), oklch(0.2 0.01 78));
  --base-dark: light-dark(oklch(0.2 0.01 78), oklch(0.9 0.01 78));
  --base-semi-light: light-dark(oklch(0.75 0.01 78), oklch(0.35 0.01 78));
  --base-semi-dark: light-dark(oklch(0.35 0.01 78), oklch(0.75 0.01 78));
  --neutral: light-dark(oklch(0 0 0), oklch(0 0 0));
  --neutral-hover: light-dark(oklch(0 0 0), oklch(0 0 0));
  --neutral-ultra-light: light-dark(oklch(0.95 0 0), oklch(0.1 0 0));
  --neutral-ultra-dark: light-dark(oklch(0.1 0 0), oklch(0.95 0 0));
  --neutral-light: light-dark(oklch(0.85 0 0), oklch(0.25 0 0));
  --neutral-dark: light-dark(oklch(0.25 0 0), oklch(0.85 0 0));
  --neutral-semi-light: light-dark(oklch(0.65 0 0), oklch(0.35 0 0));
  --neutral-semi-dark: light-dark(oklch(0.35 0 0), oklch(0.65 0 0));
  --white: light-dark(#fff, #000);
  --black: light-dark(#000, #fff);
  --danger: light-dark(oklch(0.5083333333 0.1998456511 21), oklch(0.5083333333 0.1998456511 21));
  --danger-hover: light-dark(oklch(0.5 0.2 21), oklch(0.5 0.2 21));
  --danger-ultra-light: light-dark(oklch(0.95 0.2 21.0055082157), oklch(0.1 0.2 21.0125614922));
  --danger-ultra-dark: light-dark(oklch(0.1 0.2 21.0125614922), oklch(0.95 0.2 21.0055082157));
  --danger-light: light-dark(oklch(0.85 0.2 21.0004230225), oklch(0.15 0.2 21));
  --danger-dark: light-dark(oklch(0.15 0.2 21), oklch(0.85 0.2 21.0004230225));
  --danger-semi-light: light-dark(oklch(0.65 0.2 21), oklch(0.35 0.2 21.0035499796));
  --danger-semi-dark: light-dark(oklch(0.35 0.2 21.0035499796), oklch(0.65 0.2 21));
  --heading-color: var(--text-dark-muted);
}
/* Feat: Reference Palette for Color Scheme Flexibility */
:root {
  --primary-ref: oklch(0.5930860251 0.1395651027 249);
  --primary-hover-ref: oklch(0.682 0.14 249);
  --primary-ultra-light-ref: oklch(0.95 0.027 249);
  --primary-ultra-dark-ref: oklch(0.15 0.053 249);
  --primary-light-ref: oklch(0.85 0.085 249);
  --primary-dark-ref: oklch(0.25 0.089 249.0119665685);
  --primary-semi-light-ref: oklch(0.65 0.14 249);
  --primary-semi-dark-ref: oklch(0.35 0.125 249);
  --secondary-ref: oklch(0.465 0.2183320724 288);
  --secondary-hover-ref: oklch(0.535 0.218 288);
  --secondary-ultra-light-ref: oklch(0.95 0.028 288);
  --secondary-ultra-dark-ref: oklch(0.1 0.059 287.9852097857);
  --secondary-light-ref: oklch(0.85 0.086 288.0007043967);
  --secondary-dark-ref: oklch(0.25 0.147 287.9951966099);
  --secondary-semi-light-ref: oklch(0.65 0.215 288.0031104201);
  --secondary-semi-dark-ref: oklch(0.35 0.205 287.9970999294);
  --tertiary-ref: oklch(0.6183333333 0.1386844139 48);
  --tertiary-hover-ref: oklch(0.711 0.139 48);
  --tertiary-ultra-light-ref: oklch(0.95 0.035 48);
  --tertiary-ultra-dark-ref: oklch(0.1 0.031 47.9898651874);
  --tertiary-light-ref: oklch(0.85 0.114 48);
  --tertiary-dark-ref: oklch(0.25 0.077 47.9714650126);
  --tertiary-semi-light-ref: oklch(0.65 0.139 48);
  --tertiary-semi-dark-ref: oklch(0.35 0.108 48);
  --accent-ref: oklch(0.5916666667 0.1228954344 122);
  --accent-hover-ref: oklch(0.68 0.123 122);
  --accent-ultra-light-ref: oklch(0.95 0.123 122);
  --accent-ultra-dark-ref: oklch(0.1 0.028 122);
  --accent-light-ref: oklch(0.85 0.123 122);
  --accent-dark-ref: oklch(0.25 0.071 122.0020259274);
  --accent-semi-light-ref: oklch(0.65 0.123 122);
  --accent-semi-dark-ref: oklch(0.35 0.099 122.0038120649);
  --base-ref: oklch(0.097639462 0.01 78);
  --base-hover-ref: oklch(0.112 0.01 78);
  --base-ultra-light-ref: oklch(0.98 0.01 78);
  --base-ultra-dark-ref: oklch(0.1 0.01 78);
  --base-light-ref: oklch(0.9 0.01 78);
  --base-dark-ref: oklch(0.2 0.01 78);
  --base-semi-light-ref: oklch(0.75 0.01 78);
  --base-semi-dark-ref: oklch(0.35 0.01 78);
  --neutral-ref: oklch(0 0 0);
  --neutral-hover-ref: oklch(0 0 0);
  --neutral-ultra-light-ref: oklch(0.95 0 0);
  --neutral-ultra-dark-ref: oklch(0.1 0 0);
  --neutral-light-ref: oklch(0.85 0 0);
  --neutral-dark-ref: oklch(0.25 0 0);
  --neutral-semi-light-ref: oklch(0.65 0 0);
  --neutral-semi-dark-ref: oklch(0.35 0 0);
  --danger-ref: oklch(0.5083333333 0.1998456511 21);
  --danger-hover-ref: oklch(0.5 0.2 21);
  --danger-ultra-light-ref: oklch(0.95 0.2 21.0055082157);
  --danger-ultra-dark-ref: oklch(0.1 0.2 21.0125614922);
  --danger-light-ref: oklch(0.85 0.2 21.0004230225);
  --danger-dark-ref: oklch(0.15 0.2 21);
  --danger-semi-light-ref: oklch(0.65 0.2 21);
  --danger-semi-dark-ref: oklch(0.35 0.2 21.0035499796);
}
/* Feat: Default Section Styles */
:root {
  --content-width: 100rem;
  --content-width-safe: min(var(--content-width), calc(100% - var(--gutter) * 2));
}
/* Feat: Focus Styles */
:root {
  --focus-color: var(--primary);
  --focus-width: 2px;
  --focus-offset: 2px;
}
/* Feat: Text Defaults */
:root {
  --text-xxl-max-width: 100%;
  --text-xl-max-width: 100%;
  --text-l-max-width: 100%;
  --text-m-line-height: calc(6px + 2ex);
  --text-m-max-width: 100%;
  --text-s-max-width: 100%;
  --text-xs-max-width: 100%;
  --base-text-lh: calc(6px + 2ex);
  --text-font-family: var(--sans);
  --text-color: var(--text-dark-muted);
  --text-line-height: calc(6px + 2ex);
  --text-font-weight: 400;
  --text-max-width: 80ch;
  --text-text-wrap: pretty;
}
/* Feat: Heading Defaults */
:root {
  --heading-font-family: var(--serif);
  --heading-color: var(--text-dark-muted);
  --heading-line-height: calc(4px + 2ex);
  --heading-font-weight: 400;
  --heading-letter-spacing: 0.01em;
  --heading-max-width: 40ch;
  --heading-text-wrap: balance;
  --base-heading-lh: calc(4px + 2ex);
  --h1-letter-spacing: -0.02em;
  --h1-max-width: 100%;
  --h4-line-height: calc(4px + 2ex);
}
/* Feat: Text Size Variables */
:root {
  --text-xs: clamp(0.8125rem, calc(0.0806451613vw + 0.7943548387rem), 0.875rem);
  --text-s: clamp(0.875rem, calc(0.1612903226vw + 0.8387096774rem), 1rem);
  --text-m: clamp(1rem, calc(0.1612903226vw + 0.9637096774rem), 1.125rem);
  --text-l: clamp(1.2rem, calc(0.3866129032vw + 1.1130120968rem), 1.499625rem);
  --text-xl: clamp(1.44rem, calc(0.7212904839vw + 1.2777096411rem), 1.999000125rem);
  --text-xxl: clamp(1.728rem, calc(1.2086027956vw + 1.456064371rem), 2.6646671666rem);
  --text-s-to-xs: clamp(0.8125rem, calc(0.2419354839vw + 0.7580645161rem), 1rem);
  --text-m-to-s: clamp(0.875rem, calc(0.3225806452vw + 0.8024193548rem), 1.125rem);
  --text-m-to-xs: clamp(0.8125rem, calc(0.4032258065vw + 0.7217741935rem), 1.125rem);
  --text-l-to-m: clamp(1rem, calc(0.6446774194vw + 0.8549475806rem), 1.499625rem);
  --text-l-to-s: clamp(0.875rem, calc(0.8059677419vw + 0.6936572581rem), 1.499625rem);
  --text-l-to-xs: clamp(0.8125rem, calc(0.8866129032vw + 0.6130120968rem), 1.499625rem);
  --text-xl-to-l: clamp(1.2rem, calc(1.0309679032vw + 0.9680322218rem), 1.999000125rem);
  --text-xl-to-m: clamp(1rem, calc(1.2890324194vw + 0.7099677056rem), 1.999000125rem);
  --text-xl-to-s: clamp(0.875rem, calc(1.4503227419vw + 0.5486773831rem), 1.999000125rem);
  --text-xl-to-xs: clamp(0.8125rem, calc(1.5309679032vw + 0.4680322218rem), 1.999000125rem);
  --text-xxl-to-xl: clamp(1.44rem, calc(1.5802156989vw + 1.0844514678rem), 2.6646671666rem);
  --text-xxl-to-l: clamp(1.2rem, calc(1.8898931182vw + 0.7747740484rem), 2.6646671666rem);
  --text-xxl-to-m: clamp(1rem, calc(2.1479576344vw + 0.5167095323rem), 2.6646671666rem);
  --text-xxl-to-s: clamp(0.875rem, calc(2.3092479569vw + 0.3554192097rem), 2.6646671666rem);
  --text-xxl-to-xs: clamp(0.8125rem, calc(2.3898931182vw + 0.2747740484rem), 2.6646671666rem);
}
/* Feat: Heading Size Variables */
:root {
  --h6: clamp(0.8125rem, calc(0.0806451613vw + 0.7943548387rem), 0.875rem);
  --h5: clamp(0.875rem, calc(0.0806451613vw + 0.8568548387rem), 0.9375rem);
  --h4: clamp(1.125rem, calc(0.4838709677vw + 1.0161290323rem), 1.5rem);
  --h3: clamp(1.35rem, calc(0.9948387097vw + 1.1261612903rem), 2.121rem);
  --h2: clamp(1.62rem, calc(1.779476129vw + 1.219617871rem), 2.999094rem);
  --h1: clamp(1.944rem, calc(2.9635082787vw + 1.2772106373rem), 4.240718916rem);
  --h5-to-h6: clamp(0.8125rem, calc(0.1612903226vw + 0.7762096774rem), 0.9375rem);
  --h4-to-h5: clamp(0.875rem, calc(0.8064516129vw + 0.6935483871rem), 1.5rem);
  --h4-to-h6: clamp(0.8125rem, calc(0.8870967742vw + 0.6129032258rem), 1.5rem);
  --h3-to-h4: clamp(1.125rem, calc(1.2851612903vw + 0.8358387097rem), 2.121rem);
  --h3-to-h5: clamp(0.875rem, calc(1.6077419355vw + 0.5132580645rem), 2.121rem);
  --h3-to-h6: clamp(0.8125rem, calc(1.6883870968vw + 0.4326129032rem), 2.121rem);
  --h2-to-h3: clamp(1.35rem, calc(2.1278632258vw + 0.8712307742rem), 2.999094rem);
  --h2-to-h4: clamp(1.125rem, calc(2.4181858065vw + 0.5809081935rem), 2.999094rem);
  --h2-to-h5: clamp(0.875rem, calc(2.7407664516vw + 0.2583275484rem), 2.999094rem);
  --h2-to-h6: clamp(0.8125rem, calc(2.8214116129vw + 0.1776823871rem), 2.999094rem);
  --h1-to-h2: clamp(1.62rem, calc(3.3815727948vw + 0.8591461212rem), 4.240718916rem);
  --h1-to-h3: clamp(1.35rem, calc(3.7299598916vw + 0.5107590244rem), 4.240718916rem);
  --h1-to-h4: clamp(1.125rem, calc(4.0202824723vw + 0.2204364437rem), 4.240718916rem);
  --h1-to-h5: clamp(0.875rem, calc(4.3428631174vw + -0.1021442014rem), 4.240718916rem);
  --h1-to-h6: clamp(0.8125rem, calc(4.4235082787vw + -0.1827893627rem), 4.240718916rem);
}
/* Feat: Default Section Styles */
:root {
  --section-padding-block: var(--section-space-m);
  --gutter: clamp(1rem, calc(5.1612903226vw + -0.1612903226rem), 5rem);
}
/* Feat: Space Variables */
:root {
  --space-xs: clamp(0.8441720333rem, calc(0.0576991686vw + 0.8311897203rem), 0.8888888889rem);
  --space-s: clamp(1.1252813203rem, calc(0.2684542103vw + 1.064879123rem), 1.3333333333rem);
  --space-s-to-xs: clamp(0.8441720333rem, calc(0.6311758711vw + 0.7021574623rem), 1.3333333333rem);
  --space-m: clamp(1.5rem, calc(0.6451612903vw + 1.3548387097rem), 2rem);
  --space-m-to-s: clamp(1.1252813203rem, calc(1.1286692641vw + 0.8713307359rem), 2rem);
  --space-m-to-xs: clamp(0.8441720333rem, calc(1.4913909248vw + 0.5086090752rem), 2rem);
  --space-l: clamp(1.9995rem, calc(1.2909677419vw + 1.7090322581rem), 3rem);
  --space-l-to-m: clamp(1.5rem, calc(1.935483871vw + 1.064516129rem), 3rem);
  --space-l-to-s: clamp(1.1252813203rem, calc(2.4189918447vw + 0.5810081553rem), 3rem);
  --space-l-to-xs: clamp(0.8441720333rem, calc(2.7817135055vw + 0.2182864945rem), 3rem);
  --space-xl: clamp(2.6653335rem, calc(2.3673116129vw + 2.1326883871rem), 4.5rem);
  --space-xl-to-l: clamp(1.9995rem, calc(3.2264516129vw + 1.2735483871rem), 4.5rem);
  --space-xl-to-m: clamp(1.5rem, calc(3.8709677419vw + 0.6290322581rem), 4.5rem);
  --space-xl-to-s: clamp(1.1252813203rem, calc(4.3544757157vw + 0.1455242843rem), 4.5rem);
  --space-xl-to-xs: clamp(0.8441720333rem, calc(4.7171973764vw + -0.2171973764rem), 4.5rem);
  --space-xxl: clamp(3.5528895555rem, calc(4.1253037994vw + 2.6246962006rem), 6.75rem);
  --space-xxl-to-xl: clamp(2.6653335rem, calc(5.2705374194vw + 1.4794625806rem), 6.75rem);
  --space-xxl-to-l: clamp(1.9995rem, calc(6.1296774194vw + 0.6203225806rem), 6.75rem);
  --space-xxl-to-m: clamp(1.5rem, calc(6.7741935484vw + -0.0241935484rem), 6.75rem);
  --space-xxl-to-s: clamp(1.1252813203rem, calc(7.2577015222vw + -0.5077015222rem), 6.75rem);
  --space-xxl-to-xs: clamp(0.8441720333rem, calc(7.6204231829vw + -0.8704231829rem), 6.75rem);
}
/* Feat: Section Space Variables */
:root {
  --section-space-xs: clamp(1.6883440665rem, calc(1.2623517421vw + 1.4043149245rem), 2.6666666667rem);
  --section-space-s: clamp(2.2505626407rem, calc(2.2573385282vw + 1.7426614718rem), 4rem);
  --section-space-s-to-xs: clamp(1.6883440665rem, calc(2.9827818497vw + 1.0172181503rem), 4rem);
  --section-space-m: clamp(3rem, calc(3.8709677419vw + 2.1290322581rem), 6rem);
  --section-space-m-to-s: clamp(2.2505626407rem, calc(4.8379836895vw + 1.1620163105rem), 6rem);
  --section-space-m-to-xs: clamp(1.6883440665rem, calc(5.563427011vw + 0.436572989rem), 6rem);
  --section-space-l: clamp(3.999rem, calc(6.4529032258vw + 2.5470967742rem), 9rem);
  --section-space-l-to-m: clamp(3rem, calc(7.7419354839vw + 1.2580645161rem), 9rem);
  --section-space-l-to-s: clamp(2.2505626407rem, calc(8.7089514314vw + 0.2910485686rem), 9rem);
  --section-space-l-to-xs: clamp(1.6883440665rem, calc(9.4343947529vw + -0.4343947529rem), 9rem);
  --section-space-xl: clamp(5.330667rem, calc(10.5410748387vw + 2.9589251613rem), 13.5rem);
  --section-space-xl-to-l: clamp(3.999rem, calc(12.2593548387vw + 1.2406451613rem), 13.5rem);
  --section-space-xl-to-m: clamp(3rem, calc(13.5483870968vw + -0.0483870968rem), 13.5rem);
  --section-space-xl-to-s: clamp(2.2505626407rem, calc(14.5154030443vw + -1.0154030443rem), 13.5rem);
  --section-space-xl-to-xs: clamp(1.6883440665rem, calc(15.2408463658vw + -1.7408463658rem), 13.5rem);
  --section-space-xxl: clamp(7.105779111rem, calc(16.9602850181vw + 3.2897149819rem), 20.25rem);
  --section-space-xxl-to-xl: clamp(5.330667rem, calc(19.2507522581vw + 0.9992477419rem), 20.25rem);
  --section-space-xxl-to-l: clamp(3.999rem, calc(20.9690322581vw + -0.7190322581rem), 20.25rem);
  --section-space-xxl-to-m: clamp(3rem, calc(22.2580645161vw + -2.0080645161rem), 20.25rem);
  --section-space-xxl-to-s: clamp(2.2505626407rem, calc(23.2250804637vw + -2.9750804637rem), 20.25rem);
  --section-space-xxl-to-xs: clamp(1.6883440665rem, calc(23.9505237851vw + -3.7005237851rem), 20.25rem);
}
/* Feat: Contextual Space Variables */
:root {
  --content-gap: var(--space-m);
  --container-gap: var(--space-xl);
  --grid-gap: var(--space-m);
}
/* Feat: Width Variables */
:root {
  --width-10: calc(var(--content-width) * 0.1);
  --width-20: calc(var(--content-width) * 0.2);
  --width-30: calc(var(--content-width) * 0.3);
  --width-40: calc(var(--content-width) * 0.4);
  --width-50: calc(var(--content-width) * 0.5);
  --width-60: calc(var(--content-width) * 0.6);
  --width-70: calc(var(--content-width) * 0.7);
  --width-80: calc(var(--content-width) * 0.8);
  --width-90: calc(var(--content-width) * 0.9);
  --width-full: calc(var(--content-width) * 100%);
}
/* Feat: Grid Variables */
:root {
  --grid-1: repeat(1, minmax(0, 1fr));
  --grid-2: repeat(2, minmax(0, 1fr));
  --grid-3: repeat(3, minmax(0, 1fr));
  --grid-4: repeat(4, minmax(0, 1fr));
  --grid-5: repeat(5, minmax(0, 1fr));
  --grid-6: repeat(6, minmax(0, 1fr));
  --grid-7: repeat(7, minmax(0, 1fr));
  --grid-8: repeat(8, minmax(0, 1fr));
  --grid-9: repeat(9, minmax(0, 1fr));
  --grid-10: repeat(10, minmax(0, 1fr));
  --grid-11: repeat(11, minmax(0, 1fr));
  --grid-12: repeat(12, minmax(0, 1fr));
  --grid-1-2: minmax(0, 1fr) minmax(0, 2fr);
  --grid-1-3: minmax(0, 1fr) minmax(0, 3fr);
  --grid-2-1: minmax(0, 2fr) minmax(0, 1fr);
  --grid-2-3: minmax(0, 2fr) minmax(0, 3fr);
  --grid-3-1: minmax(0, 3fr) minmax(0, 1fr);
  --grid-3-2: minmax(0, 3fr) minmax(0, 2fr);
}
/* Feat: Auto Grid Variables */
:root {
  --grid-auto-2: repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((2 - 1) * var(--grid-gap))) / 2) * 0.7, (100% - (2 - 1) * var(--grid-gap)) / 2)), 1fr));
  --grid-auto-3: repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((3 - 1) * var(--grid-gap))) / 3) * 0.7, (100% - (3 - 1) * var(--grid-gap)) / 3)), 1fr));
  --grid-auto-4: repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((4 - 1) * var(--grid-gap))) / 4) * 0.7, (100% - (4 - 1) * var(--grid-gap)) / 4)), 1fr));
  --grid-auto-5: repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((5 - 1) * var(--grid-gap))) / 5) * 0.7, (100% - (5 - 1) * var(--grid-gap)) / 5)), 1fr));
  --grid-auto-6: repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((6 - 1) * var(--grid-gap))) / 6) * 0.7, (100% - (6 - 1) * var(--grid-gap)) / 6)), 1fr));
  --grid-auto-7: repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((7 - 1) * var(--grid-gap))) / 7) * 0.7, (100% - (7 - 1) * var(--grid-gap)) / 7)), 1fr));
  --grid-auto-8: repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((8 - 1) * var(--grid-gap))) / 8) * 0.7, (100% - (8 - 1) * var(--grid-gap)) / 8)), 1fr));
  --grid-auto-9: repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((9 - 1) * var(--grid-gap))) / 9) * 0.7, (100% - (9 - 1) * var(--grid-gap)) / 9)), 1fr));
  --grid-auto-10: repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((10 - 1) * var(--grid-gap))) / 10) * 0.7, (100% - (10 - 1) * var(--grid-gap)) / 10)), 1fr));
  --grid-auto-11: repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((11 - 1) * var(--grid-gap))) / 11) * 0.7, (100% - (11 - 1) * var(--grid-gap)) / 11)), 1fr));
  --grid-auto-12: repeat(auto-fit, minmax(min(100%, max(calc((var(--content-width) - ((12 - 1) * var(--grid-gap))) / 12) * 0.7, (100% - (12 - 1) * var(--grid-gap)) / 12)), 1fr));
  --auto-grid-aggressiveness: 0.7;
}
/* Feat: Header Height Variables */
:root {
  --header-height: clamp(0rem, calc(0vw + 0rem), 0rem);
  --admin-bar-height: var(--wp-admin--admin-bar--height, 0px);
}
:root {
  --scroll-margin: clamp(0rem, calc(0vw + 0rem), 0rem);
  --offset: calc(var(--scroll-margin) + var(--header-height));
}
/* Feat: Smart Spacing */
:root {
  --paragraph-spacing: 1em;
  --heading-spacing: 1.2em;
  --list-spacing: var(--paragraph-spacing);
  --list-indent-spacing: 2em;
  --list-item-spacing: 0.5em;
  --nested-list-indent-spacing: 1em;
  --flow-spacing: var(--paragraph-spacing);
  --figure-spacing: var(--paragraph-spacing);
  --figcaption-spacing: 0.5em;
  --blockquote-spacing: var(--paragraph-spacing);
}
/* Feat: Buttons */
:root {
  --option-primary-btn-outline: on;
  --option-secondary-btn-outline: on;
  --option-base-btn-outline: on;
  --btn-padding-block: 0.5em;
  --btn-padding-inline: 1.25em;
  --btn-min-width: 8.75rem;
  --btn-width: max-content;
  --btn-line-height: 1;
  --btn-font-size: var(--text-m);
  --btn-font-weight: 400;
  --btn-font-family: inherit;
  --btn-font-style: normal;
  --btn-text-decoration: none;
  --btn-text-decoration-hover: none;
  --btn-letter-spacing: 0;
  --btn-text-transform: none;
  --btn-border-width: 1.5px;
  --btn-border-style: solid;
  --btn-border-radius: var(--radius-xs);
  --btn-radius: var(--radius-xs);
  --btn-justify-content: center;
  --btn-align-items: center;
  --btn-text-align: center;
}
/* Feat: Link Variables */
:root {
  --link-color: var(--primary);
  --link-color-hover: var(--primary-dark);
  --link-transition: var(--transition);
  --link-decoration: underline;
  --link-decoration-hover: inherit;
  --link-underline-offset: 2px;
  --link-weight: inherit;
  --link-decoration-color: currentcolor;
  --link-decoration-thickness: 1px;
}
:root {
  --external-link-indicator-gap: 0.25em;
  --external-link-indicator-size: 0.9em;
  --external-link-indicator-weight: inherit;
  --external-link-indicator-offset: 0 0;
  --external-link-indicator-color: currentColor;
  --external-link-indicator-color-hover: currentColor;
  --external-link-indicator-alignment: center;
}
/* Feat: Card Variables */
:root {
  --card-padding: var(--space-m);
  --card-gap: calc(var(--content-gap) / 2);
  --card-border-width: var(--border-width);
  --card-border-style: solid;
  --card-display: flex;
  --card-radius: var(--radius);
  --card-min-radius: 4px;
  --card-heading-size: var(--h3);
  --card-text-size: var(--text-s);
  --card-button-font-size: var(--text-s);
  --card-icon-size: var(--icon-size-l);
  --card-icon-padding: var(--icon-padding);
  --card-icon-border-width: var(--icon-border-width);
  --card-icon-border-style: var(--icon-border-style);
  --card-icon-radius: var(--icon-radius);
  --card-icon-background: var(--icon-background);
  --card-icon-color: var(--icon-color);
  --card-icon-border-color: var(--icon-border-color);
  --card-line-height: 1.4;
  --card-avatar-radius: var(--radius);
  --card-avatar-border-width: var(--border-width);
  --card-avatar-border-style: var(--border-style);
  --card-avatar-size: 140px;
  --card-avatar-aspect-ratio: 1;
  --card-media-radius: var(--radius);
  --card-media-aspect-ratio: 1.3333333333;
  --card-media-object-fit: cover;
  --card-background: var(--neutral-ultra-light);
  --card-heading-color: var(--text-dark);
  --card-text-color: var(--text-dark-muted);
  --card-link-color: var(--primary);
  --card-link-color-hover: var(--primary-hover);
  --card-button-style: primary;
  --card-border-color: var(--border-color-dark);
}
/* Feat: Column Variables */
:root {
  --col-width-s: 13rem;
  --col-width-m: 25rem;
  --col-width-l: 38rem;
  --col-rule-width-s: 0.5px;
  --col-rule-width-m: 1px;
  --col-rule-width-l: 3px;
}
/* Feat: Sticky Variables */
:root {
  --sticky-offset-custom: 60px;
  --sticky-offset: var(--header-height, var(--sticky-offset-custom, 0));
}
/* Contextual Color Variables */
:root {
  --body-bg-color: var(--base-ultra-light);
  --bg-ultra-light: var(--base-ultra-light);
  --bg-light: var(--base-light);
  --bg-dark: var(--base-dark);
  --bg-ultra-dark: var(--base-ultra-dark);
  --text-light: var(--bg-ultra-light);
  --text-light-muted: color-mix(in srgb, var(--text-light) 80%, transparent);
  --text-dark: var(--bg-ultra-dark);
  --text-dark-muted: color-mix(in srgb, var(--text-dark) 80%, transparent);
}
/* Feat: Contextual Relationship Variables */
:root {
  --bg-ultra-light-text: var(--text-dark);
  --bg-light-text: var(--text-dark);
  --bg-dark-text: var(--text-light);
  --bg-ultra-dark-text: var(--text-light);
  --bg-ultra-light-heading: var(--text-dark);
  --bg-light-heading: var(--text-dark);
  --bg-dark-heading: var(--text-light);
  --bg-ultra-dark-heading: var(--text-light);
  --bg-ultra-light-button: primary;
  --bg-light-button: primary;
  --bg-dark-button: ;
  --bg-ultra-dark-button: ;
  --bg-ultra-light-icon: light;
  --bg-light-icon: light;
  --bg-dark-icon: dark;
  --bg-ultra-dark-icon: dark;
}
/* Feat: Radius Variables */
:root {
  --radius: 8px;
  --radius-50: 50%;
  --radius-circle: 50vw;
  --radius-none: 0;
  --radius-xs: 5.12px;
  --radius-s: 6.4px;
  --radius-m: 8px;
  --radius-l: 10px;
  --radius-xl: 12.5px;
  --radius-xxl: 15.625px;
}
/* Feat: Border Variables */
:root {
  --border-size: 1px;
  --border-width: 1px;
  --border-style: solid;
  --border-color-dark: color-mix(in oklch, var(--black) 20%, transparent);
  --border-color-light: color-mix(in oklch, var(--white) 20%, transparent);
  --border: var(--border-size) var(--border-style) var(--border-color-dark);
  --border-light: var(--border-size) var(--border-style) var(--border-color-light);
  --border-dark: var(--border-size) var(--border-style) var(--border-color-dark);
}
/* Feat: Divider Variables */
:root {
  --divider-size: 1px;
  --divider-style: solid;
  --divider-inline-size: 100%;
  --divider-gap: var(--content-gap);
  --divider-color-dark: color-mix(in srgb, var(--black) 20%, transparent);
  --divider-color-light: color-mix(in srgb, var(--white) 20%, transparent);
  --divider: var(--divider-size) var(--divider-style) var(--divider-color-dark);
  --divider-light: var(--divider-size) var(--divider-style) var(--divider-color-light);
  --divider-dark: var(--divider-size) var(--divider-style) var(--divider-color-dark);
}
/* Feat: Transition Variables */
:root {
  --transition-duration: 0.3s;
  --transition-timing: ease-in-out;
  --transition-delay: 0s;
  --transition: 0.3s ease-in-out 0s;
}
/* Feat: Icon Variables */
:root {
  --icon-scheme: inherit;
  --icon-size: 32px;
  --icon-padding: 0.15em;
  --icon-radius: var(--radius);
  --icon-background: var(--neutral-ultra-light);
  --icon-background-hover: var(--neutral-light);
  --icon-border-color: var(--border-color-dark);
  --icon-border-color-hover: inherit;
  --icon-border-width: var(--border-width);
  --icon-border-style: var(--border-style);
  --icon-color: var(--text-dark-muted);
  --icon-color-hover: var(--primary);
  --icon-list-icon-size: 1em;
  --icon-list-gap: 1em;
  --icon-size-xs: 12px;
  --icon-size-s: 16px;
  --icon-size-m: 32px;
  --icon-size-l: 64px;
  --icon-size-xl: 128px;
  --icon-padding-xs: var(--icon-padding);
  --icon-padding-s: var(--icon-padding);
  --icon-padding-m: var(--icon-padding);
  --icon-padding-l: var(--icon-padding);
  --icon-padding-xl: var(--icon-padding);
}
/* Feat: Box Shadow Variables */
:root {
  --box-shadow-1: 0 0 40px color-mix(in srgb, black 10%, transparent);
  --box-shadow-2: 0 0 60px color-mix(in srgb, black 20%, transparent);
  --box-shadow-3: 0 0 80px color-mix(in srgb, black 30%, transparent);
}
/* Feat: Text Shadow Variables */
:root {
  --text-shadow-1: 0 1px 2px color-mix(in srgb, black 20%, transparent);
  --text-shadow-2: 0 2px 4px color-mix(in srgb, black 30%, transparent);
  --text-shadow-3: 0 4px 8px color-mix(in srgb, black 40%, transparent);
}
/* Feat: Drop Shadow Variables */
:root {
  --drop-shadow-1: drop-shadow(0 1px 2px color-mix(in srgb, black 15%, transparent));
  --drop-shadow-2: drop-shadow(0 4px 6px color-mix(in srgb, black 20%, transparent));
  --drop-shadow-3: drop-shadow(0 10px 15px color-mix(in srgb, black 25%, transparent));
}
/* Feat: Blockquote Variables */
:root {
  --blockquote-padding: var(--space-m);
  --blockquote-gap: 1em;
  --blockquote-border-width: 0 0 0 8px;
  --blockquote-border-style: solid;
  --blockquote-border-color: var(--primary);
  --blockquote-border-radius: 0;
  --blockquote-background: var(--neutral-ultra-light);
  --blockquote-box-shadow: none;
  --blockquote-text-color: inherit;
  --blockquote-text-font-family: var(--serif);
  --blockquote-text-font-style: normal;
  --blockquote-text-font-size: var(--text-l);
  --blockquote-text-font-weight: normal;
  --blockquote-text-line-height: inherit;
  --blockquote-text-text-align: left;
  --blockquote-text-text-transform: none;
  --blockquote-footer-padding: 0;
  --blockquote-footer-margin-block: 1em 0;
  --blockquote-footer-font-family: inherit;
  --blockquote-footer-font-size: var(--text-s);
  --blockquote-footer-font-weight: normal;
  --blockquote-footer-font-style: normal;
  --blockquote-footer-line-height: 1.5;
  --blockquote-footer-text-transform: none;
  --blockquote-footer-color: currentColor;
  --blockquote-cite-font-family: inherit;
  --blockquote-cite-font-size: inherit;
  --blockquote-cite-font-weight: inherit;
  --blockquote-cite-font-style: inherit;
  --blockquote-cite-line-height: inherit;
  --blockquote-cite-text-transform: inherit;
  --blockquote-cite-color: currentColor;
}
/* Color Scheme */
:root {
  color-scheme: light dark;
}
.btn--primary, .btn--danger {
  color-scheme: light;
}
.scheme--light {
  color-scheme: light;
}
.scheme--dark {
  color-scheme: dark;
}
/* Feat: Reset */
:root {
  interpolate-size: allow-keywords;
}
*, *::before, *::after {
  box-sizing: border-box;
}
body {
  min-block-size: 100svh;
}
input, button, textarea, select {
  font: inherit;
}
button:not(nav button, [class*="btn--"]) {
  line-height: var(--btn-line-height);
  letter-spacing: var(--btn-letter-spacing);
  text-transform: var(--btn-text-transform);
  text-decoration: var(--btn-text-decoration);
  text-align: var(--btn-text-align);
  font-weight: var(--btn-font-weight);
  font-style: var(--btn-font-style);
  font-family: var(--btn-font-family);
}
:where(dd) {
  margin-inline-start: 0;
}
/* Feat: Body, Heading, or Text Defaults */
html {
  font-size: var(--root-font-size) !important;
}
/* Feat: Body Defaults */
:where(body) {
  font-size: var(--text-m);
  overflow-x: clip;
  font-family: var(--text-font-family);
  color: var(--text-color);
  line-height: var(--text-line-height);
  font-weight: var(--text-font-weight);
  text-wrap: var(--text-text-wrap);
  background: var(--body-bg-color);
  transition: background var(--transition);
}
:where(body) p, :where(body) :where(ul:not([class], ol:not([class])) li) {
  max-inline-size: var(--text-m-length, 80ch);
  width: 100%;
}
:where(p) {
  line-height: var(--text-line-height, calc(6px + 2ex));
}
/* Feat: Link Defaults */
body a:where(:not([class*= btn--], header a, footer a)) {
  color: var(--link-color, var(--primary));
  font-weight: var(--link-weight, inherit);
  -webkit-text-decoration: var(--link-decoration, underline);
  text-decoration: var(--link-decoration, underline);
  text-underline-offset: var(--link-underline-offset, 2px);
  text-decoration-color: var(--link-decoration-color);
  text-decoration-thickness: var(--link-decoration-thickness);
  transition: var(--link-transition, var(--transition));
}
@media (hover: hover) and (pointer: fine) {
  body a:where(:not([class*= btn--], header a, footer a)):hover {
    color: var(--link-color-hover, var(--primary-dark));
    text-decoration-thickness: var(--link-decoration-thickness);
  }
}
/* Feat: Heading Defaults */
h1, :where(.h1), h2, :where(.h2), h3, :where(.h3), h4, :where(.h4), h5, :where(.h5), h6, :where(.h6) {
  font-family: var(--heading-font-family);
  color: var(--heading-color);
  line-height: var(--heading-line-height);
  font-weight: var(--heading-font-weight);
  letter-spacing: var(--heading-letter-spacing);
  max-width: var(--heading-max-width);
  text-wrap: var(--heading-text-wrap);
}
h1 {
  font-size: var(--h1);
  letter-spacing: var(--h1-letter-spacing);
  max-width: var(--h1-max-width);
}
h2 {
  font-size: var(--h2);
}
h3 {
  font-size: var(--h3);
}
h4 {
  font-size: var(--h4);
  line-height: var(--h4-line-height);
}
h5 {
  font-size: var(--h5);
}
h6 {
  font-size: var(--h6);
}
/* Feat: Blockquote Styling */
:where(blockquote:where(:not(figure > blockquote)), figure:has(> blockquote), .blockquote):where(:not(:is(:is([class*="-card"] blockquote, figure[class*="-card"], figure[class*="-card"] blockquote)))) {
  display: flex;
  flex-direction: column;
  gap: var(--blockquote-gap);
  inline-size: 100%;
  padding: var(--blockquote-padding);
  gap: var(--blockquote-gap);
  border-width: var(--blockquote-border-width);
  border-style: var(--blockquote-border-style);
  border-color: var(--blockquote-border-color);
  border-radius: var(--blockquote-border-radius);
  background: var(--blockquote-background);
  box-shadow: var(--blockquote-box-shadow);
}
:where(blockquote:where(:not(figure > blockquote)), figure:has(> blockquote), .blockquote):where(:not(:is(:is([class*="-card"] blockquote, figure[class*="-card"], figure[class*="-card"] blockquote)))) p {
  color: var(--blockquote-text-color);
  font-family: var(--blockquote-text-font-family);
  font-style: var(--blockquote-text-font-style);
  font-size: var(--blockquote-text-font-size);
  font-weight: var(--blockquote-text-font-weight);
  line-height: var(--blockquote-text-line-height);
  text-align: var(--blockquote-text-text-align);
  text-transform: var(--blockquote-text-text-transform);
}
:where(blockquote:where(:not(figure > blockquote)), figure:has(> blockquote), .blockquote):where(:not(:is(:is([class*="-card"] blockquote, figure[class*="-card"], figure[class*="-card"] blockquote)))) footer, :where(blockquote:where(:not(figure > blockquote)), figure:has(> blockquote), .blockquote):where(:not(:is(:is([class*="-card"] blockquote, figure[class*="-card"], figure[class*="-card"] blockquote)))) figcaption {
  display: var(--blockquote-footer-display, flex);
  flex-direction: var(--blockquote-footer-flex-direction, row);
  align-items: var(--blockquote-footer-align-items, center);
  gap: var(--blockquote-footer-gap, calc(var(--content-gap) / 2));
  padding: var(--blockquote-footer-padding);
  margin-block: var(--blockquote-footer-margin-block);
  font-family: var(--blockquote-footer-font-family);
  font-size: var(--blockquote-footer-font-size);
  font-weight: var(--blockquote-footer-font-weight);
  font-style: var(--blockquote-footer-font-style);
  line-height: var(--blockquote-footer-line-height);
  text-transform: var(--blockquote-footer-text-transform);
  color: var(--blockquote-footer-color);
}
:where(blockquote:where(:not(figure > blockquote)), figure:has(> blockquote), .blockquote):where(:not(:is(:is([class*="-card"] blockquote, figure[class*="-card"], figure[class*="-card"] blockquote)))) cite, :where(blockquote:where(:not(figure > blockquote)), figure:has(> blockquote), .blockquote):where(:not(:is(:is([class*="-card"] blockquote, figure[class*="-card"], figure[class*="-card"] blockquote)))) figcaption cite {
  font-family: var(--blockquote-cite-font-family);
  font-size: var(--blockquote-cite-font-size);
  font-weight: var(--blockquote-cite-font-weight);
  font-style: var(--blockquote-cite-font-style);
  line-height: var(--blockquote-cite-line-height);
  text-transform: var(--blockquote-cite-text-transform);
  color: var(--blockquote-cite-color);
}
.btn--primary {
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary-ultra-light);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
.btn--primary-dark {
  --btn-background: var(--primary-dark);
  --btn-background-hover: var(--primary-ultra-dark);
  --btn-text-color: var(--primary-ultra-light);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-semi-dark);
}
.btn--primary-light {
  --btn-background: var(--primary-ultra-light);
  --btn-background-hover: var(--primary-light);
  --btn-text-color: var(--primary);
  --btn-text-color-hover: var(--primary-ultra-dark);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
.btn--primary.btn--outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
.btn--primary-dark.btn--outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-dark);
  --btn-text-color: var(--primary-dark);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--primary-dark);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
.btn--primary-light.btn--outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-light);
  --btn-text-color: var(--primary-light);
  --btn-text-color-hover: var(--primary-dark);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--primary-light);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
.btn--secondary {
  --btn-background: var(--secondary);
  --btn-background-hover: var(--secondary-hover);
  --btn-text-color: var(--secondary-ultra-light);
  --btn-text-color-hover: var(--secondary-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--secondary-light);
}
.btn--secondary-dark {
  --btn-background: var(--secondary-dark);
  --btn-background-hover: var(--secondary-ultra-dark);
  --btn-text-color: var(--secondary-ultra-light);
  --btn-text-color-hover: var(--secondary-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--secondary-semi-dark);
}
.btn--secondary-light {
  --btn-background: var(--secondary-ultra-light);
  --btn-background-hover: var(--secondary-light);
  --btn-text-color: var(--secondary);
  --btn-text-color-hover: var(--secondary-ultra-dark);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--secondary-light);
}
.btn--secondary.btn--outline {
  --btn-background: transparent;
  --btn-background-hover: var(--secondary-hover);
  --btn-text-color: var(--secondary);
  --btn-text-color-hover: var(--secondary-ultra-light);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--secondary);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--secondary-light);
}
.btn--secondary-dark.btn--outline {
  --btn-background: transparent;
  --btn-background-hover: var(--secondary-dark);
  --btn-text-color: var(--secondary-dark);
  --btn-text-color-hover: var(--secondary-ultra-light);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--secondary-dark);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--secondary-light);
}
.btn--secondary-light.btn--outline {
  --btn-background: transparent;
  --btn-background-hover: var(--secondary-light);
  --btn-text-color: var(--secondary-light);
  --btn-text-color-hover: var(--secondary-dark);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--secondary-light);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--secondary-light);
}
.btn--base {
  --btn-background: var(--base);
  --btn-background-hover: var(--base-hover);
  --btn-text-color: var(--base-ultra-light);
  --btn-text-color-hover: var(--base-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--base-light);
}
.btn--base-dark {
  --btn-background: var(--base-dark);
  --btn-background-hover: var(--base-ultra-dark);
  --btn-text-color: var(--base-ultra-light);
  --btn-text-color-hover: var(--base-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--base-semi-dark);
}
.btn--base-light {
  --btn-background: var(--base-ultra-light);
  --btn-background-hover: var(--base-light);
  --btn-text-color: var(--base);
  --btn-text-color-hover: var(--base-ultra-dark);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--base-light);
}
.btn--base.btn--outline {
  --btn-background: transparent;
  --btn-background-hover: var(--base-hover);
  --btn-text-color: var(--base);
  --btn-text-color-hover: var(--base-ultra-light);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--base);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--base-light);
}
.btn--base-dark.btn--outline {
  --btn-background: transparent;
  --btn-background-hover: var(--base-dark);
  --btn-text-color: var(--base-dark);
  --btn-text-color-hover: var(--base-ultra-light);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--base-dark);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--base-light);
}
.btn--base-light.btn--outline {
  --btn-background: transparent;
  --btn-background-hover: var(--base-light);
  --btn-text-color: var(--base-light);
  --btn-text-color-hover: var(--base-dark);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--base-light);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--base-light);
}
.btn--danger {
  --btn-background: var(--danger);
  --btn-background-hover: var(--danger-hover);
  --btn-text-color: var(--danger-ultra-light);
  --btn-text-color-hover: var(--danger-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--danger-light);
}
[class*="btn--"]:where(:not(.btn--none, .wp-block-button)), [class*="btn--"].wp-block-button > .wp-block-button__link {
  background: var(--btn-background);
  color: var(--btn-text-color);
  padding-block: var(--btn-padding-block);
  padding-inline: var(--btn-padding-inline);
  inline-size: var(--btn-width, auto);
  min-inline-size: var(--btn-min-width);
  line-height: var(--btn-line-height);
  font-family: var(--btn-font-family);
  font-size: var(--btn-font-size, var(--text-m));
  font-weight: var(--btn-font-weight);
  font-style: var(--btn-font-style);
  text-transform: var(--btn-text-transform);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: var(--btn-text-decoration);
  border-width: var(--btn-border-width);
  border-style: var(--btn-border-style);
  border-radius: var(--btn-border-radius);
  border-color: var(--btn-border-color);
  transition: var(--btn-transition, var(--transition));
  justify-content: var(--btn-justify-content, center);
  align-items: var(--btn-align-items, center);
  text-align: var(--btn-text-align, center);
  display: var(--btn-display, inline-flex);
}
@media (hover: hover) and (pointer: fine) {
  [class*="btn--"]:where(:not(.btn--none, .wp-block-button)):hover, [class*="btn--"].wp-block-button > .wp-block-button__link:hover {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
}
[class*="btn--"]:where(:not(.btn--none, .wp-block-button)):where(:focus-visible), [class*="btn--"].wp-block-button > .wp-block-button__link:where(:focus-visible) {
  outline-style: solid;
  outline-color: var(--focus-color);
  outline-width: var(--focus-width);
  outline-offset: var(--focus-offset);
}
.btn--xs {
  --btn-font-size: var(--text-xs);
}
.btn--s {
  --btn-font-size: var(--text-s);
}
.btn--m {
  --btn-font-size: var(--text-m);
}
.btn--l {
  --btn-font-size: var(--text-l);
}
.btn--xl {
  --btn-font-size: var(--text-xl);
}
.btn--xxl {
  --btn-font-size: var(--text-xxl);
}
.btn--none {
  background: none;
  border: none;
}
a[target="_blank"]:where(:not(:has(img, > figure, > picture, > svg))) {
  --external-link-indicator-order: 0;
}
a[target="_blank"]:where(:not(:has(img, > figure, > picture, > svg)))::after {
  content: "↗︎" / "Link to external site";
  font-size: var(--external-link-indicator-size);
  font-weight: var(--external-link-indicator-weight);
  line-height: 1;
  translate: var(--external-link-indicator-offset);
  color: var(--external-link-indicator-color);
  align-self: var(--external-link-indicator-alignment);
  order: var(--external-link-indicator-order);
  margin-inline-start: var(--external-link-indicator-gap);
}
a[target="_blank"]:where(:not(:has(img, > figure, > picture, > svg))):hover::after {
  color: var(--external-link-indicator-color-hover);
}
.card {
  color-scheme: inherit;
  display: var(--card-display, flex) !important;
  flex-direction: var(--card-flex-direction, column);
  position: relative;
  overflow: var(--card-overflow, clip);
  background-clip: padding-box;
  transition: var(--card-transition, var(--transition));
  font-size: var(--card-text-size, var(--text-s));
  border-width: var(--card-border-width, var(--border-width));
  border-style: var(--card-border-style, var(--border-style));
  border-color: var(--card-border-color, transparent);
  border-radius: var(--card-radius, var(--radius, 0));
  padding: var(--card-padding, var(--space-m));
  gap: var(--card-gap, var(--content-gap));
  background: var(--card-background, var(--white));
  color: var(--card-text-color, var(--text-dark));
  line-height: var(--card-line-height, inherit);
  box-shadow: var(--card-shadow, none);
}
.card :where([class*="__media"]:not([class*="wrapper"])) {
  border-radius: var(--card-media-radius, var(--radius, 0));
  aspect-ratio: var(--card-media-aspect-ratio, 16/9);
  object-fit: var(--card-media-object-fit, fill);
  overflow: clip;
  inline-size: 100%;
}
.card :where([class*="__media"]:not([class*="wrapper"])) img {
  object-fit: var(--card-media-object-fit, fill);
}
.card :where(img[class*="__avatar"]:not([class*="wrapper"])), .card :where([class*="__avatar"] img) {
  border-radius: var(--card-avatar-radius, 50vw);
  border-width: var(--card-avatar-border-width, 0);
  border-style: var(--card-avatar-border-style, solid);
  border-color: var(--card-avatar-border-color, transparent);
  inline-size: var(--card-avatar-size, 48px);
  block-size: var(--card-avatar-size, 48px);
  align-self: center;
  aspect-ratio: var(--card-avatar-aspect-ratio, 1);
  object-fit: cover;
  overflow: clip;
}
.card :where(img[class*="__avatar"]:not([class*="wrapper"])) img, .card :where([class*="__avatar"] img) img {
  object-fit: cover;
}
.card :is(h1, h2, h3, h4, h5, h6) {
  font-size: var(--card-heading-size, var(--h3));
  color: var(--card-heading-color, var(--text-dark));
}
.card a:where(:not(h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, [class*="btn--"], [data-icon])) {
  --link-color: var(--card-link-color, var(--primary));
  --link-color-hover: var(--card-link-color-hover, var(--primary-hover));
}
.card :where([data-icon]) {
  --icon-radius: var(--card-icon-radius, var(--radius, 0));
  --icon-size: var(--card-icon-size, 48px);
  --icon-color: var(--card-icon-color, var(--icon-color, var(--text-dark)));
}
.card [class*="btn--"] {
  --btn-font-size: var(--card-button-font-size, var(--text-s));
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary-ultra-light);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
.card:where([class*="--light"]) {
  color-scheme: light;
}
.card:where([class*="--dark"]) {
  color-scheme: dark;
}
[data-icon]:is(svg, i, a) {
  color-scheme: var(--icon-scheme, default);
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  box-sizing: content-box;
  color: var(--icon-color, var(--neutral-dark));
  font-size: var(--icon-size);
  height: var(--icon-height, var(--icon-size, 24px));
  width: var(--icon-width, var(--icon-size, 24px));
  transition: var(--icon-transition, var(--transition));
  box-shadow: var(--icon-shadow, none);
  overflow: visible;
}
[data-icon]:is(i)::before {
  width: 100%;
  height: 100%;
  text-align: center;
  font-size: var(--icon-size);
}
[data-icon] svg {
  color: var(--icon-color);
}
[data-icon]:is(a):hover, a:hover [data-icon], [data-icon] [data-icon-hover]:hover, [data-icon] [data-icon-hover]:hover [data-icon] {
  --icon-background: var(--icon-background-hover);
  --icon-color: var(--icon-color-hover);
  --icon-border-color: var(--icon-border-color-hover);
}
.icon--xs, [data-icon-size="xs"] {
  --icon-size: var(--icon-size-xs);
  --icon-padding: var(--icon-padding-xs);
}
.icon--s, [data-icon-size="s"] {
  --icon-size: var(--icon-size-s);
  --icon-padding: var(--icon-padding-s);
}
.icon--m, [data-icon-size="m"] {
  --icon-size: var(--icon-size-m);
  --icon-padding: var(--icon-padding-m);
}
.icon--l, [data-icon-size="l"] {
  --icon-size: var(--icon-size-l);
  --icon-padding: var(--icon-padding-l);
}
.icon--xl, [data-icon-size="xl"] {
  --icon-size: var(--icon-size-xl);
  --icon-padding: var(--icon-padding-xl);
}
.icon--2xl, [data-icon-size="2xl"] {
  --icon-size: var(--icon-size-2xl);
  --icon-padding: var(--icon-padding-2xl);
}
.icon--boxed, [data-icon-style="boxed"] {
  padding: var(--icon-padding, 12px);
  border-width: var(--icon-border-width, 0);
  border-style: var(--icon-border-style, solid);
  border-radius: var(--icon-radius, var(--radius));
  background: var(--icon-background, var(--neutral-ultra-light));
  border-color: var(--icon-border-color, transparent);
}
.icon--plain, [data-icon-style="plain"] {
  --icon-background: transparent;
  --icon-border-width: 0;
  --icon-padding: 0;
}
:is([data-icon-list], .icon-list) {
  display: flex;
  flex-direction: column;
  gap: var(--icon-list-gap, 1em);
}
:is([data-icon-list], .icon-list) :where(svg, i) {
  --icon-size: var(--icon-list-icon-size, 1em);
  position: relative;
  translate: var(--icon-inline-offset, 0) var(--icon-block-offset, 0);
  flex-shrink: 0;
}
:is([data-icon-list], .icon-list) :where(svg, i):is(svg, i, a) {
  color-scheme: var(--icon-scheme, default);
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  box-sizing: content-box;
  color: var(--icon-color, var(--neutral-dark));
  font-size: var(--icon-size);
  height: var(--icon-height, var(--icon-size, 24px));
  width: var(--icon-width, var(--icon-size, 24px));
  transition: var(--icon-transition, var(--transition));
  box-shadow: var(--icon-shadow, none);
  overflow: visible;
}
:is([data-icon-list], .icon-list) :where(svg, i):is(i)::before {
  width: 100%;
  height: 100%;
  text-align: center;
  font-size: var(--icon-size);
}
:is([data-icon-list], .icon-list) :where(svg, i) svg {
  color: var(--icon-color);
}
:is([data-icon-list], .icon-list) :where(svg, i):is(a):hover, a:hover :is([data-icon-list], .icon-list) :where(svg, i), :is([data-icon-list], .icon-list) :where(svg, i) [data-icon-hover]:hover, :is([data-icon-list], .icon-list) :where(svg, i) [data-icon-hover]:hover [data-icon] {
  --icon-background: var(--icon-background-hover);
  --icon-color: var(--icon-color-hover);
  --icon-border-color: var(--icon-border-color-hover);
}
:is([data-icon-list], .icon-list) a:hover {
  --icon-color: var(--icon-color-hover, var(--primary));
  --icon-background: var(--icon-background-hover, var(--primary-hover));
}
:where(a, button):has(> svg, > i):hover {
  --icon-color: var(--icon-color-hover, var(--primary));
  --icon-background: var(--icon-background-hover, var(--primary-hover));
}
/* Scroll offset */
[id] {
  scroll-margin-top: var(--offset, 0);
}
/* Feat: Smooth Scrolling */
html {
  scroll-behavior: smooth;
}
html:focus-within {
  scroll-behavior: auto;
}
.hidden-accessible {
  position: absolute !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(100%);
  white-space: nowrap;
  /* added line */
  border: 0;
}
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *, *::before, *::after {
    -webkit-animation-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
.skip-link {
  position: absolute !important;
  inset-block-start: 1rem;
  inset-inline-start: 1rem;
  transform: translateY(-250%);
  --btn-min-width: fit-content;
  z-index: 100;
  background: var(--btn-background);
  color: var(--btn-text-color);
  padding-block: var(--btn-padding-block);
  padding-inline: var(--btn-padding-inline);
  inline-size: var(--btn-width, auto);
  min-inline-size: var(--btn-min-width);
  line-height: var(--btn-line-height);
  font-family: var(--btn-font-family);
  font-size: var(--btn-font-size, var(--text-m));
  font-weight: var(--btn-font-weight);
  font-style: var(--btn-font-style);
  text-transform: var(--btn-text-transform);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: var(--btn-text-decoration);
  border-width: var(--btn-border-width);
  border-style: var(--btn-border-style);
  border-radius: var(--btn-border-radius);
  border-color: var(--btn-border-color);
  transition: var(--btn-transition, var(--transition));
  justify-content: var(--btn-justify-content, center);
  align-items: var(--btn-align-items, center);
  text-align: var(--btn-text-align, center);
  display: var(--btn-display, inline-flex);
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary-ultra-light);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
@media (hover: hover) and (pointer: fine) {
  .skip-link:hover {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
}
.skip-link:where(:focus-visible) {
  outline-style: solid;
  outline-color: var(--focus-color);
  outline-width: var(--focus-width);
  outline-offset: var(--focus-offset);
}
.skip-link:focus-visible {
  transform: translateY(0);
}
::selection {
  background: var(--selection-bg-color, var(--primary-semi-dark));
  /* WebKit/Blink Browsers */
}
::-moz-selection {
  background: var(--selection-bg-color, var(--primary-semi-dark));
  /* Gecko Browsers */
}
::selection {
  color: var(--selection-text-color, var(--white));
  /* WebKit/Blink Browsers */
}
::-moz-selection {
  color: var(--selection-text-color, var(--white));
  /* Gecko Browsers */
}
/* Feat: Focus Styles */
:focus {
  outline: none;
  box-shadow: none;
}
:focus-visible {
  outline-style: solid;
  outline-color: var(--focus-color);
  outline-width: var(--focus-width);
  outline-offset: var(--focus-offset);
}
@supports not selector(:focus-visible) {
  :focus {
    outline-style: solid;
    outline-color: var(--focus-color);
    outline-width: var(--focus-width);
    outline-offset: var(--focus-offset);
  }
}
/* Feat: Default Section Styles */
:where(section:not(section section)) {
  display: flex;
  flex-direction: column;
  padding-block: var(--section-padding-block);
  padding-inline: var(--gutter);
}
:where(body > header) {
  padding-block: var(--space-xs);
  padding-inline: var(--gutter);
}
:where(body > footer) {
  padding-block: var(--section-padding-block);
  padding-inline: var(--gutter);
}
.bg--ultra-light {
  background: var(--bg-ultra-light);
}
.bg--light {
  background: var(--bg-light);
}
.bg--dark {
  background: var(--bg-dark);
}
.bg--ultra-dark {
  background: var(--bg-ultra-dark);
}
.text--light {
  color: var(--text-light);
}
.text--light-muted {
  color: var(--text-light-muted);
}
.text--dark {
  color: var(--text-dark);
}
.text--dark-muted {
  color: var(--text-dark-muted);
}
:where(.bg--ultra-light) {
  --relative-text-color: var(--bg-ultra-light-text);
  color: var(--relative-text-color, inherit);
}
:where(.bg--light) {
  --relative-text-color: var(--bg-light-text);
  color: var(--relative-text-color, inherit);
}
:where(.bg--dark) {
  --relative-text-color: var(--bg-dark-text);
  color: var(--relative-text-color, inherit);
}
:where(.bg--ultra-dark) {
  --relative-text-color: var(--bg-ultra-dark-text);
  color: var(--relative-text-color, inherit);
}
.bg--ultra-light :where(h1, h2, h3, h4, h5, h6) {
  color: var(--relative-heading-color, inherit);
}
.bg--light :where(h1, h2, h3, h4, h5, h6) {
  color: var(--relative-heading-color, inherit);
}
.bg--dark :where(h1, h2, h3, h4, h5, h6) {
  color: var(--relative-heading-color, inherit);
}
.bg--ultra-dark :where(h1, h2, h3, h4, h5, h6) {
  color: var(--relative-heading-color, inherit);
}
.bg--ultra-light {
  --relative-heading-color: var(--bg-ultra-light-heading);
}
.bg--light {
  --relative-heading-color: var(--bg-light-heading);
}
.bg--dark {
  --relative-heading-color: var(--bg-dark-heading);
}
.bg--ultra-dark {
  --relative-heading-color: var(--bg-ultra-dark-heading);
}
.bg--ultra-light [class*="btn--"]:not(.unrelate) {
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary-ultra-light);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
.bg--ultra-light [class*="btn--"]:not(.unrelate).btn--outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
.bg--light [class*="btn--"]:not(.unrelate) {
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary-ultra-light);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
.bg--light [class*="btn--"]:not(.unrelate).btn--outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
.bg--ultra-light {
  --icon-scheme: var(--bg-ultra-light-icon);
}
.bg--light {
  --icon-scheme: var(--bg-light-icon);
}
.bg--dark {
  --icon-scheme: var(--bg-dark-icon);
}
.bg--ultra-dark {
  --icon-scheme: var(--bg-ultra-dark-icon);
}
/* Feat: Section Padding */
.section--xs {
  padding-block: var(--section-space-xs);
  padding-inline: var(--gutter);
}
.section--s {
  padding-block: var(--section-space-s);
  padding-inline: var(--gutter);
}
.section--s-to-xs {
  padding-block: var(--section-space-s-to-xs);
  padding-inline: var(--gutter);
}
.section--m {
  padding-block: var(--section-space-m);
  padding-inline: var(--gutter);
}
.section--m-to-s {
  padding-block: var(--section-space-m-to-s);
  padding-inline: var(--gutter);
}
.section--m-to-xs {
  padding-block: var(--section-space-m-to-xs);
  padding-inline: var(--gutter);
}
.section--l {
  padding-block: var(--section-space-l);
  padding-inline: var(--gutter);
}
.section--l-to-m {
  padding-block: var(--section-space-l-to-m);
  padding-inline: var(--gutter);
}
.section--l-to-s {
  padding-block: var(--section-space-l-to-s);
  padding-inline: var(--gutter);
}
.section--l-to-xs {
  padding-block: var(--section-space-l-to-xs);
  padding-inline: var(--gutter);
}
.section--xl {
  padding-block: var(--section-space-xl);
  padding-inline: var(--gutter);
}
.section--xl-to-l {
  padding-block: var(--section-space-xl-to-l);
  padding-inline: var(--gutter);
}
.section--xl-to-m {
  padding-block: var(--section-space-xl-to-m);
  padding-inline: var(--gutter);
}
.section--xl-to-s {
  padding-block: var(--section-space-xl-to-s);
  padding-inline: var(--gutter);
}
.section--xl-to-xs {
  padding-block: var(--section-space-xl-to-xs);
  padding-inline: var(--gutter);
}
.section--xxl {
  padding-block: var(--section-space-xxl);
  padding-inline: var(--gutter);
}
.section--xxl-to-xl {
  padding-block: var(--section-space-xxl-to-xl);
  padding-inline: var(--gutter);
}
.section--xxl-to-l {
  padding-block: var(--section-space-xxl-to-l);
  padding-inline: var(--gutter);
}
.section--xxl-to-m {
  padding-block: var(--section-space-xxl-to-m);
  padding-inline: var(--gutter);
}
.section--xxl-to-s {
  padding-block: var(--section-space-xxl-to-s);
  padding-inline: var(--gutter);
}
.section--xxl-to-xs {
  padding-block: var(--section-space-xxl-to-xs);
  padding-inline: var(--gutter);
}
.section--none {
  padding-block: 0;
  padding-inline: var(--gutter);
}
.header--xs {
  padding-block: var(--space-xs);
  padding-inline: var(--gutter);
}
.header--s {
  padding-block: var(--space-s);
  padding-inline: var(--gutter);
}
.header--m {
  padding-block: var(--space-m);
  padding-inline: var(--gutter);
}
.header--l {
  padding-block: var(--space-l);
  padding-inline: var(--gutter);
}
.header--xl {
  padding-block: var(--space-xl);
  padding-inline: var(--gutter);
}
.header--xxl {
  padding-block: var(--space-xxl);
  padding-inline: var(--gutter);
}
/* Feat: Overlays */
[class*="overlay--"], .overlay {
  position: relative;
  z-index: 0;
  isolation: isolate;
}
[class*="overlay--"]::before, .overlay::before {
  content: "";
  background: var(--overlay-color, rgba(0, 0, 0, 0.7));
  position: absolute;
  inset: 0;
  z-index: var(--overlay-z-index, -1);
}
figure:where(:has(> img, > picture, > svg, > video, > iframe)):where(.overlay), figure:where(:has(> img, > picture, > svg, > video, > iframe)):where([class*="overlay--"]) {
  --overlay-z-index: 0;
}
:is(.text--xxl, .text--xl, .text--l, .text--m, .text--s, .text--xs) {
  font-family: var(--text-font-family);
  line-height: var(--text-line-height);
  font-weight: var(--text-font-weight);
  text-wrap: var(--text-text-wrap);
}
.text--xxl {
  font-size: var(--text-xxl);
}
.text--xxl:is(p, li, blockquote, h1, h2, h3, h4, h5, h6, span, strong, cite) {
  max-width: var(--text-xxl-max-width);
}
.text--xl {
  font-size: var(--text-xl);
}
.text--xl:is(p, li, blockquote, h1, h2, h3, h4, h5, h6, span, strong, cite) {
  max-width: var(--text-xl-max-width);
}
.text--l {
  font-size: var(--text-l);
}
.text--l:is(p, li, blockquote, h1, h2, h3, h4, h5, h6, span, strong, cite) {
  max-width: var(--text-l-max-width);
}
.text--m {
  font-size: var(--text-m);
  line-height: var(--text-m-line-height);
}
.text--m:is(p, li, blockquote, h1, h2, h3, h4, h5, h6, span, strong, cite) {
  max-width: var(--text-m-max-width);
}
.text--s {
  font-size: var(--text-s);
}
.text--s:is(p, li, blockquote, h1, h2, h3, h4, h5, h6, span, strong, cite) {
  max-width: var(--text-s-max-width);
}
.text--xs {
  font-size: var(--text-xs);
}
.text--xs:is(p, li, blockquote, h1, h2, h3, h4, h5, h6, span, strong, cite) {
  max-width: var(--text-xs-max-width);
}
.h1 {
  font-size: var(--h1);
  letter-spacing: var(--h1-letter-spacing);
  max-width: var(--h1-max-width);
}
.h2 {
  font-size: var(--h2);
}
.h3 {
  font-size: var(--h3);
}
.h4 {
  font-size: var(--h4);
  line-height: var(--h4-line-height);
}
.h5 {
  font-size: var(--h5);
}
.h6 {
  font-size: var(--h6);
}
body blockquote {
  text-wrap: pretty;
}
/* Feat: Position & Sticky */
.sticky {
  position: -webkit-sticky;
  position: sticky;
  inset-block-start: var(--sticky-offset, 0);
}
/* Feat: Auto Object Fit */
img {
  object-fit: var(--object-fit, cover);
  object-position: var(--object-position, 50% 50%);
}
/* Feat: Width */
.width--10 {
  inline-size: 100%;
  max-inline-size: calc(var(--content-width) * 0.1);
}
.width--20 {
  inline-size: 100%;
  max-inline-size: calc(var(--content-width) * 0.2);
}
.width--30 {
  inline-size: 100%;
  max-inline-size: calc(var(--content-width) * 0.3);
}
.width--40 {
  inline-size: 100%;
  max-inline-size: calc(var(--content-width) * 0.4);
}
.width--50 {
  inline-size: 100%;
  max-inline-size: calc(var(--content-width) * 0.5);
}
.width--60 {
  inline-size: 100%;
  max-inline-size: calc(var(--content-width) * 0.6);
}
.width--70 {
  inline-size: 100%;
  max-inline-size: calc(var(--content-width) * 0.7);
}
.width--80 {
  inline-size: 100%;
  max-inline-size: calc(var(--content-width) * 0.8);
}
.width--90 {
  inline-size: 100%;
  max-inline-size: calc(var(--content-width) * 0.9);
}
.width--full {
  inline-size: 100%;
  max-inline-size: 100%;
}
figure[class*="width--"] img {
  inline-size: 100%;
}
.width--auto {
  inline-size: auto !important;
  max-inline-size: 100%;
}
.content-width {
  inline-size: 100%;
  max-inline-size: var(--content-width);
  margin-inline: auto;
}
.content-width--safe {
  inline-size: 100%;
  max-inline-size: var(--content-width-safe);
  margin-inline: auto;
}
.width--max-content {
  inline-size: max-content;
  max-inline-size: 100%;
}
.width--min-content {
  inline-size: min-content;
  max-inline-size: 100%;
}
.width--fit-content {
  inline-size: fit-content;
  max-inline-size: 100%;
}
.gap--none {
  --row-gap: 0;
  --col-gap: 0;
  gap: 0;
}
.container-gap {
  --row-gap: var(--container-gap);
  --col-gap: var(--container-gap);
  gap: var(--container-gap);
}
.content-gap {
  --row-gap: var(--content-gap);
  --col-gap: var(--content-gap);
  gap: var(--content-gap);
}
.grid-gap {
  --row-gap: var(--grid-gap);
  --col-gap: var(--grid-gap);
  gap: var(--grid-gap);
}
/* Feat: Auto Container Gap */
:where(section:not(section section)) {
  gap: var(--container-gap);
}
/* Feat: Auto Content Gap */
:where(section:not(section section)) > :where(div, ul, ol) {
  gap: var(--content-gap);
}
/* Feat: Auto Container Gap */
:where([data-etch-element="flex-div"]:not(main)) {
  gap: var(--content-gap);
}
/* Feat: Auto Grid Gap */
section > div:where([class*="grid--"]), :where([class*="grid--"]) {
  gap: var(--grid-gap);
}
:where(img:not(header img), figure:not(figure:has(img))) {
  border-radius: var(--radius);
}
:root {
  --transition-duration: 0.3s;
  --transition-timing: ease-in-out;
  --transition-delay: 0s;
  --transition: 0.3s ease-in-out 0s;
}
:root {
  --ease-smooth: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-snappy: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-gentle: cubic-bezier(0.65, 0, 0.35, 1);
  --ease-bouncy: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  --ease-elastic: linear(0, 0.029 1.6%, 0.123 3.5%, 0.651 10.6%, 0.862 14.1%, 1.002 17.7%, 1.046 19.6%, 1.074 21.6%, 1.087 23.9%, 1.086 26.6%, 1.014 38.5%, 0.994 46.3%, 1);
}
.transition {
  transition: var(--transition);
}
:root {
  --hover-duration: var(--transition-duration, 0.3s);
  --hover-timing: var(--transition-timing, ease-in-out);
}
:root {
  --hover-grow-amount: 1.05;
}
:root {
  --hover-shrink-amount: 0.95;
}
:root {
  --hover-float-amount: -8px;
}
:root {
  --hover-sink-amount: 8px;
}
:root {
  --hover-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}
:root {
  --hover-glow-color: var(--primary);
  --hover-glow-spread: 20px;
  --hover-glow-opacity: 0.3;
}
[class*="on-hover--"] {
  transition-property: scale, translate, opacity, box-shadow;
  transition-duration: var(--hover-duration);
  transition-timing-function: var(--hover-timing);
}
.on-hover--grow:hover {
  scale: var(--hover-grow-amount);
}
.on-hover--shrink:hover {
  scale: var(--hover-shrink-amount);
}
.on-hover--float {
  translate: 0 0;
}
.on-hover--float:hover {
  translate: 0 var(--hover-float-amount);
}
.on-hover--sink {
  translate: 0 0;
}
.on-hover--sink:hover {
  translate: 0 var(--hover-sink-amount);
}
.on-hover--shadow:hover {
  box-shadow: var(--hover-shadow);
}
.on-hover--glow:hover {
  box-shadow: 0 0 var(--hover-glow-spread) color-mix(in srgb, var(--hover-glow-color) calc(var(--hover-glow-opacity) * 100%), transparent);
}
.on-hover--fade:hover {
  opacity: 0.8;
}
:root {
  --border-ripple-color: currentColor;
  --border-ripple-width: 4px;
  --border-ripple-duration: 1s;
  --border-ripple-distance: 12px;
}
:root {
  --border-outline-color: currentColor;
  --border-outline-width: 4px;
  --border-outline-duration: 0.3s;
}
:root {
  --border-underline-color: currentColor;
  --border-underline-width: 3px;
  --border-underline-duration: 0.3s;
}
@keyframes border-ripple-out {
  0% {
    top: calc(var(--border-ripple-width, 4px) * -1);
    right: calc(var(--border-ripple-width, 4px) * -1);
    bottom: calc(var(--border-ripple-width, 4px) * -1);
    left: calc(var(--border-ripple-width, 4px) * -1);
    opacity: 1;
  }
  100% {
    top: calc((var(--border-ripple-width, 4px) + var(--border-ripple-distance, 12px)) * -1);
    right: calc((var(--border-ripple-width, 4px) + var(--border-ripple-distance, 12px)) * -1);
    bottom: calc((var(--border-ripple-width, 4px) + var(--border-ripple-distance, 12px)) * -1);
    left: calc((var(--border-ripple-width, 4px) + var(--border-ripple-distance, 12px)) * -1);
    opacity: 0;
  }
}
@keyframes border-ripple-in {
  0% {
    top: calc((var(--border-ripple-width, 4px) + var(--border-ripple-distance, 12px)) * -1);
    right: calc((var(--border-ripple-width, 4px) + var(--border-ripple-distance, 12px)) * -1);
    bottom: calc((var(--border-ripple-width, 4px) + var(--border-ripple-distance, 12px)) * -1);
    left: calc((var(--border-ripple-width, 4px) + var(--border-ripple-distance, 12px)) * -1);
    opacity: 0;
  }
  100% {
    top: calc(var(--border-ripple-width, 4px) * -1);
    right: calc(var(--border-ripple-width, 4px) * -1);
    bottom: calc(var(--border-ripple-width, 4px) * -1);
    left: calc(var(--border-ripple-width, 4px) * -1);
    opacity: 1;
  }
}
.on-hover--ripple-out {
  position: relative;
  overflow: visible;
  border: none;
  outline: none;
}
.on-hover--ripple-out::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: calc(var(--border-ripple-width, 4px) * -1);
  right: calc(var(--border-ripple-width, 4px) * -1);
  bottom: calc(var(--border-ripple-width, 4px) * -1);
  left: calc(var(--border-ripple-width, 4px) * -1);
  border: var(--border-ripple-width, 4px) solid var(--border-ripple-color, currentColor);
  border-radius: inherit;
  pointer-events: none;
  opacity: 0;
  animation-duration: var(--border-ripple-duration, 1s);
}
.on-hover--ripple-out:hover::before, .on-hover--ripple-out:focus::before, .on-hover--ripple-out:active::before {
  animation-name: border-ripple-out;
  animation-fill-mode: backwards;
}
.on-hover--ripple-in {
  position: relative;
  overflow: visible;
  border: none;
  outline: none;
}
.on-hover--ripple-in::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: calc(var(--border-ripple-width, 4px) * -1);
  right: calc(var(--border-ripple-width, 4px) * -1);
  bottom: calc(var(--border-ripple-width, 4px) * -1);
  left: calc(var(--border-ripple-width, 4px) * -1);
  border: var(--border-ripple-width, 4px) solid var(--border-ripple-color, currentColor);
  border-radius: inherit;
  pointer-events: none;
  opacity: 0;
  animation-duration: var(--border-ripple-duration, 1s);
}
.on-hover--ripple-in:hover::before, .on-hover--ripple-in:focus::before, .on-hover--ripple-in:active::before {
  animation-name: border-ripple-in;
  animation-fill-mode: both;
}
.on-hover--outline-out {
  position: relative;
  overflow: visible;
  border: none;
  outline: none;
}
.on-hover--outline-out::before {
  content: "";
  position: absolute;
  inset: 0;
  border: var(--border-outline-width, 4px) solid var(--border-outline-color, currentColor);
  border-radius: inherit;
  opacity: 0;
  transition: inset var(--border-outline-duration, 0.3s) ease-out, opacity var(--border-outline-duration, 0.3s) ease-out;
  pointer-events: none;
}
.on-hover--outline-out:hover::before {
  inset: calc(var(--border-outline-width, 4px) * -2);
  opacity: 1;
}
.on-hover--outline-in {
  position: relative;
  overflow: visible;
  border: none;
  outline: none;
}
.on-hover--outline-in::before {
  content: "";
  position: absolute;
  inset: calc(var(--border-outline-width, 4px) * -4);
  border: var(--border-outline-width, 4px) solid var(--border-outline-color, currentColor);
  border-radius: inherit;
  opacity: 0;
  transition: inset var(--border-outline-duration, 0.3s) ease-out, opacity var(--border-outline-duration, 0.3s) ease-out;
  pointer-events: none;
}
.on-hover--outline-in:hover::before {
  inset: calc(var(--border-outline-width, 4px) * -2);
  opacity: 1;
}
.on-hover--underline-left {
  position: relative;
  border: none;
  outline: none;
}
.on-hover--underline-left::before {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: 0;
  height: var(--border-underline-width, 3px);
  background: var(--border-underline-color, currentColor);
  transition: right var(--border-underline-duration, 0.3s) ease-out;
  pointer-events: none;
}
.on-hover--underline-left:hover::before {
  right: 0;
}
.on-hover--underline-center {
  position: relative;
  border: none;
  outline: none;
}
.on-hover--underline-center::before {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 0;
  height: var(--border-underline-width, 3px);
  background: var(--border-underline-color, currentColor);
  transition: left var(--border-underline-duration, 0.3s) ease-out, right var(--border-underline-duration, 0.3s) ease-out;
  pointer-events: none;
}
.on-hover--underline-center:hover::before {
  left: 0;
  right: 0;
}
.on-hover--underline-right {
  position: relative;
  border: none;
  outline: none;
}
.on-hover--underline-right::before {
  content: "";
  position: absolute;
  left: 100%;
  right: 0;
  bottom: 0;
  height: var(--border-underline-width, 3px);
  background: var(--border-underline-color, currentColor);
  transition: left var(--border-underline-duration, 0.3s) ease-out;
  pointer-events: none;
}
.on-hover--underline-right:hover::before {
  left: 0;
}
:root {
  --scroll-animation-duration: 0.6s;
  --scroll-animation-timing: var(--ease-snappy);
  --scroll-animation-delay: 0s;
  --animate-range-start: entry 20%;
  --animate-range-end: entry 100%;
  --enter-opacity-start: 0;
  --enter-float-distance: 40px;
  --enter-sink-distance: 40px;
  --enter-slide-distance: 40px;
  --enter-scale-start: 0.9;
  --enter-scale-shrink: 1.1;
  --enter-blur-amount: 8px;
  --enter-parallax-distance: 150px;
  --enter-stagger-interval: 5%;
}
@keyframes enter-animate {
  from {
    opacity: var(--animate-opacity, 1);
    transform: translateY(var(--animate-block, 0)) translateX(var(--animate-inline, 0)) scale(var(--animate-scale, 1));
    filter: blur(var(--animate-blur, 0));
  }
  to {
    opacity: 1;
    transform: translateY(0) translateX(0) scale(1);
    filter: blur(0);
  }
}
@supports (animation-timeline: view()) {
  [class*="on-enter--"]:not([class*="on-enter--delay"]):not([class*="on-enter-all"]) {
    animation-name: enter-animate;
    animation-timing-function: linear;
    animation-fill-mode: both;
    animation-timeline: view();
    animation-range: var(--animate-range-start, entry 20%) var(--animate-range-end, entry 100%);
  }
  .on-enter--fade {
    --animate-opacity: var(--enter-opacity-start, 0);
  }
  .on-enter--float {
    --animate-block: var(--enter-float-distance, 40px);
  }
  .on-enter--grow {
    --animate-scale: var(--enter-scale-start, 0.9);
  }
  .on-enter--shrink {
    --animate-scale: var(--enter-scale-shrink, 1.1);
  }
  .on-enter--blur {
    --animate-blur: var(--enter-blur-amount, 8px);
  }
  @keyframes parallax-animate {
    from {
      translate: 0 calc(var(--enter-parallax-distance, 150px) / 2);
    }
    to {
      translate: 0 calc(var(--enter-parallax-distance, 150px) / -2);
    }
  }
  .on-enter--parallax {
    animation-name: parallax-animate;
    animation-timing-function: linear;
    animation-fill-mode: both;
    animation-timeline: view();
    animation-range: cover 0% cover 100%;
  }
  [class*="on-enter-all--"] > * {
    animation-name: enter-animate;
    animation-timing-function: linear;
    animation-fill-mode: both;
    animation-timeline: view();
    animation-range: var(--animate-range-start, entry 20%) var(--animate-range-end, entry 100%);
  }
  .on-enter-all--fade > * {
    --animate-opacity: var(--enter-opacity-start, 0);
  }
  .on-enter-all--float > * {
    --animate-block: var(--enter-float-distance, 40px);
  }
  .on-enter-all--grow > * {
    --animate-scale: var(--enter-scale-start, 0.9);
  }
  .on-enter-all--shrink > * {
    --animate-scale: var(--enter-scale-shrink, 1.1);
  }
  .on-enter-all--blur > * {
    --animate-blur: var(--enter-blur-amount, 8px);
  }
  [class*="on-enter-all--"].on-enter--stagger > * {
    animation-delay: calc(sibling-index() * var(--enter-stagger-interval, 5%));
  }
}
@supports not (animation-timeline: view()) {
  [class*="on-enter--"], [class*="on-enter-all--"] > * {
    opacity: 1;
    transform: none;
    filter: none;
  }
}
:root {
  --exit-range-start: cover 50%;
  --exit-range-end: cover 100%;
  --exit-opacity-target: 0;
  --exit-float-distance: 40px;
  --exit-sink-distance: 40px;
  --exit-slide-distance: 40px;
  --exit-scale-amount: 0.9;
  --exit-scale-grow: 1.1;
  --exit-blur-amount: 8px;
  --exit-stagger-interval: 5%;
}
@keyframes exit-animate {
  from {
    opacity: 1;
    transform: translateY(0) translateX(0) scale(1);
    filter: blur(0);
  }
  to {
    opacity: var(--exit-opacity, 1);
    transform: translateY(var(--exit-block, 0)) translateX(var(--exit-inline, 0)) scale(var(--exit-scale, 1));
    filter: blur(var(--exit-blur, 0));
  }
}
@supports (animation-timeline: view()) {
  [class*="on-exit--"]:not([class*="on-exit--delay"]):not([class*="on-exit-all"]) {
    animation-name: exit-animate;
    animation-timing-function: linear;
    animation-fill-mode: both;
    animation-timeline: view();
    animation-range: var(--exit-range-start, exit 0%) var(--exit-range-end, exit 80%);
  }
  .on-exit--fade {
    --exit-opacity: var(--exit-opacity-target, 0);
  }
  .on-exit--float {
    --exit-block: calc(var(--exit-float-distance, 40px) * -1);
  }
  .on-exit--sink {
    --exit-block: var(--exit-sink-distance, 40px);
  }
  .on-exit--grow {
    --exit-scale: var(--exit-scale-grow, 1.1);
  }
  .on-exit--shrink {
    --exit-scale: var(--exit-scale-amount, 0.9);
  }
  .on-exit--blur {
    --exit-blur: var(--exit-blur-amount, 8px);
  }
  [class*="on-exit-all--"] > * {
    animation-name: exit-animate;
    animation-timing-function: linear;
    animation-fill-mode: both;
    animation-timeline: view();
    animation-range: var(--exit-range-start, exit 0%) var(--exit-range-end, exit 80%);
  }
  .on-exit-all--fade > * {
    --exit-opacity: var(--exit-opacity-target, 0);
  }
  .on-exit-all--float > * {
    --exit-block: calc(var(--exit-float-distance, 40px) * -1);
  }
  .on-exit-all--sink > * {
    --exit-block: var(--exit-sink-distance, 40px);
  }
  .on-exit-all--grow > * {
    --exit-scale: var(--exit-scale-grow, 1.1);
  }
  .on-exit-all--shrink > * {
    --exit-scale: var(--exit-scale-amount, 0.9);
  }
  .on-exit-all--blur > * {
    --exit-blur: var(--exit-blur-amount, 8px);
  }
  [class*="on-exit-all--"].on-exit--stagger > * {
    animation-delay: calc(sibling-index() * var(--exit-stagger-interval, 5%));
  }
}
@supports not (animation-timeline: view()) {
  [class*="on-exit--"], [class*="on-exit-all--"] > * {
    opacity: 1;
    transform: none;
    filter: none;
  }
}
:root {
  --visible-duration: 0.6s;
  --visible-timing: var(--ease-smooth);
  --visible-delay: 0s;
  --visible-threshold: 0.2;
  --visible-opacity-start: 0;
  --visible-float-distance: 40px;
  --visible-sink-distance: 40px;
  --visible-slide-distance: 40px;
  --visible-scale-start: 0.9;
  --visible-scale-shrink: 1.1;
  --visible-blur-amount: 8px;
  --visible-stagger-interval: 0.1s;
}
[class*="on-visible--"]:not([class*="on-visible-all"]) {
  transition-property: opacity, translate, scale, filter;
  transition-duration: var(--visible-duration, 0.6s);
  transition-timing-function: var(--visible-timing, cubic-bezier(0.4, 0, 0.2, 1));
  transition-delay: var(--visible-delay, 0s);
}
.on-visible--fade {
  opacity: var(--visible-opacity-start, 0);
}
.on-visible--fade.acss-visible {
  opacity: 1;
}
.on-visible--float {
  translate: 0 var(--visible-float-distance, 40px);
}
.on-visible--float.acss-visible {
  translate: 0 0;
}
.on-visible--sink {
  translate: 0 calc(var(--visible-sink-distance, 40px) * -1);
}
.on-visible--sink.acss-visible {
  translate: 0 0;
}
.on-visible--grow {
  scale: var(--visible-scale-start, 0.9);
}
.on-visible--grow.acss-visible {
  scale: 1;
}
.on-visible--shrink {
  scale: var(--visible-scale-shrink, 1.1);
}
.on-visible--shrink.acss-visible {
  scale: 1;
}
.on-visible--blur {
  filter: blur(var(--visible-blur-amount, 8px));
}
.on-visible--blur.acss-visible {
  filter: blur(0);
}
[class*="on-visible-all--"] > * {
  transition-property: opacity, translate, scale, filter;
  transition-duration: var(--visible-duration, 0.6s);
  transition-timing-function: var(--visible-timing, cubic-bezier(0.4, 0, 0.2, 1));
  transition-delay: var(--visible-delay, 0s);
}
.on-visible-all--fade > * {
  opacity: var(--visible-opacity-start, 0);
}
.on-visible-all--fade.acss-visible > * {
  opacity: 1;
}
.on-visible-all--float > * {
  translate: 0 var(--visible-float-distance, 40px);
}
.on-visible-all--float.acss-visible > * {
  translate: 0 0;
}
.on-visible-all--sink > * {
  translate: 0 calc(var(--visible-sink-distance, 40px) * -1);
}
.on-visible-all--sink.acss-visible > * {
  translate: 0 0;
}
.on-visible-all--grow > * {
  scale: var(--visible-scale-start, 0.9);
}
.on-visible-all--grow.acss-visible > * {
  scale: 1;
}
.on-visible-all--shrink > * {
  scale: var(--visible-scale-shrink, 1.1);
}
.on-visible-all--shrink.acss-visible > * {
  scale: 1;
}
.on-visible-all--blur > * {
  filter: blur(var(--visible-blur-amount, 8px));
}
.on-visible-all--blur.acss-visible > * {
  filter: blur(0);
}
[class*="on-visible-all--"].on-visible--stagger > * {
  transition-delay: calc(sibling-index() * var(--visible-stagger-interval, 0.1s));
}
@media (prefers-reduced-motion: reduce) {
  [class*="on-enter--"], [class*="on-enter-all--"] > *, [class*="on-exit--"], [class*="on-exit-all--"] > * {
    animation: none !important;
    opacity: 1;
    transform: none;
    filter: none;
  }
  [class*="on-visible--"], [class*="on-visible-all--"] > * {
    transition: none !important;
    opacity: 1;
    translate: none;
    scale: none;
    filter: none;
  }
  [class*="on-hover--"] {
    transition: none;
  }
  [class*="on-hover--"]:hover {
    transform: none;
    translate: none;
    scale: none;
    box-shadow: initial;
    filter: none;
  }
}
/* Inverted Radius Framework */
[data-inverted-radius-1-position], [data-inverted-radius-2-position] {
  position: var(--inverted-radius-parent-position, absolute);
  background: var(--bg, var(--white));
  z-index: 1;
  isolation: isolate;
  /* Border radius options */
  --slice-top-left: var(--radius) 0 0 0;
  --slice-top-right: 0 var(--radius) 0 0;
  --slice-bottom-right: 0 0 var(--radius) 0;
  --slice-bottom-left: 0 0 0 var(--radius);
  /* Positions */
  --position-top-left: 0 auto auto 0;
  --position-top-right: 0 0 auto auto;
  --position-bottom-left: auto auto 0 0;
  --position-bottom-right: auto 0 0 auto;
  --position-top-left-outside: 0 auto auto calc(var(--radius) * -1);
  --position-top-right-outside: 0 calc(var(--radius) * -1) auto auto;
  --position-bottom-left-outside: auto 0 0 calc(var(--radius) * -1);
  --position-bottom-right-outside: auto calc(var(--radius) * -1) 0 auto;
  --position-top-outside-left: calc(var(--radius) * -1) auto auto 0;
  --position-top-outside-right: calc(var(--radius) * -1) 0 auto auto;
  --position-bottom-outside-left: auto 0 calc(var(--radius) * -1) 0;
  --position-bottom-outside-right: auto 0 calc(var(--radius) * -1) auto;
  --position-top-outside-left-outside: calc(var(--radius) * -1) auto auto calc(var(--radius) * -1);
  --position-top-outside-right-outside: calc(var(--radius) * -1) calc(var(--radius) * -1) auto auto;
  --position-bottom-outside-left-outside: auto auto calc(var(--radius) * -1) calc(var(--radius) * -1);
  --position-bottom-outside-right-outside: auto calc(var(--radius) * -1) calc(var(--radius) * -1) auto;
  /* Box Shadow Values */
  --shadow-bottom-right: var(--radius) var(--radius) 0 var(--radius) var(--bg, var(--white));
  --shadow-bottom-left: calc(var(--radius) * -1) var(--radius) 0 var(--radius) var(--bg, var(--white));
  --shadow-top-right: var(--radius) calc(var(--radius) * -1) 0 var(--radius) var(--bg, var(--white));
  --shadow-top-left: calc(var(--radius) * -1) calc(var(--radius) * -1) 0 var(--radius) var(--bg, var(--white));
  --inverted-radius-1-shadow: var(--shadow-top-left);
  --inverted-radius-2-shadow: var(--shadow-top-left);
}
/* First corner positions */
[data-inverted-radius-1-position="top-left"] {
  --inverted-radius-1-position: var(--position-top-left);
}
[data-inverted-radius-1-position="top-right"] {
  --inverted-radius-1-position: var(--position-top-right);
}
[data-inverted-radius-1-position="bottom-left"] {
  --inverted-radius-1-position: var(--position-bottom-left);
}
[data-inverted-radius-1-position="bottom-right"] {
  --inverted-radius-1-position: var(--position-bottom-right);
}
[data-inverted-radius-1-position="top-outside-left"] {
  --inverted-radius-1-position: var(--position-top-outside-left);
}
[data-inverted-radius-1-position="top-outside-right"] {
  --inverted-radius-1-position: var(--position-top-outside-right);
}
[data-inverted-radius-1-position="bottom-outside-left"] {
  --inverted-radius-1-position: var(--position-bottom-outside-left);
}
[data-inverted-radius-1-position="bottom-outside-right"] {
  --inverted-radius-1-position: var(--position-bottom-outside-right);
}
[data-inverted-radius-1-position="top-left-outside"] {
  --inverted-radius-1-position: var(--position-top-left-outside);
}
[data-inverted-radius-1-position="top-right-outside"] {
  --inverted-radius-1-position: var(--position-top-right-outside);
}
[data-inverted-radius-1-position="bottom-left-outside"] {
  --inverted-radius-1-position: var(--position-bottom-left-outside);
}
[data-inverted-radius-1-position="bottom-right-outside"] {
  --inverted-radius-1-position: var(--position-bottom-right-outside);
}
[data-inverted-radius-1-position="top-outside-left-outside"] {
  --inverted-radius-1-position: var(--position-top-outside-left-outside);
}
[data-inverted-radius-1-position="top-outside-right-outside"] {
  --inverted-radius-1-position: var(--position-top-outside-right-outside);
}
[data-inverted-radius-1-position="bottom-outside-left-outside"] {
  --inverted-radius-1-position: var(--position-bottom-outside-left-outside);
}
[data-inverted-radius-1-position="bottom-outside-right-outside"] {
  --inverted-radius-1-position: var(--position-bottom-outside-right-outside);
}
/* Second corner positions */
[data-inverted-radius-2-position="top-left"] {
  --inverted-radius-2-position: var(--position-top-left);
}
[data-inverted-radius-2-position="top-right"] {
  --inverted-radius-2-position: var(--position-top-right);
}
[data-inverted-radius-2-position="bottom-left"] {
  --inverted-radius-2-position: var(--position-bottom-left);
}
[data-inverted-radius-2-position="bottom-right"] {
  --inverted-radius-2-position: var(--position-bottom-right);
}
[data-inverted-radius-2-position="top-outside-left"] {
  --inverted-radius-2-position: var(--position-top-outside-left);
}
[data-inverted-radius-2-position="top-outside-right"] {
  --inverted-radius-2-position: var(--position-top-outside-right);
}
[data-inverted-radius-2-position="bottom-outside-left"] {
  --inverted-radius-2-position: var(--position-bottom-outside-left);
}
[data-inverted-radius-2-position="bottom-outside-right"] {
  --inverted-radius-2-position: var(--position-bottom-outside-right);
}
[data-inverted-radius-2-position="top-left-outside"] {
  --inverted-radius-2-position: var(--position-top-left-outside);
}
[data-inverted-radius-2-position="top-right-outside"] {
  --inverted-radius-2-position: var(--position-top-right-outside);
}
[data-inverted-radius-2-position="bottom-left-outside"] {
  --inverted-radius-2-position: var(--position-bottom-left-outside);
}
[data-inverted-radius-2-position="bottom-right-outside"] {
  --inverted-radius-2-position: var(--position-bottom-right-outside);
}
[data-inverted-radius-2-position="top-outside-left-outside"] {
  --inverted-radius-2-position: var(--position-top-outside-left-outside);
}
[data-inverted-radius-2-position="top-outside-right-outside"] {
  --inverted-radius-2-position: var(--position-top-outside-right-outside);
}
[data-inverted-radius-2-position="bottom-outside-left-outside"] {
  --inverted-radius-2-position: var(--position-bottom-outside-left-outside);
}
[data-inverted-radius-2-position="bottom-outside-right-outside"] {
  --inverted-radius-2-position: var(--position-bottom-outside-right-outside);
}
/* Corner types */
[data-inverted-radius-1-slice="top-left"] {
  --inverted-radius-1-slice: var(--slice-top-left);
  --inverted-radius-1-shadow: var(--shadow-top-left);
}
[data-inverted-radius-1-slice="top-right"] {
  --inverted-radius-1-slice: var(--slice-top-right);
  --inverted-radius-1-shadow: var(--shadow-top-right);
}
[data-inverted-radius-1-slice="bottom-left"] {
  --inverted-radius-1-slice: var(--slice-bottom-left);
  --inverted-radius-1-shadow: var(--shadow-bottom-left);
}
[data-inverted-radius-1-slice="bottom-right"] {
  --inverted-radius-1-slice: var(--slice-bottom-right);
  --inverted-radius-1-shadow: var(--shadow-bottom-right);
}
[data-inverted-radius-2-slice="top-left"] {
  --inverted-radius-2-slice: var(--slice-top-left);
  --inverted-radius-2-shadow: var(--shadow-top-left);
}
[data-inverted-radius-2-slice="top-right"] {
  --inverted-radius-2-slice: var(--slice-top-right);
  --inverted-radius-2-shadow: var(--shadow-top-right);
}
[data-inverted-radius-2-slice="bottom-left"] {
  --inverted-radius-2-slice: var(--slice-bottom-left);
  --inverted-radius-2-shadow: var(--shadow-bottom-left);
}
[data-inverted-radius-2-slice="bottom-right"] {
  --inverted-radius-2-slice: var(--slice-bottom-right);
  --inverted-radius-2-shadow: var(--shadow-bottom-right);
}
/* Pseudo-elements */
[data-inverted-radius-1-position]::before {
  content: "";
  position: absolute;
  inset: var(--inverted-radius-1-position);
  border-radius: var(--inverted-radius-1-slice);
  box-shadow: var(--inverted-radius-1-shadow);
  width: var(--radius);
  height: var(--radius);
  aspect-ratio: 1;
  z-index: -1;
  background: transparent;
}
[data-inverted-radius-2-position]::after {
  content: "";
  position: absolute;
  inset: var(--inverted-radius-2-position);
  border-radius: var(--inverted-radius-2-slice);
  box-shadow: var(--inverted-radius-2-shadow);
  width: var(--radius);
  height: var(--radius);
  aspect-ratio: 1;
  z-index: -1;
  background: transparent;
}
form.wsf-form {
  --wsf-form-border-radius: 0;
  --wsf-form-border-width: 0px;
  --wsf-form-border-style: solid;
  --wsf-form-grid-gap: 20px;
  --wsf-form-padding-horizontal: 0px;
  --wsf-form-padding-vertical: 0px;
  --wsf-form-transition-enabled: 1;
  --wsf-form-transition-speed: var(--transition-duration);
  --wsf-form-transition-timing-function: var(--transition-timing);
  --wsf-form-font-family: var(--text-font-family);
  --wsf-form-font-size: var(--text-m);
  --wsf-form-font-size-small: var(--text-s);
  --wsf-form-font-size-large: var(--text-l);
  --wsf-form-font-style: normal;
  --wsf-form-font-weight: normal;
  --wsf-form-letter-spacing: var(--text-letter-spacing);
  --wsf-form-line-height: var(--text-line-height);
  --wsf-form-text-decoration: none;
  --wsf-form-text-transform: none;
  --wsf-group-li-border-radius: var(--btn-border-radius);
  --wsf-group-ul-border-width: 1px;
  --wsf-group-ul-border-style: solid;
  --wsf-group-li-border-width: 1px;
  --wsf-group-li-border-style: solid;
  --wsf-group-li-gap: 0px;
  --wsf-group-li-padding-horizontal: 1.5em;
  --wsf-group-li-padding-vertical: 0.75em;
  --wsf-group-li-font-size: var(--f-form-font-size);
  --wsf-group-li-font-weight: ;
  --wsf-group-li-font-style: inherit;
  --wsf-group-li-letter-spacing: 0;
  --wsf-group-li-line-height: var(--f-form-line-height);
  --wsf-group-li-text-decoration: inherit;
  --wsf-group-li-text-transform: inherit;
  --wsf-group-li-steps-size: var(--space-l);
  --wsf-group-li-steps-font-size: var(--f-form-font-size);
  --wsf-group-li-steps-font-weight: ;
  --wsf-group-li-steps-font-style: normal;
  --wsf-group-li-steps-text-decoration: none;
  --wsf-section-legend-font-size: var(--f-form-font-size);
  --wsf-section-legend-font-style: normal;
  --wsf-section-legend-font-weight: 600;
  --wsf-section-legend-line-height: var(--f-form-line-height);
  --wsf-section-legend-text-decoration: none;
  --wsf-section-legend-text-transform: none;
  --wsf-section-legend-gap: 1rem;
  --wsf-section-icon-size: var(--text-m);
  --wsf-field-height: calc((var(--wsf-field-padding-vertical) * 2) + (var(--wsf-field-border-width) * 2) + 1lh);
  --wsf-field-border-radius: var(--radius);
  --wsf-field-border-width: 1px;
  --wsf-field-border-style: solid;
  --wsf-field-box-shadow-width-focus: 0px;
  --wsf-field-fieldset-legend-font-size: var(--f-form-font-size);
  --wsf-field-fieldset-legend-font-style: normal;
  --wsf-field-fieldset-legend-font-weight: 400;
  --wsf-field-fieldset-legend-text-decoration: none;
  --wsf-field-fieldset-legend-text-transform: none;
  --wsf-field-fieldset-legend-gap: 0.5em;
  --wsf-field-help-font-size: var(--text-s);
  --wsf-field-help-font-style: normal;
  --wsf-field-help-font-weight: 400;
  --wsf-field-help-line-height: 1.5;
  --wsf-field-help-text-decoration: none;
  --wsf-field-help-text-transform: none;
  --wsf-field-help-gap: 0.5em;
  --wsf-field-invalid-feedback-font-size: var(--text-s);
  --wsf-field-invalid-feedback-font-style: normal;
  --wsf-field-invalid-feedback-font-weight: 400;
  --wsf-field-invalid-feedback-letter-spacing: var(--text-letter-spacing);
  --wsf-field-invalid-feedback-line-height: var(--text-line-height);
  --wsf-field-invalid-feedback-text-decoration: none;
  --wsf-field-invalid-feedback-text-transform: none;
  --wsf-field-invalid-feedback-gap: 0.5em;
  --wsf-field-label-font-family: var(--f-form-font-family);
  --wsf-field-label-font-size: var(--f-form-font-size);
  --wsf-field-label-font-style: normal;
  --wsf-field-label-font-weight: 400;
  --wsf-field-label-letter-spacing: var(--text-letter-spacing);
  --wsf-field-label-line-height: var(--text-line-height);
  --wsf-field-label-text-decoration: none;
  --wsf-field-label-text-transform: none;
  --wsf-field-label-gap: 0.5em;
  --wsf-field-label-inside-offset: -20px;
  --wsf-field-label-inside-scale: 0.9;
  --wsf-field-padding-horizontal: 10px;
  --wsf-field-padding-vertical: 8.5px;
  --wsf-field-prefix-suffix-font-size: var(--text-s);
  --wsf-field-prefix-suffix-font-style: normal;
  --wsf-field-prefix-suffix-font-weight: 400;
  --wsf-field-prefix-suffix-letter-spacing: var(--text-letter-spacing);
  --wsf-field-prefix-suffix-line-height: var(--text-line-height);
  --wsf-field-prefix-suffix-text-decoration: none;
  --wsf-field-prefix-suffix-text-transform: none;
  --wsf-field-tooltip-font-size: var(--text-xs);
  --wsf-field-tooltip-font-weight: 400;
  --wsf-field-tooltip-line-height: var(--text-line-height);
  --wsf-field-tooltip-border-radius: var(--radius-s);
  --wsf-field-tooltip-gap: 5px;
  --wsf-field-font-size: var(--text-m);
  --wsf-field-font-style: normal;
  --wsf-field-font-weight: 400;
  --wsf-field-letter-spacing: var(--text-letter-spacing);
  --wsf-field-line-height: var(--text-line-height);
  --wsf-field-text-decoration: none;
  --wsf-field-text-transform: none;
  --wsf-field-checkbox-border-radius: 4px;
  --wsf-field-checkbox-gap-horizontal: 6px;
  --wsf-field-checkbox-gap-vertical: 10px;
  --wsf-field-checkbox-size: 1lh;
  --wsf-field-radio-gap-horizontal: 6px;
  --wsf-field-radio-gap-vertical: 10px;
  --wsf-field-radio-size: 1lh;
  --wsf-field-datetime-calendar-border-style: solid;
  --wsf-field-datetime-calendar-border-width: 1px;
  --wsf-field-datetime-calendar-font-size: var(--text-s);
  --wsf-field-datetime-calendar-font-style: normal;
  --wsf-field-datetime-calendar-font-weight: 400;
  --wsf-field-datetime-calendar-letter-spacing: var(--text-letter-spacing);
  --wsf-field-datetime-calendar-line-height: var(--text-line-height);
  --wsf-field-datetime-calendar-text-decoration: none;
  --wsf-field-datetime-calendar-text-transform: none;
  --wsf-field-datetime-padding-vertical: 6px;
  --wsf-field-datetime-padding-horizontal: 8px;
  --wsf-field-file-dropzonejs-border-style: solid;
  --wsf-field-file-dropzonejs-border-width: 1px;
  --wsf-field-file-dropzonejs-border-radius: var(--radius);
  --wsf-field-file-dropzonejs-padding-inline: var(--wsf-form-grid-gap);
  --wsf-field-file-dropzonejs-padding-block: var(--wsf-form-grid-gap);
  --wsf-field-file-dropzonejs-progress-radius: var(--radius);
  --wsf-field-file-dropzonejs-progress-gap: 5px;
  --wsf-field-file-dropzonejs-progress-height: 10px;
  --wsf-field-range-track-border-radius: 50px;
  --wsf-field-range-tickmark-label-font-size: var(--text-s);
  --wsf-field-range-tickmark-label-font-style: normal;
  --wsf-field-range-tickmark-label-font-weight: 400;
  --wsf-field-range-tickmark-label-letter-spacing: var(--text-letter-spacing);
  --wsf-field-range-tickmark-label-line-height: var(--text-line-height);
  --wsf-field-range-tickmark-label-text-decoration: none;
  --wsf-field-range-tickmark-label-text-transform: none;
  --wsf-field-select-arrow-width: 12px;
  --wsf-field-select-arrow-height: 6px;
  --wsf-field-texteditor-font-size: var(--text-s);
  --wsf-field-texteditor-font-style: normal;
  --wsf-field-texteditor-font-weight: 400;
  --wsf-field-texteditor-letter-spacing: var(--text-letter-spacing);
  --wsf-field-texteditor-line-height: var(--text-line-height);
  --wsf-field-texteditor-text-decoration: none;
  --wsf-field-texteditor-text-transform: none;
  --wsf-field-texteditor-p-margin-bottom: 1em;
  --wsf-form-color-background: transparent;
  --wsf-form-color-base: var(--text-dark);
  --wsf-form-color-base-contrast: var(--text-light);
  --wsf-form-color-accent: var(--primary);
  --wsf-form-color-neutral: var(--neutral-light);
  --wsf-form-color-primary: var(--primary);
  --wsf-form-color-secondary: var(--secondary);
  --wsf-form-color-success: var(--success, #2e8540);
  --wsf-form-color-danger: var(--danger, #bb0000);
  --wsf-form-color-warning: var(--warning, #fdb81e);
  --wsf-form-color-info: var(--info, #02bfe7);
  --wsf-form-border-color: transparent;
  --wsf-group-li-color-background: transparent;
  --wsf-group-li-color-background-active: var(--text-light);
  --wsf-group-li-color-background-focus: var(--text-light);
  --wsf-group-li-color-background-disabled: color-mix(in oklch, var(--neutral) 60%, transparent);
  --wsf-group-li-border-color: var(--primary-light);
  --wsf-group-li-border-color-active: var(--primary);
  --wsf-group-li-border-color-focus: var(--primary);
  --wsf-group-li-border-color-disabled: color-mix(in oklch, var(--neutral) 60%, transparent);
  --wsf-group-ul-border-color: var(--neutral);
  --wsf-group-li-color: var(--f-form-color-base);
  --wsf-group-li-color-active: var(--f-form-color-base);
  --wsf-group-li-color-focus: var(--f-form-color-base);
  --wsf-group-li-color-disabled: color-mix(in oklch, var(--neutral) 60%, transparent);
  --wsf-group-li-steps-color-background: var(--white);
  --wsf-group-li-steps-color-background-active: var(--primary-light);
  --wsf-group-li-steps-color-background-complete: var(--primary);
  --wsf-group-li-steps-border-color: var(--primary-light);
  --wsf-group-li-steps-border-color-active: var(--primary);
  --wsf-group-li-steps-border-color-complete: var(--primary);
  --wsf-group-li-steps-color: var(--f-form-color-base);
  --wsf-group-li-steps-color-active: var(--f-form-color-base);
  --wsf-group-li-steps-color-complete: var(--text-light);
  --wsf-section-color-background: transparent;
  --wsf-section-legend-color-background: transparent;
  --wsf-section-legend-color: var(--f-form-color-base);
  --wsf-field-fieldset-legend-color-background: transparent;
  --wsf-field-fieldset-legend-color: var(--f-form-color-base);
  --wsf-field-label-color: var(--neutral-dark);
  --wsf-field-label-color-background: ;
  --wsf-field-help-color: var(--f-form-color-base);
  --wsf-field-help-color-background: transparent;
  --wsf-field-color-background: var(--f-form-color-base-contrast);
  --wsf-field-color-background-hover: var(--f-field-color-background);
  --wsf-field-color-background-focus: var(--f-field-color-background);
  --wsf-field-color-background-disabled: color-mix(in oklch, var(--neutral) 80%, transparent);
  --wsf-field-color-background-invalid: var(--f-field-color-background);
  --wsf-field-border-color: var(--border-color-dark);
  --wsf-field-border-color-hover: var(--border-color-dark);
  --wsf-field-border-color-focus: var(--primary);
  --wsf-field-border-color-disabled: color-mix(in oklch, var(--neutral) 60%, transparent);
  --wsf-field-border-color-invalid: var(--danger);
  --wsf-field-box-shadow-color-focus: var(--primary);
  --wsf-field-color: var(--f-form-color-base);
  --wsf-field-color-hover: var(--f-field-color);
  --wsf-field-color-focus: var(--f-field-color);
  --wsf-field-color-disabled: color-mix(in oklch, var(--neutral) 80%, transparent);
  --wsf-field-color-invalid: var(--danger);
  --wsf-field-color-placeholder: var(--neutral-light);
  --wsf-field-invalid-feedback-color: var(--danger);
  --wsf-field-invalid-feedback-color-background: transparent;
  --wsf-field-prefix-suffix-color: var(--f-form-color-base);
  --wsf-field-prefix-suffix-color-background: var(--neutral-semi-light);
  --wsf-field-checkbox-color-background: var(--white);
  --wsf-field-checkbox-checked-color-background: var(--primary);
  --wsf-field-checkbox-checkmark-color: var(--white);
  --wsf-field-checkbox-button-color-background: var(--neutral-light);
  --wsf-field-checkbox-button-color: var(--neutral);
  --wsf-field-checkbox-checked-button-color-background: var(--primary);
  --wsf-field-checkbox-checked-button-color: var(--white);
  --wsf-field-checkbox-switch-color: var(--neutral-light);
  --wsf-field-checkbox-checked-switch-color-background: var(--primary);
  --wsf-field-checkbox-checked-switch-color: var(--white);
  --wsf-field-radio-color-background: var(--white);
  --wsf-field-radio-checked-color: var(--primary);
  --wsf-field-radio-button-color-background: var(--neutral-light);
  --wsf-field-radio-button-color: var(--neutral);
  --wsf-field-radio-checked-button-color-background: var(--primary);
  --wsf-field-radio-checked-button-color: var(--white);
  --wsf-field-radio-switch-color: var(--neutral-light);
  --wsf-field-radio-checked-switch-color-background: var(--primary);
  --wsf-field-radio-checked-switch-color: var(--white);
  --wsf-field-select-arrow-color: var(--neutral);
  --wsf-field-select-select2-choice-color-background: var(--neutral-light);
  --wsf-field-select-select2-choice-color: var(--neutral);
  --wsf-field-select-select2-choice-color-remove: var(--neutral);
  --wsf-field-select-select2-result-color-background: var(--neutral-light);
  --wsf-field-select-select2-result-color-background-selected: var(--primary);
  --wsf-field-select-select2-result-color-background-highlighted: var(--primary);
  --wsf-field-select-select2-result-color: var(--neutral);
  --wsf-field-select-select2-result-color-selected: var(--white);
  --wsf-field-select-select2-result-color-highlighted: var(--white);
  --wsf-field-progress-color-background: var(--neutral-ultra-light);
  --wsf-field-progress-color-background-bar: var(--primary-light);
  --wsf-field-progress-color-background-complete: var(--primary);
  --wsf-field-range-track-color: var(--neutral-ultra-light);
  --wsf-field-range-track-lower-color: var(--neutral-light);
  --wsf-field-range-track-upper-color: var(--neutral-ultra-light);
  --wsf-field-range-thumb-color: var(--primary);
  --wsf-field-range-tickmark-color: var(--neutral);
  --wsf-field-range-tickmark-label-color: var(--neutral);
}
form.wsf-form.form--light, .form--light .wsf-form {
  color-scheme: light;
}
form.wsf-form.form--dark, .form--dark .wsf-form {
  color-scheme: dark;
}
.wsf-form button.wsf-button.wsf-button-primary[type="submit"] {
  background: var(--btn-background);
  color: var(--btn-text-color);
  padding-block: var(--btn-padding-block);
  padding-inline: var(--btn-padding-inline);
  inline-size: var(--btn-width, auto);
  min-inline-size: var(--btn-min-width);
  line-height: var(--btn-line-height);
  font-family: var(--btn-font-family);
  font-size: var(--btn-font-size, var(--text-m));
  font-weight: var(--btn-font-weight);
  font-style: var(--btn-font-style);
  text-transform: var(--btn-text-transform);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: var(--btn-text-decoration);
  border-width: var(--btn-border-width);
  border-style: var(--btn-border-style);
  border-radius: var(--btn-border-radius);
  border-color: var(--btn-border-color);
  transition: var(--btn-transition, var(--transition));
  justify-content: var(--btn-justify-content, center);
  align-items: var(--btn-align-items, center);
  text-align: var(--btn-text-align, center);
  display: var(--btn-display, inline-flex);
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary-ultra-light);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
@media (hover: hover) and (pointer: fine) {
  .wsf-form button.wsf-button.wsf-button-primary[type="submit"]:hover {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
}
.wsf-form button.wsf-button.wsf-button-primary[type="submit"]:where(:focus-visible) {
  outline-style: solid;
  outline-color: var(--focus-color);
  outline-width: var(--focus-width);
  outline-offset: var(--focus-offset);
}
.wsf-form button.wsf-button.wsf-button-primary[type="submit"].wsf-button-full {
  inline-size: 100%;
}
.wsf-form button.wsf-button[data-action="wsf-tab_next"] {
  background: var(--btn-background);
  color: var(--btn-text-color);
  padding-block: var(--btn-padding-block);
  padding-inline: var(--btn-padding-inline);
  inline-size: var(--btn-width, auto);
  min-inline-size: var(--btn-min-width);
  line-height: var(--btn-line-height);
  font-family: var(--btn-font-family);
  font-size: var(--btn-font-size, var(--text-m));
  font-weight: var(--btn-font-weight);
  font-style: var(--btn-font-style);
  text-transform: var(--btn-text-transform);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: var(--btn-text-decoration);
  border-width: var(--btn-border-width);
  border-style: var(--btn-border-style);
  border-radius: var(--btn-border-radius);
  border-color: var(--btn-border-color);
  transition: var(--btn-transition, var(--transition));
  justify-content: var(--btn-justify-content, center);
  align-items: var(--btn-align-items, center);
  text-align: var(--btn-text-align, center);
  display: var(--btn-display, inline-flex);
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary-ultra-light);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
@media (hover: hover) and (pointer: fine) {
  .wsf-form button.wsf-button[data-action="wsf-tab_next"]:hover {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
}
.wsf-form button.wsf-button[data-action="wsf-tab_next"]:where(:focus-visible) {
  outline-style: solid;
  outline-color: var(--focus-color);
  outline-width: var(--focus-width);
  outline-offset: var(--focus-offset);
}
.wsf-form button.wsf-button[data-action="wsf-tab_previous"] {
  background: var(--btn-background);
  color: var(--btn-text-color);
  padding-block: var(--btn-padding-block);
  padding-inline: var(--btn-padding-inline);
  inline-size: var(--btn-width, auto);
  min-inline-size: var(--btn-min-width);
  line-height: var(--btn-line-height);
  font-family: var(--btn-font-family);
  font-size: var(--btn-font-size, var(--text-m));
  font-weight: var(--btn-font-weight);
  font-style: var(--btn-font-style);
  text-transform: var(--btn-text-transform);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: var(--btn-text-decoration);
  border-width: var(--btn-border-width);
  border-style: var(--btn-border-style);
  border-radius: var(--btn-border-radius);
  border-color: var(--btn-border-color);
  transition: var(--btn-transition, var(--transition));
  justify-content: var(--btn-justify-content, center);
  align-items: var(--btn-align-items, center);
  text-align: var(--btn-text-align, center);
  display: var(--btn-display, inline-flex);
  --btn-background: transparent;
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
@media (hover: hover) and (pointer: fine) {
  .wsf-form button.wsf-button[data-action="wsf-tab_previous"]:hover {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
}
.wsf-form button.wsf-button[data-action="wsf-tab_previous"]:where(:focus-visible) {
  outline-style: solid;
  outline-color: var(--focus-color);
  outline-width: var(--focus-width);
  outline-offset: var(--focus-offset);
}
.wsf-form button.wsf-button[data-action="wsf-save"] {
  background: var(--btn-background);
  color: var(--btn-text-color);
  padding-block: var(--btn-padding-block);
  padding-inline: var(--btn-padding-inline);
  inline-size: var(--btn-width, auto);
  min-inline-size: var(--btn-min-width);
  line-height: var(--btn-line-height);
  font-family: var(--btn-font-family);
  font-size: var(--btn-font-size, var(--text-m));
  font-weight: var(--btn-font-weight);
  font-style: var(--btn-font-style);
  text-transform: var(--btn-text-transform);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: var(--btn-text-decoration);
  border-width: var(--btn-border-width);
  border-style: var(--btn-border-style);
  border-radius: var(--btn-border-radius);
  border-color: var(--btn-border-color);
  transition: var(--btn-transition, var(--transition));
  justify-content: var(--btn-justify-content, center);
  align-items: var(--btn-align-items, center);
  text-align: var(--btn-text-align, center);
  display: var(--btn-display, inline-flex);
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary-ultra-light);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
@media (hover: hover) and (pointer: fine) {
  .wsf-form button.wsf-button[data-action="wsf-save"]:hover {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
}
.wsf-form button.wsf-button[data-action="wsf-save"]:where(:focus-visible) {
  outline-style: solid;
  outline-color: var(--focus-color);
  outline-width: var(--focus-width);
  outline-offset: var(--focus-offset);
}
.wsf-form button.wsf-button[data-action="wsf-reset"] {
  background: var(--btn-background);
  color: var(--btn-text-color);
  padding-block: var(--btn-padding-block);
  padding-inline: var(--btn-padding-inline);
  inline-size: var(--btn-width, auto);
  min-inline-size: var(--btn-min-width);
  line-height: var(--btn-line-height);
  font-family: var(--btn-font-family);
  font-size: var(--btn-font-size, var(--text-m));
  font-weight: var(--btn-font-weight);
  font-style: var(--btn-font-style);
  text-transform: var(--btn-text-transform);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: var(--btn-text-decoration);
  border-width: var(--btn-border-width);
  border-style: var(--btn-border-style);
  border-radius: var(--btn-border-radius);
  border-color: var(--btn-border-color);
  transition: var(--btn-transition, var(--transition));
  justify-content: var(--btn-justify-content, center);
  align-items: var(--btn-align-items, center);
  text-align: var(--btn-text-align, center);
  display: var(--btn-display, inline-flex);
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary-ultra-light);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
@media (hover: hover) and (pointer: fine) {
  .wsf-form button.wsf-button[data-action="wsf-reset"]:hover {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
}
.wsf-form button.wsf-button[data-action="wsf-reset"]:where(:focus-visible) {
  outline-style: solid;
  outline-color: var(--focus-color);
  outline-width: var(--focus-width);
  outline-offset: var(--focus-offset);
}
.wsf-form button.wsf-button[data-action="wsf-clear"] {
  background: var(--btn-background);
  color: var(--btn-text-color);
  padding-block: var(--btn-padding-block);
  padding-inline: var(--btn-padding-inline);
  inline-size: var(--btn-width, auto);
  min-inline-size: var(--btn-min-width);
  line-height: var(--btn-line-height);
  font-family: var(--btn-font-family);
  font-size: var(--btn-font-size, var(--text-m));
  font-weight: var(--btn-font-weight);
  font-style: var(--btn-font-style);
  text-transform: var(--btn-text-transform);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: var(--btn-text-decoration);
  border-width: var(--btn-border-width);
  border-style: var(--btn-border-style);
  border-radius: var(--btn-border-radius);
  border-color: var(--btn-border-color);
  transition: var(--btn-transition, var(--transition));
  justify-content: var(--btn-justify-content, center);
  align-items: var(--btn-align-items, center);
  text-align: var(--btn-text-align, center);
  display: var(--btn-display, inline-flex);
  --btn-background: transparent;
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-width: 1.5px;
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
@media (hover: hover) and (pointer: fine) {
  .wsf-form button.wsf-button[data-action="wsf-clear"]:hover {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
}
.wsf-form button.wsf-button[data-action="wsf-clear"]:where(:focus-visible) {
  outline-style: solid;
  outline-color: var(--focus-color);
  outline-width: var(--focus-width);
  outline-offset: var(--focus-offset);
}
@media (hover: hover) and (pointer: fine) {
  .wsf-form button.wsf-button.wsf-button-primary[type="submit"]:hover:enabled:not(:checked):not(:focus) {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
  .wsf-form button.wsf-button[data-action="wsf-tab_next"]:hover:enabled:not(:checked):not(:focus) {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
  .wsf-form button.wsf-button[data-action="wsf-tab_previous"]:hover:enabled:not(:checked):not(:focus) {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
  .wsf-form button.wsf-button[data-action="wsf-save"]:hover:enabled:not(:checked):not(:focus) {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
  .wsf-form button.wsf-button[data-action="wsf-reset"]:hover:enabled:not(:checked):not(:focus) {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
  .wsf-form button.wsf-button[data-action="wsf-clear"]:hover:enabled:not(:checked):not(:focus) {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
}
/* Feat: Is Background */
:has(> .is-bg) {
  position: relative;
  isolation: isolate;
}
:is(*, img, figure, picture).is-bg {
  position: var(--bg-position, absolute) !important;
  inset: var(--bg-inset, 0);
  inline-size: var(--bg-width, 100%);
  max-inline-size: 100%;
  block-size: var(--bg-height, 100%);
  border-radius: var(--bg-radius, 0);
  object-fit: var(--bg-object-fit, cover);
  object-position: var(--bg-object-position, center);
  z-index: var(--bg-z-index, -2);
  border-radius: var(--bg-radius, 0);
  pointer-events: none;
}
:is(*, img, figure, picture).is-bg > img {
  object-fit: var(--bg-object-fit, cover);
  object-position: var(--bg-object-position, center);
  inline-size: 100%;
  block-size: 100%;
  border-radius: var(--bg-radius, 0);
}
.content-grid > :is(*, img, figure, picture).is-bg {
  grid-column: full;
}
/* Feat: Content Grid */
:where(.content-grid) {
  --full: minmax(var(--gutter), 1fr);
  padding-inline: 0;
  column-gap: 0 !important;
  display: grid !important;
  grid-template-columns: [full-start] var(--full) [feature-max-start] minmax(0, var(--feature-max-width, 100px)) [feature-start] minmax(0, var(--feature-width, 50px)) [content-start] min(var(--content-width), 100% - var(--gutter) * 2) [content-end] minmax(0, var(--feature-width, 50px)) [feature-end] minmax(0, var(--feature-max-width, 100px)) [feature-max-end] var(--full) [full-end];
}
:where(.content-grid) > :not(.content--feature, .content--feature-max, .content--full, .content--full-safe) {
  width: 100%;
  max-width: 100%;
}
:where(.content-grid) > :where(:not(.content--feature, .content--feature-max, .content--full, .content--full-safe)) {
  grid-column: content;
}
.content--feature {
  grid-column: feature;
}
.content--feature-max {
  grid-column: feature-max;
}
.content--full {
  grid-column: full;
}
.content--full-safe {
  grid-column: full;
  padding-inline: var(--gutter);
}
.content-grid:where(.content--full-safe) {
  padding-inline: var(--gutter);
}
:is(.content--feature, .content--feature-max, .content--full, .content--full-safe):not(.content-grid--off :is(.content--feature, .content--feature-max, .content--full, .content--full-safe)) {
  width: 100% !important;
  max-width: 100%;
}
:is(.content--feature, .content--feature-max, .content--full, .content--full-safe) :is(figure img, picture img) {
  width: 100%;
}
.content-grid:is([class*="padding--"], [class*="section--"], [class*="header--"]) {
  padding-inline: 0;
}
/* Feat: Smart Spacing */
body :where(p, h1, h2, h3, h4, h5, h6, ul, ol, li) {
  margin-block: 0;
}
.smart-spacing-normalize :where(p, h1, h2, h3, h4, h5, h6, ul, ol, li) {
  margin-block: 0;
}
.smart-spacing {
  row-gap: 0 !important;
}
.smart-spacing > * + * {
  margin-block-start: var(--flow-spacing, initial);
  margin-block-end: 0;
}
.smart-spacing > * + :where(h1, h2, h3, h4, h5, h6) {
  margin-block-start: var(--heading-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
.smart-spacing > :where(* + h2) {
  margin-block-start: var(--h2-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
.smart-spacing > :where(* + h3) {
  margin-block-start: var(--h3-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
.smart-spacing > :where(* + h4) {
  margin-block-start: var(--h4-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
.smart-spacing > :where(* + h5) {
  margin-block-start: var(--h5-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
.smart-spacing > :where(* + h6) {
  margin-block-start: var(--h6-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
.smart-spacing > * + p {
  margin-block-start: var(--paragraph-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
.smart-spacing > :is(* + ul, * + ol) {
  margin-block: var(--list-spacing, var(--flow-spacing, initial));
}
.smart-spacing > :is(ul, ol) {
  padding-inline-start: var(--list-indent-spacing, var(--flow-spacing, initial));
}
.smart-spacing > ul * + li, .smart-spacing > ol * + li {
  margin-block-start: var(--list-item-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
.smart-spacing > ul ul, .smart-spacing > ol ol, .smart-spacing > ul ol, .smart-spacing > ol ul {
  margin-block: var(--nested-list-spacing, var(--list-item-spacing, initial));
  padding-inline-start: var(--nested-list-indent-spacing, initial);
}
.smart-spacing > :is(ul, ol) :is(ul, ol) li {
  margin-block-start: var(--nested-list-item-spacing, var(--list-item-spacing, initial));
}
.smart-spacing > * + figure, .smart-spacing > * + picture {
  margin-block: var(--figure-spacing, var(--flow-spacing, initial));
}
.smart-spacing figcaption {
  margin-block: var(--figcaption-spacing, var(--flow-spacing, initial));
}
.smart-spacing > * + blockquote:where(:not(figure > blockquote)) {
  margin-block: var(--blockquote-spacing, var(--flow-spacing, initial));
}
.smart-spacing > blockquote * + * {
  margin-block-start: var(--paragraph-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
.smart-spacing > :is(figure, blockquote, ul, ol):where(:not(:first-child)) + * {
  --paragraph-spacing: 0;
  --flow-spacing: 0;
}
.smart-spacing--off :where(p, h1, h2, h3, h4, h5, h6, ul, ol, li) {
  margin-block: 0;
}
/* Feat: Default Section Styles */
#shadow-host-companion {
  padding: 0;
}
