@charset "UTF-8";
/* Feat: Text, Headings, & Spacing */
:root {
  --root-font-size: 100%;
}

/* Feat: Palette */
:root {
  --primary: oklch(78.3837542171% 0.1521249958 65.3229914094deg);
  --primary-hover: oklch(90.1% 0.087 65.3276554281deg);
  --primary-ultra-light: oklch(95% 0.043 65.3503011542deg);
  --primary-light: oklch(85% 0.137 65.3335480759deg);
  --primary-semi-light: oklch(65% 0.152 65.3229914094deg);
  --primary-semi-dark: oklch(35% 0.09 65.3229914094deg);
  --primary-dark: oklch(25% 0.064 65.3076058463deg);
  --primary-ultra-dark: oklch(10% 0.026 65.3229914094deg);
  --secondary: oklch(22.9342107484% 0.043844991 288.421809056deg);
  --secondary-hover: oklch(26.4% 0.044 288.421809056deg);
  --secondary-ultra-light: oklch(95% 0.028 288.421809056deg);
  --secondary-light: oklch(85% 0.044 288.421809056deg);
  --secondary-semi-light: oklch(65% 0.044 288.421809056deg);
  --secondary-semi-dark: oklch(35% 0.044 288.421809056deg);
  --secondary-dark: oklch(25% 0.044 288.421809056deg);
  --secondary-ultra-dark: oklch(10% 0.044 288.421809056deg);
  --accent: oklch(32.4374344572% 0.0229445839 264.1820391955deg);
  --accent-hover: oklch(37.3% 0.023 264.1820391955deg);
  --accent-ultra-light: oklch(95% 0.023 264.1820391955deg);
  --accent-light: oklch(85% 0.023 264.1820391955deg);
  --accent-semi-light: oklch(65% 0.023 264.1820391955deg);
  --accent-semi-dark: oklch(35% 0.023 264.1820391955deg);
  --accent-dark: oklch(25% 0.023 264.1820391955deg);
  --accent-ultra-dark: oklch(10% 0.023 264.1820391955deg);
  --base: oklch(26.5533041583% 0.0568911509 235.7069340017deg);
  --base-hover: oklch(30.5% 0.057 235.7069340017deg);
  --base-ultra-light: oklch(95% 0.03 235.6600021545deg);
  --base-light: oklch(85% 0.057 235.7069340017deg);
  --base-semi-light: oklch(65% 0.057 235.7069340017deg);
  --base-semi-dark: oklch(35% 0.057 235.7069340017deg);
  --base-dark: oklch(25% 0.057 235.7069340017deg);
  --base-ultra-dark: oklch(23% 0.05 235.7069340017deg);
  --neutral: oklch(30.9185633746% 0 0deg);
  --neutral-hover: oklch(35.6% 0 161.5650511771deg);
  --neutral-ultra-light: oklch(95% 0 198.4349488229deg);
  --neutral-light: oklch(85% 0 164.0546040991deg);
  --neutral-semi-light: oklch(65% 0 180deg);
  --neutral-semi-dark: oklch(35% 0 180deg);
  --neutral-dark: oklch(25% 0 180deg);
  --neutral-ultra-dark: oklch(10% 0 180deg);
  --white: #fff;
  --black: #000;
  --danger: oklch(59.154957728% 0.2020259687 21.2387568442deg);
  --danger-hover: oklch(68% 0.202 21.2387568442deg);
  --danger-ultra-light: oklch(95% 0.032 21.2415626108deg);
  --danger-light: oklch(85% 0.106 21.2392884723deg);
  --danger-semi-light: oklch(65% 0.202 21.2387568442deg);
  --danger-semi-dark: oklch(35% 0.159 21.2387568442deg);
  --danger-dark: oklch(25% 0.113 21.2387568442deg);
  --danger-ultra-dark: oklch(10% 0.045 21.2387568442deg);
  --warning: oklch(84.4210194625% 0.1718102878 84.8740162881deg);
  --warning-hover: oklch(97.1% 0.038 84.8740162881deg);
  --warning-ultra-light: oklch(95% 0.065 84.8740162881deg);
  --warning-light: oklch(85% 0.172 84.8740162881deg);
  --warning-semi-light: oklch(65% 0.154 84.8723701358deg);
  --warning-semi-dark: oklch(35% 0.083 84.8740162881deg);
  --warning-dark: oklch(25% 0.059 84.8408041832deg);
  --warning-ultra-dark: oklch(10% 0.024 84.8740162881deg);
  --info: oklch(54.7113008113% 0.2505830783 270.8849304682deg);
  --info-hover: oklch(62.9% 0.214 270.8848936747deg);
  --info-ultra-light: oklch(95% 0.026 270.8849304682deg);
  --info-light: oklch(85% 0.081 270.8849304682deg);
  --info-semi-light: oklch(65% 0.201 270.8846607739deg);
  --info-semi-dark: oklch(35% 0.229 270.8828150764deg);
  --info-dark: oklch(25% 0.163 270.8849304682deg);
  --info-ultra-dark: oklch(10% 0.065 270.8811558383deg);
  --success: oklch(64.033009469% 0.1747959425 146.6613028096deg);
  --success-hover: oklch(73.6% 0.175 146.6613028096deg);
  --success-ultra-light: oklch(95% 0.096 146.6613028096deg);
  --success-light: oklch(85% 0.175 146.6613028096deg);
  --success-semi-light: oklch(65% 0.175 146.6613028096deg);
  --success-semi-dark: oklch(35% 0.147 146.6574611602deg);
  --success-dark: oklch(25% 0.105 146.6613028096deg);
  --success-ultra-dark: oklch(10% 0.042 146.6613028096deg);
  --heading-color: var(--text-dark);
}

/* Feat: Default Section Styles */
:root {
  --content-width: 80rem;
  --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: nunito;
  --text-color: var(--text-light);
  --text-line-height: calc(6px + 2ex);
  --text-font-weight: 400;
  --text-text-wrap: pretty;
}

/* Feat: Heading Defaults */
:root {
  --heading-font-family: Nunito;
  --heading-color: var(--text-dark);
  --heading-line-height: calc(4px + 2ex);
  --heading-font-weight: 700;
  --heading-text-wrap: pretty;
  --base-heading-lh: calc(4px + 2ex);
  --h1-max-width: 100%;
  --h4-line-height: calc(4px + 2ex);
}

/* Feat: Text Size Variables */
:root {
  --text-xs: clamp(0.8125rem, 0.1086956522vw + 0.7880434783rem, 0.875rem);
  --text-s: clamp(0.875rem, 0.1086956522vw + 0.8505434783rem, 0.9375rem);
  --text-m: clamp(1rem, 0.2173913043vw + 0.9510869565rem, 1.125rem);
  --text-l: clamp(1.2rem, 0.5210869565vw + 1.0827554348rem, 1.499625rem);
  --text-xl: clamp(1.44rem, 0.9721741304vw + 1.2212608207rem, 1.999000125rem);
  --text-xxl: clamp(1.728rem, 1.6289863767vw + 1.3614780652rem, 2.6646671666rem);
  --text-s-to-xs: clamp(0.8125rem, 0.2173913043vw + 0.7635869565rem, 0.9375rem);
  --text-m-to-s: clamp(0.875rem, 0.4347826087vw + 0.777173913rem, 1.125rem);
  --text-m-to-xs: clamp(0.8125rem, 0.5434782609vw + 0.6902173913rem, 1.125rem);
  --text-l-to-m: clamp(1rem, 0.8689130435vw + 0.8044945652rem, 1.499625rem);
  --text-l-to-s: clamp(0.875rem, 1.0863043478vw + 0.6305815217rem, 1.499625rem);
  --text-l-to-xs: clamp(0.8125rem, 1.195vw + 0.543625rem, 1.499625rem);
  --text-xl-to-l: clamp(1.2rem, 1.3895654348vw + 0.8873477772rem, 1.999000125rem);
  --text-xl-to-m: clamp(1rem, 1.7373915217vw + 0.6090869076rem, 1.999000125rem);
  --text-xl-to-s: clamp(0.875rem, 1.9547828261vw + 0.4351738641rem, 1.999000125rem);
  --text-xl-to-xs: clamp(0.8125rem, 2.0634784783vw + 0.3482173424rem, 1.999000125rem);
  --text-xxl-to-xl: clamp(1.44rem, 2.129855942vw + 0.9607824131rem, 2.6646671666rem);
  --text-xxl-to-l: clamp(1.2rem, 2.5472472463vw + 0.6268693696rem, 2.6646671666rem);
  --text-xxl-to-m: clamp(1rem, 2.8950733333vw + 0.3486085rem, 2.6646671666rem);
  --text-xxl-to-s: clamp(0.875rem, 3.1124646376vw + 0.1746954565rem, 2.6646671666rem);
  --text-xxl-to-xs: clamp(0.8125rem, 3.2211602898vw + 0.0877389348rem, 2.6646671666rem);
}

/* Feat: Heading Size Variables */
:root {
  --h6: clamp(0.8125rem, 0.1086956522vw + 0.7880434783rem, 0.875rem);
  --h5: clamp(0.875rem, 0.1086956522vw + 0.8505434783rem, 0.9375rem);
  --h4: clamp(1rem, 0.2173913043vw + 0.9510869565rem, 1.125rem);
  --h3: clamp(1.2rem, 0.5210869565vw + 1.0827554348rem, 1.499625rem);
  --h2: clamp(1.44rem, 0.9721741304vw + 1.2212608207rem, 1.999000125rem);
  --h1: clamp(1.728rem, 1.6289863767vw + 1.3614780652rem, 2.6646671666rem);
  --h5-to-h6: clamp(0.8125rem, 0.2173913043vw + 0.7635869565rem, 0.9375rem);
  --h4-to-h5: clamp(0.875rem, 0.4347826087vw + 0.777173913rem, 1.125rem);
  --h4-to-h6: clamp(0.8125rem, 0.5434782609vw + 0.6902173913rem, 1.125rem);
  --h3-to-h4: clamp(1rem, 0.8689130435vw + 0.8044945652rem, 1.499625rem);
  --h3-to-h5: clamp(0.875rem, 1.0863043478vw + 0.6305815217rem, 1.499625rem);
  --h3-to-h6: clamp(0.8125rem, 1.195vw + 0.543625rem, 1.499625rem);
  --h2-to-h3: clamp(1.2rem, 1.3895654348vw + 0.8873477772rem, 1.999000125rem);
  --h2-to-h4: clamp(1rem, 1.7373915217vw + 0.6090869076rem, 1.999000125rem);
  --h2-to-h5: clamp(0.875rem, 1.9547828261vw + 0.4351738641rem, 1.999000125rem);
  --h2-to-h6: clamp(0.8125rem, 2.0634784783vw + 0.3482173424rem, 1.999000125rem);
  --h1-to-h2: clamp(1.44rem, 2.129855942vw + 0.9607824131rem, 2.6646671666rem);
  --h1-to-h3: clamp(1.2rem, 2.5472472463vw + 0.6268693696rem, 2.6646671666rem);
  --h1-to-h4: clamp(1rem, 2.8950733333vw + 0.3486085rem, 2.6646671666rem);
  --h1-to-h5: clamp(0.875rem, 3.1124646376vw + 0.1746954565rem, 2.6646671666rem);
  --h1-to-h6: clamp(0.8125rem, 3.2211602898vw + 0.0877389348rem, 2.6646671666rem);
}

/* Feat: Default Section Styles */
:root {
  --section-padding-block: var(--section-space-m);
  --gutter: clamp(1.25rem, 4.347826087vw + 0.2717391304rem, 3.75rem);
}

/* Feat: Space Variables */
:root {
  --space-xs: clamp(0.6666666667rem, 0.2898550725vw + 0.6014492754rem, 0.8333333333rem);
  --space-s: clamp(1rem, 0.4347826087vw + 0.902173913rem, 1.25rem);
  --space-s-to-xs: clamp(0.6666666667rem, 1.0144927536vw + 0.4384057971rem, 1.25rem);
  --space-m: clamp(1.5rem, 0.652173913vw + 1.3532608696rem, 1.875rem);
  --space-m-to-s: clamp(1rem, 1.5217391304vw + 0.6576086957rem, 1.875rem);
  --space-m-to-xs: clamp(0.6666666667rem, 2.1014492754vw + 0.1938405797rem, 1.875rem);
  --space-l: clamp(2.25rem, 0.9782608696vw + 2.0298913043rem, 2.8125rem);
  --space-l-to-m: clamp(1.5rem, 2.2826086957vw + 0.9864130435rem, 2.8125rem);
  --space-l-to-s: clamp(1rem, 3.152173913vw + 0.2907608696rem, 2.8125rem);
  --space-l-to-xs: clamp(0.6666666667rem, 3.731884058vw + -0.1730072464rem, 2.8125rem);
  --space-xl: clamp(3.375rem, 1.4673913043vw + 3.0448369565rem, 4.21875rem);
  --space-xl-to-l: clamp(2.25rem, 3.4239130435vw + 1.4796195652rem, 4.21875rem);
  --space-xl-to-m: clamp(1.5rem, 4.7282608696vw + 0.4361413043rem, 4.21875rem);
  --space-xl-to-s: clamp(1rem, 5.597826087vw + -0.2595108696rem, 4.21875rem);
  --space-xl-to-xs: clamp(0.6666666667rem, 6.1775362319vw + -0.7232789855rem, 4.21875rem);
  --space-xxl: clamp(5.0625rem, 2.2010869565vw + 4.5672554348rem, 6.328125rem);
  --space-xxl-to-xl: clamp(3.375rem, 5.1358695652vw + 2.2194293478rem, 6.328125rem);
  --space-xxl-to-l: clamp(2.25rem, 7.0923913043vw + 0.6542119565rem, 6.328125rem);
  --space-xxl-to-m: clamp(1.5rem, 8.3967391304vw + -0.3892663043rem, 6.328125rem);
  --space-xxl-to-s: clamp(1rem, 9.2663043478vw + -1.0849184783rem, 6.328125rem);
  --space-xxl-to-xs: clamp(0.6666666667rem, 9.8460144928vw + -1.5486865942rem, 6.328125rem);
}

/* Feat: Section Space Variables */
:root {
  --section-space-xs: clamp(1.3333333333rem, 2.0289855072vw + 0.8768115942rem, 2.5rem);
  --section-space-s: clamp(2rem, 3.0434782609vw + 1.3152173913rem, 3.75rem);
  --section-space-s-to-xs: clamp(1.3333333333rem, 4.2028985507vw + 0.3876811594rem, 3.75rem);
  --section-space-m: clamp(3rem, 4.5652173913vw + 1.972826087rem, 5.625rem);
  --section-space-m-to-s: clamp(2rem, 6.3043478261vw + 0.5815217391rem, 5.625rem);
  --section-space-m-to-xs: clamp(1.3333333333rem, 7.4637681159vw + -0.3460144928rem, 5.625rem);
  --section-space-l: clamp(4.5rem, 6.847826087vw + 2.9592391304rem, 8.4375rem);
  --section-space-l-to-m: clamp(3rem, 9.4565217391vw + 0.8722826087rem, 8.4375rem);
  --section-space-l-to-s: clamp(2rem, 11.1956521739vw + -0.5190217391rem, 8.4375rem);
  --section-space-l-to-xs: clamp(1.3333333333rem, 12.3550724638vw + -1.446557971rem, 8.4375rem);
  --section-space-xl: clamp(6.75rem, 10.2717391304vw + 4.4388586957rem, 12.65625rem);
  --section-space-xl-to-l: clamp(4.5rem, 14.1847826087vw + 1.308423913rem, 12.65625rem);
  --section-space-xl-to-m: clamp(3rem, 16.7934782609vw + -0.7785326087rem, 12.65625rem);
  --section-space-xl-to-s: clamp(2rem, 18.5326086957vw + -2.1698369565rem, 12.65625rem);
  --section-space-xl-to-xs: clamp(1.3333333333rem, 19.6920289855vw + -3.0973731884rem, 12.65625rem);
  --section-space-xxl: clamp(10.125rem, 15.4076086957vw + 6.6582880435rem, 18.984375rem);
  --section-space-xxl-to-xl: clamp(6.75rem, 21.277173913vw + 1.9626358696rem, 18.984375rem);
  --section-space-xxl-to-l: clamp(4.5rem, 25.1902173913vw + -1.167798913rem, 18.984375rem);
  --section-space-xxl-to-m: clamp(3rem, 27.7989130435vw + -3.2547554348rem, 18.984375rem);
  --section-space-xxl-to-s: clamp(2rem, 29.5380434783vw + -4.6460597826rem, 18.984375rem);
  --section-space-xxl-to-xs: clamp(1.3333333333rem, 30.6974637681vw + -5.5735960145rem, 18.984375rem);
}

/* 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, 0vw + 0rem, 0rem);
  --admin-bar-height: var(--wp-admin--admin-bar--height, 0px);
}

:root {
  --scroll-margin: clamp(0rem, 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;
  --btn-padding-block: 0.75em;
  --btn-padding-inline: 1.5em;
  --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: 2px;
  --btn-border-style: solid;
  --btn-border-radius: var(--radius);
  --btn-radius: var(--radius);
  --btn-justify-content: center;
  --btn-align-items: center;
  --btn-text-align: center;
}

/* Feat: Link Variables */
:root {
  --link-color: var(--info);
  --link-color-hover: var(--primary-hover);
  --link-transition: var(--transition);
  --link-decoration: underline;
  --link-decoration-hover: inherit;
  --link-underline-offset: 0.2em;
  --link-weight: inherit;
}

: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: 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(--neutral-ultra-dark);
  --bg-ultra-light: var(--neutral-ultra-light);
  --bg-light: var(--neutral-light);
  --bg-dark: var(--neutral);
  --bg-ultra-dark: var(--neutral-ultra-dark);
  --text-light: var(--neutral-ultra-light);
  --text-light-muted: color-mix(in srgb, var(--text-light) 80%, transparent);
  --text-dark: var(--base-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: 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: 12px;
  --radius-50: 50%;
  --radius-circle: 50vw;
  --radius-none: 0;
  --radius-m: var(--radius);
}

/* 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;
}

:root {
  --surface-1-background-color: var(--neutral-ultra-dark);
  --surface-1-asset: linear-gradient(color-mix(in oklch, var(--neutral-light) 20%, transparent 80%) 1px, transparent 2px), linear-gradient(90deg, color-mix(in oklch, var(--neutral-light) 20%, transparent 80%) 1px, transparent 2px);
  --surface-1-asset-is-url: off;
  --surface-1-size: 25px 25px, 25px 25px;
  --surface-1-position: center center;
  --surface-1-attachment: scroll;
  --surface-1-repeat: repeat;
  --surface-1-relationship: ultra-dark;
  --surface-1-overlay: linear-gradient(to left, var(--bg-dark), color-mix(in oklch, var(--base-ultra-dark) 80%, transparent 20%), var(--bg-dark));
  --surface-2-background-color: var(--body-bg-color);
  --surface-2-asset: url(linear-gradient(color-mix(in oklch, var(--neutral-light) 10%, transparent 90%) 2px, transparent 2px), linear-gradient(90deg, color-mix(in oklch, var(--neutral-light) 10%, transparent 90%) 2px, transparent 2px), linear-gradient(color-mix(in oklch, var(--neutral-light) 10%, transparent 90%) 1px, transparent 1px), linear-gradient(90deg, color-mix(in oklch, var(--neutral-light) 10%, transparent 90%) 1px, transparent 1px));
  --surface-2-asset-is-url: on;
  --surface-2-size: 100px 100px, 100px 100px, 50px 50px, 50px 50px;
  --surface-2-position: center center;
  --surface-2-attachment: scroll;
  --surface-2-repeat: none;
  --surface-2-relationship: ultra-dark;
  --surface-3-background-color: var(--body-bg-color);
  --surface-3-asset: url(repeating-linear-gradient(45deg, color-mix(in oklch, var(--neutral-light) 10%, transparent 90%) 0, color-mix(var(--neutral-light) 10%, transparent 90%) 1px, transparent 0, transparent 50%), repeating-linear-gradient(315deg, color-mix(in oklch, var(--neutral-light) 10%, transparent 90%) 0, color-mix(in oklch, var(--neutral-light) 10%, transparent 90%) 1px, transparent 0, transparent 50%));
  --surface-3-asset-is-url: on;
  --surface-3-size: 50px 50px;
  --surface-3-position: center center;
  --surface-3-attachment: scroll;
  --surface-3-repeat: repeat;
  --surface-3-relationship: ultra-dark;
  --surface-5-background-color: var(--body-bg-color);
  --surface-5-asset: url(linear-gradient(to left, var(--bg-dark), color-mix(in oklch, var(--base-ultra-dark) 80%, transparent 20%), var(--bg-dark)) );
  --surface-5-asset-is-url: on;
  --surface-5-size: 25px 25px, 25px 25px;
  --surface-5-position: center center;
  --surface-5-attachment: scroll;
  --surface-5-repeat: repeat;
  --surface-5-relationship: ultra-dark;
  --surface-5-overlay: linear-gradient(color-mix(in oklch, var(--neutral) 20%, transparent 80%) 1px, transparent 2px), linear-gradient(90deg, color-mix(in oklch, var(--neutral) 20%, transparent 80%) 1px, transparent 2px);
}

/* 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 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;
}

@layer acss-defaults {
  /* Color Scheme */
  :root {
    color-scheme: light only;
  }
  .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;
  }
  /* Custom Fonts: Font 1 */
  @font-face {
    font-family: "Nunito";
    src: url("../assets/nunito-v16-latin-regular.woff") format("woff2");
    font-style: normal;
    font-weight: 400;
    font-display: auto;
  }
  /* Custom Fonts: Font 2 */
  @font-face {
    font-family: "Nunito";
    src: url("../assets/nunito-v16-latin-300.woff2") format("woff2");
    font-style: normal;
    font-weight: 300;
  }
  /* Custom Fonts: Font 3 */
  @font-face {
    font-family: "Nunito";
    src: url("../assets/nunito-v16-latin-600.woff2") format("woff2");
    font-style: normal;
    font-weight: 600;
    font-display: auto;
  }
  :root {
    --accent-font: Nunito;
  }
  /* Custom Fonts: Font 4 */
  @font-face {
    font-family: "Nunito";
    src: url("../assets/nunito-v16-latin-700.woff2") format("woff2");
    font-style: normal;
    font-weight: 700;
    font-display: auto;
  }
  /* Custom Fonts: Font 5 */
  @font-face {
    font-family: "Nunito";
    src: url("../assets/nunito-v16-latin-900.woff2") format("woff2");
    font-style: normal;
    font-weight: 900;
    font-display: auto;
  }
  /* 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(p) {
    line-height: var(--text-line-height, calc(6px + 2ex));
  }
  /* Feat: Link Defaults */
  body a:where(:not([class*=btn--])) {
    color: var(--link-color, var(--info));
    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, 0.2em);
    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);
    color: var(--heading-color);
    line-height: var(--heading-line-height);
    font-weight: var(--heading-font-weight);
    text-wrap: var(--heading-text-wrap);
  }
  h1 {
    font-size: var(--h1);
    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);
  }
}
@layer acss-layer-anchors {
  .btn--primary {
    --btn-background: var(--primary);
    --btn-background-hover: var(--primary-hover);
    --btn-text-color: var(--primary-ultra-dark);
    --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-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-dark);
    --btn-border-width: 2px;
    --btn-border-color: var(--primary);
    --btn-border-color-hover: var(--btn-background-hover);
    --focus-color: var(--primary-semi-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: 2px;
    --btn-border-color: var(--primary-dark);
    --btn-border-color-hover: var(--btn-background-hover);
    --focus-color: var(--primary-semi-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: 2px;
    --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: 2px;
    --btn-border-color: var(--secondary);
    --btn-border-color-hover: var(--btn-background-hover);
    --focus-color: var(--secondary-semi-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: 2px;
    --btn-border-color: var(--secondary-dark);
    --btn-border-color-hover: var(--btn-background-hover);
    --focus-color: var(--secondary-semi-dark);
  }
  .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: 2px;
    --btn-border-color: var(--secondary-light);
    --btn-border-color-hover: var(--btn-background-hover);
    --focus-color: var(--secondary-light);
  }
  [class*=btn--]:where(:not(.btn--none)) {
    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)):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)):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);
  }
}
@layer acss-layer-cards {}
@layer acss-layer-icons {
  [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);
  }
  :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) :where(svg, i) {
    position: relative;
    translate: var(--icon-inline-offset, 0) var(--icon-block-offset, 0);
    flex-shrink: 0;
  }
  :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));
  }
}
@layer acss-layer-utilities {
  /* 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);
  }
  @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 {
    --btn-background: var(--primary);
    --btn-background-hover: var(--primary-hover);
    --btn-text-color: var(--primary-ultra-dark);
    --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);
  }
  .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);
  }
  :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);
  }
  .surface-1, .surface-1 {
    background-color: var(--surface-background-color, var(--surface-1-background-color));
    background-image: var(--surface-asset, var(--surface-1-asset));
    background-position: var(--surface-position, var(--surface-1-position, center center));
    background-attachment: var(--surface-attachment, var(--surface-1-attachment));
    background-repeat: var(--surface-repeat, var(--surface-1-repeat));
    background-size: var(--surface-size, var(--surface-1-size));
    animation: var(--surface-animation, var(--surface-1-animation, none));
    border-image: fill 1 var(--surface-overlay, var(--surface-1-overlay));
  }
  .surface-2, .surface-2 {
    background-color: var(--surface-background-color, var(--surface-2-background-color));
    background-image: var(--surface-asset, var(--surface-2-asset));
    background-position: var(--surface-position, var(--surface-2-position, center center));
    background-attachment: var(--surface-attachment, var(--surface-2-attachment));
    background-repeat: var(--surface-repeat, var(--surface-2-repeat));
    background-size: var(--surface-size, var(--surface-2-size));
    animation: var(--surface-animation, var(--surface-2-animation, none));
    border-image: fill 1 var(--surface-overlay, var(--surface-2-overlay));
  }
  .surface-3, .surface-3 {
    background-color: var(--surface-background-color, var(--surface-3-background-color));
    background-image: var(--surface-asset, var(--surface-3-asset));
    background-position: var(--surface-position, var(--surface-3-position, center center));
    background-attachment: var(--surface-attachment, var(--surface-3-attachment));
    background-repeat: var(--surface-repeat, var(--surface-3-repeat));
    background-size: var(--surface-size, var(--surface-3-size));
    animation: var(--surface-animation, var(--surface-3-animation, none));
    border-image: fill 1 var(--surface-overlay, var(--surface-3-overlay));
  }
  .surface-5, .surface-5 {
    background-color: var(--surface-background-color, var(--surface-5-background-color));
    background-image: var(--surface-asset, var(--surface-5-asset));
    background-position: var(--surface-position, var(--surface-5-position, center center));
    background-attachment: var(--surface-attachment, var(--surface-5-attachment));
    background-repeat: var(--surface-repeat, var(--surface-5-repeat));
    background-size: var(--surface-size, var(--surface-5-size));
    animation: var(--surface-animation, var(--surface-5-animation, none));
    border-image: fill 1 var(--surface-overlay, var(--surface-5-overlay));
  }
  .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, .surface-1, .surface-1, .surface-2, .surface-2, .surface-3, .surface-3, .surface-4, .surface-5) {
    --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, .surface-1, .surface-1, .surface-2, .surface-2, .surface-3, .surface-3, .surface-4, .surface-5 :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, .surface-1, .surface-1, .surface-2, .surface-2, .surface-3, .surface-3, .surface-4, .surface-5 {
    --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-dark);
    --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);
  }
  .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-dark);
    --btn-border-width: 2px;
    --btn-border-color: var(--primary);
    --btn-border-color-hover: var(--btn-background-hover);
    --focus-color: var(--primary-semi-light);
  }
  .bg--light [class*=btn--]:not(.unrelate) {
    --btn-background: var(--primary);
    --btn-background-hover: var(--primary-hover);
    --btn-text-color: var(--primary-ultra-dark);
    --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);
  }
  .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-dark);
    --btn-border-width: 2px;
    --btn-border-color: var(--primary);
    --btn-border-color-hover: var(--btn-background-hover);
    --focus-color: var(--primary-semi-light);
  }
  .bg--dark [class*=btn--]:not(.unrelate) {
    --btn-background: var(--primary);
    --btn-background-hover: var(--primary-hover);
    --btn-text-color: var(--primary-ultra-dark);
    --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);
  }
  .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-dark);
    --btn-border-width: 2px;
    --btn-border-color: var(--primary);
    --btn-border-color-hover: var(--btn-background-hover);
    --focus-color: var(--primary-semi-light);
  }
  .bg--ultra-dark [class*=btn--]:not(.unrelate), .surface-1 [class*=btn--]:not(.unrelate), .surface-1 [class*=btn--]:not(.unrelate), .surface-2 [class*=btn--]:not(.unrelate), .surface-2 [class*=btn--]:not(.unrelate), .surface-3 [class*=btn--]:not(.unrelate), .surface-3 [class*=btn--]:not(.unrelate), .surface-4 [class*=btn--]:not(.unrelate), .surface-5 [class*=btn--]:not(.unrelate) {
    --btn-background: var(--primary);
    --btn-background-hover: var(--primary-hover);
    --btn-text-color: var(--primary-ultra-dark);
    --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);
  }
  .bg--ultra-dark [class*=btn--]:not(.unrelate).btn--outline, .surface-1 [class*=btn--]:not(.unrelate).btn--outline, .surface-1 [class*=btn--]:not(.unrelate).btn--outline, .surface-2 [class*=btn--]:not(.unrelate).btn--outline, .surface-2 [class*=btn--]:not(.unrelate).btn--outline, .surface-3 [class*=btn--]:not(.unrelate).btn--outline, .surface-3 [class*=btn--]:not(.unrelate).btn--outline, .surface-4 [class*=btn--]:not(.unrelate).btn--outline, .surface-5 [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-dark);
    --btn-border-width: 2px;
    --btn-border-color: var(--primary);
    --btn-border-color-hover: var(--btn-background-hover);
    --focus-color: var(--primary-semi-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);
    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: 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);
  }
  @supports (animation-timeline: view()) {
    [class*=on-enter-all--] > * {
      animation-name: enter-animate;
      animation-timing-function: var(--scroll-animation-timing, 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%;
    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;
}

:is(.wp-block-column) {
  row-gap: 0 !important;
}
:is(.wp-block-column) > * + * {
  margin-block-start: var(--flow-spacing, initial);
  margin-block-end: 0;
}
:is(.wp-block-column) > * + :where(h1, h2, h3, h4, h5, h6) {
  margin-block-start: var(--heading-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
:is(.wp-block-column) > :where(* + h2) {
  margin-block-start: var(--h2-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.wp-block-column) > :where(* + h3) {
  margin-block-start: var(--h3-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.wp-block-column) > :where(* + h4) {
  margin-block-start: var(--h4-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.wp-block-column) > :where(* + h5) {
  margin-block-start: var(--h5-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.wp-block-column) > :where(* + h6) {
  margin-block-start: var(--h6-spacing, var(--heading-spacing));
  margin-block-end: 0;
}
:is(.wp-block-column) > * + p {
  margin-block-start: var(--paragraph-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
:is(.wp-block-column) > :is(* + ul, * + ol) {
  margin-block: var(--list-spacing, var(--flow-spacing, initial));
}
:is(.wp-block-column) > :is(ul, ol) {
  padding-inline-start: var(--list-indent-spacing, var(--flow-spacing, initial));
}
:is(.wp-block-column) > ul * + li, :is(.wp-block-column) > ol * + li {
  margin-block-start: var(--list-item-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
:is(.wp-block-column) > ul ul, :is(.wp-block-column) > ol ol, :is(.wp-block-column) > ul ol, :is(.wp-block-column) > ol ul {
  margin-block: var(--nested-list-spacing, var(--list-item-spacing, initial));
  padding-inline-start: var(--nested-list-indent-spacing, initial);
}
:is(.wp-block-column) > :is(ul, ol) :is(ul, ol) li {
  margin-block-start: var(--nested-list-item-spacing, var(--list-item-spacing, initial));
}
:is(.wp-block-column) > * + figure, :is(.wp-block-column) > * + picture {
  margin-block: var(--figure-spacing, var(--flow-spacing, initial));
}
:is(.wp-block-column) figcaption {
  margin-block: var(--figcaption-spacing, var(--flow-spacing, initial));
}
:is(.wp-block-column) > * + blockquote:where(:not(figure > blockquote)) {
  margin-block: var(--blockquote-spacing, var(--flow-spacing, initial));
}
:is(.wp-block-column) > blockquote * + * {
  margin-block-start: var(--paragraph-spacing, var(--flow-spacing, initial));
  margin-block-end: 0;
}
:is(.wp-block-column) > :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;
}