/* File: automatic.css - Version: 4.0.0-rc-1 - Generated: 2026-03-13 17:49:48 */
/* Feat: Text, Headings, & Spacing */
:root {
  --root-font-size: 100%;
}
/* Feat: Palette */
:root {
  --primary: oklch(0.4957019798 0.1030487405 71);
  --primary-hover: oklch(0.57 0.103 71);
  --primary-ultra-light: oklch(0.963633 0.034 71.0164933396);
  --primary-light: oklch(0.889165 0.103 71);
  --primary-semi-light: oklch(0.65 0.103 71);
  --primary-semi-dark: oklch(0.488873 0.103 71);
  --primary-dark: oklch(0.387391 0.096 70.9952187052);
  --primary-ultra-dark: oklch(0.221562 0.055 70.9733696325);
  --base: oklch(0.5284823191 0.1617594796 272.3021575026);
  --base-hover: oklch(0.608 0.162 272.3021575026);
  --base-ultra-light: oklch(0.971745 0.015 272.3021575026);
  --base-light: oklch(0.917184 0.044 272.3021575026);
  --base-semi-light: oklch(0.814885 0.101 272.301816399);
  --base-semi-dark: oklch(0.576632 0.162 272.3021575026);
  --base-dark: oklch(0.454766 0.162 272.3021575026);
  --base-ultra-dark: oklch(0.252085 0.162 272.3021575026);
  --neutral: oklch(0 0 0);
  --neutral-hover: oklch(0 0 0);
  --neutral-ultra-light: oklch(0.961151 0 89.875563);
  --neutral-light: oklch(0.885305 0 89.875563);
  --neutral-semi-light: oklch(0.725157 0 89.875563);
  --neutral-semi-dark: oklch(0.464002 0 89.875563);
  --neutral-dark: oklch(0.371495 0 89.875563);
  --neutral-ultra-dark: oklch(0.217787 0 89.875562);
  --white: #fff;
  --black: #000;
  --danger: oklch(0.592 0.202 21);
  --danger-hover: oklch(0.747 0.196 21);
  --danger-ultra-light: oklch(0.948909 0.033 21.0060591089);
  --danger-light: oklch(0.851101 0.105 21);
  --danger-semi-light: oklch(0.669204 0.202 21);
  --danger-semi-dark: oklch(0.443308 0.201 21.0068466126);
  --danger-dark: oklch(0.25139 0.114 21.0253285704);
  --danger-ultra-dark: oklch(0.199475 0.09 21);
  --warning: oklch(0.844 0.172 85);
  --warning-hover: oklch(0.748 0.154 85);
  --warning-ultra-light: oklch(0.981709 0.024 85);
  --warning-light: oklch(0.944838 0.072 85);
  --warning-semi-light: oklch(0.879895 0.154 85);
  --warning-semi-dark: oklch(0.646157 0.153 85);
  --warning-dark: oklch(0.357027 0.084 84.9973873541);
  --warning-ultra-dark: oklch(0.276081 0.065 85);
  --info: oklch(0.655 0.11 212);
  --info-hover: oklch(0.747 0.11 212);
  --info-ultra-light: oklch(0.970459 0.027 212);
  --info-light: oklch(0.916431 0.077 211.9826362395);
  --info-semi-light: oklch(0.821061 0.11 212);
  --info-semi-dark: oklch(0.588649 0.11 212);
  --info-dark: oklch(0.32841 0.076 212.0035500626);
  --info-ultra-dark: oklch(0.255557 0.059 212.0166759125);
  --success: oklch(0.64 0.175 147);
  --success-hover: oklch(0.747 0.175 147);
  --success-ultra-light: oklch(0.969975 0.056 146.99967026);
  --success-light: oklch(0.912618 0.175 147);
  --success-semi-light: oklch(0.808751 0.175 147);
  --success-semi-dark: oklch(0.574525 0.175 147);
  --success-dark: oklch(0.322249 0.134 146.9911308076);
  --success-ultra-dark: oklch(0.25053 0.104 146.9899216499);
}
/* Feat: Default Section Styles */
:root {
  --content-width: 85.375rem;
  --content-width-safe: min(var(--content-width), calc(100% - var(--gutter) * 2));
}
/* Feat: Focus Styles */
:root {
  --focus-color: var(--primary);
  --focus-width: 0.25rem;
  --focus-offset: 0.15em;
}
/* Feat: Text Defaults */
:root {
  --text-xxl-line-height: 1.5;
  --text-xxl-max-width: 20ch;
  --text-xl-line-height: 1.5;
  --text-l-line-height: 1.5;
  --text-m-line-height: calc(6px + 2ex);
  --text-m-max-width: 100%;
  --text-s-line-height: 1.5;
  --text-xs-line-height: 1.5;
  --base-text-lh: calc(6px + 2ex);
  --text-font-family: Fira Sans;
  --text-color: var(--black);
  --text-line-height: calc(6px + 2ex);
  --text-max-width: 90ch;
  --text-text-wrap: pretty;
}
/* Feat: Heading Defaults */
:root {
  --heading-font-family: Fira Sans;
  --heading-line-height: calc(4px + 2ex);
  --heading-font-weight: 700;
  --heading-max-width: 100%;
  --heading-text-wrap: pretty;
  --base-heading-lh: calc(4px + 2ex);
  --h1-line-height: 1.2;
  --h1-max-width: 100%;
  --h2-line-height: 1.2;
  --h2-max-width: 45ch;
  --h3-line-height: 1.2;
  --h3-max-width: 45ch;
  --h4-line-height: calc(4px + 2ex);
  --h4-max-width: 45ch;
  --h5-line-height: 1.2;
  --h5-max-width: 45ch;
  --h6-line-height: 1.2;
  --h6-max-width: 45ch;
}
/* Feat: Text Size Variables */
:root {
  --text-xs: clamp(0.6944444444rem, calc(-0.0975195539vw + 0.7163863441rem), 0.6331290249rem);
  --text-s: clamp(0.8333333333rem, calc(0.0169028341vw + 0.8295301957rem), 0.8439609902rem);
  --text-s-to-xs: clamp(0.6944444444rem, calc(0.2377996752vw + 0.6409395175rem), 0.8439609902rem);
  --text-m: clamp(1rem, calc(0.1988071571vw + 0.9552683897rem), 1.125rem);
  --text-m-to-s: clamp(0.8333333333rem, calc(0.4638833665vw + 0.7289595759rem), 1.125rem);
  --text-m-to-xs: clamp(0.6944444444rem, calc(0.6847802076vw + 0.5403688977rem), 1.125rem);
  --text-l: clamp(1.2rem, calc(0.4765407555vw + 1.09277833rem), 1.499625rem);
  --text-l-to-m: clamp(1rem, calc(0.7946322068vw + 0.8212077535rem), 1.499625rem);
  --text-l-to-s: clamp(0.8333333333rem, calc(1.0597084162vw + 0.5948989397rem), 1.499625rem);
  --text-l-to-xs: clamp(0.6944444444rem, calc(1.2806052573vw + 0.4063082615rem), 1.499625rem);
  --text-xl: clamp(1.44rem, calc(0.8890658052vw + 1.2399601938rem), 1.999000125rem);
  --text-xl-to-l: clamp(1.2rem, calc(1.2707755467vw + 0.914075502rem), 1.999000125rem);
  --text-xl-to-m: clamp(1rem, calc(1.588866998vw + 0.6425049254rem), 1.999000125rem);
  --text-xl-to-s: clamp(0.8333333333rem, calc(1.8539432074vw + 0.4161961117rem), 1.999000125rem);
  --text-xl-to-xs: clamp(0.6944444444rem, calc(2.0748400486vw + 0.2276054335rem), 1.999000125rem);
  --text-xxl: clamp(1.728rem, calc(1.489729092vw + 1.3928109543rem), 2.6646671666rem);
  --text-xxl-to-xl: clamp(1.44rem, calc(1.9477807819vw + 1.0017493241rem), 2.6646671666rem);
  --text-xxl-to-l: clamp(1.2rem, calc(2.3294905235vw + 0.6758646322rem), 2.6646671666rem);
  --text-xxl-to-m: clamp(1rem, calc(2.6475819748vw + 0.4042940557rem), 2.6646671666rem);
  --text-xxl-to-s: clamp(0.8333333333rem, calc(2.9126581842vw + 0.1779852419rem), 2.6646671666rem);
  --text-xxl-to-xs: clamp(0.6944444444rem, calc(3.1335550253vw + -0.0106054363rem), 2.6646671666rem);
}
/* Feat: Heading Size Variables */
:root {
  --h6: clamp(0.6944444444rem, calc(-0.0975195539vw + 0.7163863441rem), 0.6331290249rem);
  --h5: clamp(0.8333333333rem, calc(0.0169028341vw + 0.8295301957rem), 0.8439609902rem);
  --h5-to-h6: clamp(0.6944444444rem, calc(0.2377996752vw + 0.6409395175rem), 0.8439609902rem);
  --h4: clamp(1rem, calc(0.1988071571vw + 0.9552683897rem), 1.125rem);
  --h4-to-h5: clamp(0.8333333333rem, calc(0.4638833665vw + 0.7289595759rem), 1.125rem);
  --h4-to-h6: clamp(0.6944444444rem, calc(0.6847802076vw + 0.5403688977rem), 1.125rem);
  --h3: clamp(1.2rem, calc(0.4765407555vw + 1.09277833rem), 1.499625rem);
  --h3-to-h4: clamp(1rem, calc(0.7946322068vw + 0.8212077535rem), 1.499625rem);
  --h3-to-h5: clamp(0.8333333333rem, calc(1.0597084162vw + 0.5948989397rem), 1.499625rem);
  --h3-to-h6: clamp(0.6944444444rem, calc(1.2806052573vw + 0.4063082615rem), 1.499625rem);
  --h2: clamp(1.44rem, calc(0.8890658052vw + 1.2399601938rem), 1.999000125rem);
  --h2-to-h3: clamp(1.2rem, calc(1.2707755467vw + 0.914075502rem), 1.999000125rem);
  --h2-to-h4: clamp(1rem, calc(1.588866998vw + 0.6425049254rem), 1.999000125rem);
  --h2-to-h5: clamp(0.8333333333rem, calc(1.8539432074vw + 0.4161961117rem), 1.999000125rem);
  --h2-to-h6: clamp(0.6944444444rem, calc(2.0748400486vw + 0.2276054335rem), 1.999000125rem);
  --h1: clamp(1.728rem, calc(1.489729092vw + 1.3928109543rem), 2.6646671666rem);
  --h1-to-h2: clamp(1.44rem, calc(1.9477807819vw + 1.0017493241rem), 2.6646671666rem);
  --h1-to-h3: clamp(1.2rem, calc(2.3294905235vw + 0.6758646322rem), 2.6646671666rem);
  --h1-to-h4: clamp(1rem, calc(2.6475819748vw + 0.4042940557rem), 2.6646671666rem);
  --h1-to-h5: clamp(0.8333333333rem, calc(2.9126581842vw + 0.1779852419rem), 2.6646671666rem);
  --h1-to-h6: clamp(0.6944444444rem, calc(3.1335550253vw + -0.0106054363rem), 2.6646671666rem);
}
/* Feat: Default Section Styles */
:root {
  --section-padding-block: var(--section-space-m);
  --gutter: clamp(1rem, calc(6.3618290258vw + -0.4314115308rem), 5rem);
}
/* Feat: Space Variables */
:root {
  --space-xs: clamp(1.0416666667rem, calc(0.4141815772vw + 0.9484758118rem), 1.3020833333rem);
  --space-s: clamp(1.25rem, calc(0.4970178926vw + 1.1381709742rem), 1.5625rem);
  --space-s-to-xs: clamp(1.0416666667rem, calc(0.8283631544vw + 0.8552849569rem), 1.5625rem);
  --space-m: clamp(1.5rem, calc(0.5964214712vw + 1.365805169rem), 1.875rem);
  --space-m-to-s: clamp(1.25rem, calc(0.9940357853vw + 1.0263419483rem), 1.875rem);
  --space-m-to-xs: clamp(1.0416666667rem, calc(1.3253810471vw + 0.7434559311rem), 1.875rem);
  --space-l: clamp(1.8rem, calc(0.7157057654vw + 1.6389662028rem), 2.25rem);
  --space-l-to-m: clamp(1.5rem, calc(1.1928429423vw + 1.231610338rem), 2.25rem);
  --space-l-to-s: clamp(1.25rem, calc(1.5904572565vw + 0.8921471173rem), 2.25rem);
  --space-l-to-xs: clamp(1.0416666667rem, calc(1.9218025182vw + 0.6092611001rem), 2.25rem);
  --space-xl: clamp(2.16rem, calc(0.8588469185vw + 1.9667594433rem), 2.7rem);
  --space-xl-to-l: clamp(1.8rem, calc(1.4314115308vw + 1.4779324056rem), 2.7rem);
  --space-xl-to-m: clamp(1.5rem, calc(1.9085487078vw + 1.0705765408rem), 2.7rem);
  --space-xl-to-s: clamp(1.25rem, calc(2.3061630219vw + 0.7311133201rem), 2.7rem);
  --space-xl-to-xs: clamp(1.0416666667rem, calc(2.6375082836vw + 0.4482273028rem), 2.7rem);
  --space-xxl: clamp(2.592rem, calc(1.0306163022vw + 2.360111332rem), 3.24rem);
  --space-xxl-to-xl: clamp(2.16rem, calc(1.717693837vw + 1.7735188867rem), 3.24rem);
  --space-xxl-to-l: clamp(1.8rem, calc(2.2902584493vw + 1.2846918489rem), 3.24rem);
  --space-xxl-to-m: clamp(1.5rem, calc(2.7673956262vw + 0.8773359841rem), 3.24rem);
  --space-xxl-to-s: clamp(1.25rem, calc(3.1650099404vw + 0.5378727634rem), 3.24rem);
  --space-xxl-to-xs: clamp(1.0416666667rem, calc(3.4963552021vw + 0.2549867462rem), 3.24rem);
}
/* Feat: Section Space Variables */
:root {
  --section-space-xs: clamp(3.125rem, calc(3.3134526176vw + 2.379473161rem), 5.2083333333rem);
  --section-space-s: clamp(3.75rem, calc(3.9761431412vw + 2.8553677932rem), 6.25rem);
  --section-space-s-to-xs: clamp(3.125rem, calc(4.9701789264vw + 2.0067097416rem), 6.25rem);
  --section-space-m: clamp(4.5rem, calc(4.7713717694vw + 3.4264413519rem), 7.5rem);
  --section-space-m-to-s: clamp(3.75rem, calc(5.9642147117vw + 2.4080516899rem), 7.5rem);
  --section-space-m-to-xs: clamp(3.125rem, calc(6.958250497vw + 1.5593936382rem), 7.5rem);
  --section-space-l: clamp(5.4rem, calc(5.7256461233vw + 4.1117296223rem), 9rem);
  --section-space-l-to-m: clamp(4.5rem, calc(7.1570576541vw + 2.8896620278rem), 9rem);
  --section-space-l-to-s: clamp(3.75rem, calc(8.3499005964vw + 1.8712723658rem), 9rem);
  --section-space-l-to-xs: clamp(3.125rem, calc(9.3439363817vw + 1.0226143141rem), 9rem);
  --section-space-xl: clamp(6.48rem, calc(6.8707753479vw + 4.9340755467rem), 10.8rem);
  --section-space-xl-to-l: clamp(5.4rem, calc(8.5884691849vw + 3.4675944334rem), 10.8rem);
  --section-space-xl-to-m: clamp(4.5rem, calc(10.0198807157vw + 2.245526839rem), 10.8rem);
  --section-space-xl-to-s: clamp(3.75rem, calc(11.2127236581vw + 1.2271371769rem), 10.8rem);
  --section-space-xl-to-xs: clamp(3.125rem, calc(12.2067594433vw + 0.3784791252rem), 10.8rem);
  --section-space-xxl: clamp(7.776rem, calc(8.2449304175vw + 5.9208906561rem), 12.96rem);
  --section-space-xxl-to-xl: clamp(6.48rem, calc(10.3061630219vw + 4.1611133201rem), 12.96rem);
  --section-space-xxl-to-l: clamp(5.4rem, calc(12.0238568588vw + 2.6946322068rem), 12.96rem);
  --section-space-xxl-to-m: clamp(4.5rem, calc(13.4552683897vw + 1.4725646123rem), 12.96rem);
  --section-space-xxl-to-s: clamp(3.75rem, calc(14.648111332vw + 0.4541749503rem), 12.96rem);
  --section-space-xxl-to-xs: clamp(3.125rem, calc(15.6421471173vw + -0.3944831014rem), 12.96rem);
}
/* 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: Buttons */
:root {
  --option-primary-btn-outline: on;
  --option-secondary-btn-outline: on;
  --btn-padding-block: 0.5em;
  --btn-padding-inline: 1.5em;
  --btn-min-width: 12.5rem;
  --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: 0.25rem;
  --btn-border-style: solid;
  --btn-border-radius: 0.25em;
  --btn-radius: 0.25em;
  --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-hover);
  --link-transition: var(--transition);
  --link-decoration: none;
  --link-decoration-hover: inherit;
  --link-underline-offset: auto;
  --link-weight: 400;
}
/* Feat: Column Variables */
:root {
  --col-width-s: 13rem;
  --col-width-m: 25rem;
  --col-width-l: 38rem;
  --col-rule-width-s: 0.1em;
  --col-rule-width-m: 0.3em;
  --col-rule-width-l: 0.5em;
}
/* Feat: Sticky Variables */
:root {
  --sticky-offset-custom: 60px;
}
/* Contextual Color Variables */
:root {
  --body-bg-color: var(--white);
  --bg-ultra-light: var(--shade-ultra-light);
  --bg-light: var(--neutral-ultra-light);
  --bg-dark: var(--base);
  --bg-ultra-dark: var(--base-ultra-dark);
  --text-light: var(--shade-ultra-light);
  --text-light-muted: var(--neutral-light);
  --text-dark: var(--shade-ultra-dark);
  --text-dark-muted: var(--neutral-dark);
}
/* 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-link: var(--primary);
  --bg-ultra-light-link-hover: var(--primary-hover);
  --bg-light-link: var(--primary);
  --bg-light-link-hover: var(--primary-hover);
  --bg-dark-link: var(--primary);
  --bg-dark-link-hover: var(--primary-hover);
  --bg-ultra-dark-link: var(--primary);
  --bg-ultra-dark-link-hover: var(--primary-hover);
  --bg-ultra-light-button: primary;
  --bg-light-button: primary;
  --bg-dark-button: primary;
  --bg-ultra-dark-button: primary;
  --bg-ultra-light-icon: light;
  --bg-light-icon: light;
  --bg-dark-icon: dark;
  --bg-ultra-dark-icon: dark;
}
/* Feat: Radius Variables */
:root {
  --radius: 1rem;
  --radius-50: 50%;
  --radius-circle: 50vw;
  --radius-none: 0;
  --radius-xs: 0.4444444444rem;
  --radius-s: 0.6666666667rem;
  --radius-m: 1rem;
  --radius-l: 1.5rem;
  --radius-xl: 2.25rem;
  --radius-xxl: 3.375rem;
}
/* Feat: Border Variables */
:root {
  --border-size: 1px;
  --border-width: 1px;
  --border-style: solid;
  --border-color-dark: var(--black-trans-20);
  --border-color-light: var(--white-trans-20);
  --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: var(--black-trans-20);
  --divider-color-light: var(--white-trans-20);
  --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: Box Shadow Variables */
:root {
  --box-shadow-1: 0 4px 4px -10px rgba(0, 0, 0, 0.04), 0 13px 13px -10px rgba(0, 0, 0, 0.06), 0 40px 60px -10px rgba(0, 0, 0, 0.08);
  --box-shadow-2: 0 2.7px 3.6px -5px rgba(0, 0, 0, 0.04), 0 7.5px 10px -5px rgba(0, 0, 0, 0.06), 0 18px 24.1px -5px rgba(0, 0, 0, 0.08), 0 60px 80px -5px rgba(0, 0, 0, 0.1);
  --box-shadow-3: 2.8px 2.8px 2.2px rgba(0, 0, 0, 0.02), 0 6.7px 5.3px -5px rgba(0, 0, 0, 0.04), 0 12.5px 10px -5px rgba(0, 0, 0, 0.06), 0 22.3px 17.9px -5px rgba(0, 0, 0, 0.08), 0 41.8px 33.4px -5px rgba(0, 0, 0, 0.1), 0 80px 80px -5px rgba(0, 0, 0, 0.105);
}
/* 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 3px;
  --blockquote-border-style: solid;
  --blockquote-border-color: var(--primary);
  --blockquote-border-radius: var(--radius);
  --blockquote-background: var(--neutral-ultra-light);
  --blockquote-box-shadow: none;
  --blockquote-text-color: inherit;
  --blockquote-text-font-family: inherit;
  --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: normal;
}
.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: 100vh;
}
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);
  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, 90ch);
  width: 100%;
}
:where(p) {
  line-height: var(--text-line-height, calc(6px + 2ex));
}
/* Feat: Link Defaults */
body a:where(:not([class*= btn--])) {
  color: var(--link-color, var(--primary));
  font-weight: var(--link-weight, 400);
  -webkit-text-decoration: var(--link-decoration, none);
  text-decoration: var(--link-decoration, none);
  text-underline-offset: var(--link-underline-offset, auto);
  transition: var(--link-transition, var(--transition));
}
@media (hover: hover) and (pointer: fine) {
  body a:where(:not([class*= btn--])):hover {
    color: var(--link-color-hover, var(--primary-hover));
  }
}
/* 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);
  line-height: var(--heading-line-height);
  font-weight: var(--heading-font-weight);
  max-width: var(--heading-max-width);
  text-wrap: var(--heading-text-wrap);
}
h1 {
  font-size: var(--h1);
  line-height: var(--h1-line-height);
  max-width: var(--h1-max-width);
}
h2 {
  font-size: var(--h2);
  line-height: var(--h2-line-height);
  max-width: var(--h2-max-width);
}
h3 {
  font-size: var(--h3);
  line-height: var(--h3-line-height);
  max-width: var(--h3-max-width);
}
h4 {
  font-size: var(--h4);
  line-height: var(--h4-line-height);
  max-width: var(--h4-max-width);
}
h5 {
  font-size: var(--h5);
  line-height: var(--h5-line-height);
  max-width: var(--h5-max-width);
}
h6 {
  font-size: var(--h6);
  line-height: var(--h6-line-height);
  max-width: var(--h6-max-width);
}
/* 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(--primary);
  --btn-border-color-hover: var(--primary-hover);
  --focus-color: var(--primary-dark);
}
.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(--primary-dark);
  --btn-border-color-hover: var(--primary-ultra-dark);
  --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(--primary-ultra-light);
  --btn-border-color-hover: var(--primary-light);
  --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: 0.25rem;
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--primary-hover);
  --focus-color: var(--primary-dark);
}
.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: 0.25rem;
  --btn-border-color: var(--primary-dark);
  --btn-border-color-hover: var(--primary-dark);
  --focus-color: var(--primary-dark);
}
.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: 0.25rem;
  --btn-border-color: var(--primary-light);
  --btn-border-color-hover: var(--primary-light);
  --focus-color: var(--primary-dark);
}
.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(--base);
  --btn-border-color-hover: var(--base-hover);
  --focus-color: var(--base-dark);
}
[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;
}
/* 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;
}
.bricks-area .hidden-accessible {
  position: relative !important;
  inline-size: 2ch !important;
  block-size: 2ch !important;
  margin: 0;
  line-height: 1;
  visibility: hidden;
}
.bricks-area .hidden-accessible::before {
  content: "A";
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  position: absolute;
  background: #111;
  color: #f5f5f5;
  font-size: max(60%, 13px);
  padding: 0.5em;
  inset-block-start: 0;
  inset-inline-start: 0;
  inline-size: 20px;
  block-size: 20px;
  visibility: visible;
  border-radius: 50%;
}
@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(--primary);
  --btn-border-color-hover: var(--primary-hover);
  --focus-color: var(--primary-dark);
}
@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);
}
/* 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);
}
.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 :is(a):where(:not([class*= btn--], :is(h1, h2, h3, h4, h5, h6) a)) {
  color: var(--relative-link-color);
}
.bg--ultra-light :is(a):where(:not([class*= btn--], :is(h1, h2, h3, h4, h5, h6) a)):hover {
  color: var(--relative-link-color-hover);
}
.bg--light :is(a):where(:not([class*= btn--], :is(h1, h2, h3, h4, h5, h6) a)) {
  color: var(--relative-link-color);
}
.bg--light :is(a):where(:not([class*= btn--], :is(h1, h2, h3, h4, h5, h6) a)):hover {
  color: var(--relative-link-color-hover);
}
.bg--dark :is(a):where(:not([class*= btn--], :is(h1, h2, h3, h4, h5, h6) a)) {
  color: var(--relative-link-color);
}
.bg--dark :is(a):where(:not([class*= btn--], :is(h1, h2, h3, h4, h5, h6) a)):hover {
  color: var(--relative-link-color-hover);
}
.bg--ultra-dark :is(a):where(:not([class*= btn--], :is(h1, h2, h3, h4, h5, h6) a)) {
  color: var(--relative-link-color);
}
.bg--ultra-dark :is(a):where(:not([class*= btn--], :is(h1, h2, h3, h4, h5, h6) a)):hover {
  color: var(--relative-link-color-hover);
}
.bg--ultra-light {
  --relative-link-color: var(--bg-ultra-light-link);
  --relative-link-color-hover: var(--bg-ultra-light-link-hover);
}
.bg--light {
  --relative-link-color: var(--bg-light-link);
  --relative-link-color-hover: var(--bg-light-link-hover);
}
.bg--dark {
  --relative-link-color: var(--bg-dark-link);
  --relative-link-color-hover: var(--bg-dark-link-hover);
}
.bg--ultra-dark {
  --relative-link-color: var(--bg-ultra-dark-link);
  --relative-link-color-hover: var(--bg-ultra-dark-link-hover);
}
.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(--primary);
  --btn-border-color-hover: var(--primary-hover);
  --focus-color: var(--primary-dark);
}
.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: 0.25rem;
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--primary-hover);
  --focus-color: var(--primary-dark);
}
.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(--primary);
  --btn-border-color-hover: var(--primary-hover);
  --focus-color: var(--primary-dark);
}
.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: 0.25rem;
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--primary-hover);
  --focus-color: var(--primary-dark);
}
.bg--dark [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(--primary);
  --btn-border-color-hover: var(--primary-hover);
  --focus-color: var(--primary-dark);
}
.bg--dark [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: 0.25rem;
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--primary-hover);
  --focus-color: var(--primary-dark);
}
.bg--ultra-dark [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(--primary);
  --btn-border-color-hover: var(--primary-hover);
  --focus-color: var(--primary-dark);
}
.bg--ultra-dark [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: 0.25rem;
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--primary-hover);
  --focus-color: var(--primary-dark);
}
.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--"]::after, .overlay::after {
  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);
  text-wrap: var(--text-text-wrap);
}
.text--xxl {
  font-size: var(--text-xxl);
  line-height: var(--text-xxl-line-height);
}
.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);
  line-height: var(--text-xl-line-height);
}
.text--l {
  font-size: var(--text-l);
  line-height: var(--text-l-line-height);
}
.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);
  line-height: var(--text-s-line-height);
}
.text--xs {
  font-size: var(--text-xs);
  line-height: var(--text-xs-line-height);
}
.h1 {
  font-size: var(--h1);
  line-height: var(--h1-line-height);
  max-width: var(--h1-max-width);
}
.h2 {
  font-size: var(--h2);
  line-height: var(--h2-line-height);
  max-width: var(--h2-max-width);
}
.h3 {
  font-size: var(--h3);
  line-height: var(--h3-line-height);
  max-width: var(--h3-max-width);
}
.h4 {
  font-size: var(--h4);
  line-height: var(--h4-line-height);
  max-width: var(--h4-max-width);
}
.h5 {
  font-size: var(--h5);
  line-height: var(--h5-line-height);
  max-width: var(--h5-max-width);
}
.h6 {
  font-size: var(--h6);
  line-height: var(--h6-line-height);
  max-width: var(--h6-max-width);
}
body blockquote {
  text-wrap: pretty;
}
/* 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);
}
: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);
}
@supports (animation-timeline: view()) {
  [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%);
  }
  [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;
  }
}
@supports (animation-timeline: view()) {
  [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%);
  }
  [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;
  }
}
[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;
  }
}
/* 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%;
}
.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: Default Section Styles */
#shadow-host-companion {
  padding: 0;
}
