/* File: automatic.css - Version: 4.0.1 - Generated: 2026-10-20 15:43:54 */
/* Feat: Text, Headings, & Spacing */
:root {
  --root-font-size: 100%;
}
/* Feat: Palette */
:root {
  --primary: oklch(0.363 0.109 12);
  --primary-hover: oklch(0.295 0.091 11);
  --primary-ultra-light: oklch(0.95 0.022 12);
  --primary-light: oklch(0.85 0.055 12);
  --primary-semi-light: oklch(0.65 0.1 12);
  --primary-semi-dark: oklch(0.32 0.1 12);
  --primary-dark: oklch(0.283 0.083 10);
  --primary-ultra-dark: oklch(0.19 0.06 11);
  --secondary: oklch(0.737 0.101 83);
  --secondary-hover: oklch(0.68 0.1 83);
  --secondary-ultra-light: oklch(0.95 0.03 83);
  --secondary-light: oklch(0.85 0.06 83);
  --secondary-semi-light: oklch(0.65 0.1 83);
  --secondary-semi-dark: oklch(0.35 0.07 83);
  --secondary-dark: oklch(0.25 0.05 83);
  --secondary-ultra-dark: oklch(0.1 0.02 83);
  --accent: oklch(0.776 0.058 31);
  --accent-hover: oklch(0.72 0.065 31);
  --accent-ultra-light: oklch(0.95 0.02 31);
  --accent-light: oklch(0.85 0.045 31);
  --accent-semi-light: oklch(0.65 0.07 31);
  --accent-semi-dark: oklch(0.35 0.06 31);
  --accent-dark: oklch(0.25 0.045 31);
  --accent-ultra-dark: oklch(0.1 0.02 31);
  --base: oklch(0.224 0.009 352);
  --base-hover: oklch(0.16 0.008 352);
  --base-ultra-light: oklch(0.974 0.014 85);
  --base-light: oklch(0.937 0.026 82);
  --base-semi-light: oklch(0.884 0.037 82);
  --base-semi-dark: oklch(0.469 0.021 0);
  --base-dark: oklch(0.341 0.015 358);
  --base-ultra-dark: oklch(0.15 0.008 352);
  --neutral: oklch(0.413 0.019 357);
  --neutral-hover: oklch(0.341 0.015 358);
  --neutral-ultra-light: oklch(0.958 0.015 77);
  --neutral-light: oklch(0.876 0.025 62);
  --neutral-semi-light: oklch(0.651 0.022 3);
  --neutral-semi-dark: oklch(0.341 0.015 358);
  --neutral-dark: oklch(0.271 0.013 353);
  --neutral-ultra-dark: oklch(0.224 0.009 352);
  --white: #fff;
  --black: #000;
  --heading-color: var(--primary);
}
/* 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: 3px;
  --focus-offset: 4px;
}
/* Feat: Text Defaults */
:root {
  --text-xxl-max-width: 100%;
  --text-xl-max-width: 100%;
  --text-l-line-height: 1.6;
  --text-l-max-width: 62ch;
  --text-m-line-height: 1.7;
  --text-m-max-width: 100%;
  --text-s-line-height: 1.65;
  --text-s-max-width: 100%;
  --text-xs-line-height: 1.5;
  --text-xs-max-width: 100%;
  --base-text-lh: 1.7;
  --text-font-family: "Manrope", sans-serif;
  --text-color: var(--text-dark);
  --text-line-height: 1.7;
  --text-text-wrap: pretty;
}
/* Feat: Heading Defaults */
:root {
  --heading-font-family: "DM Serif Display", Georgia, serif;
  --heading-color: var(--primary);
  --heading-line-height: calc(1.14);
  --heading-font-weight: 400;
  --heading-letter-spacing: -0.025em;
  --heading-text-wrap: balance;
  --base-heading-lh: calc(1.14);
  --h1-line-height: 1.08;
  --h1-max-width: 100%;
  --h2-line-height: 1.14;
  --h3-line-height: 1.2;
  --h4-line-height: calc(1.14);
  --h5-line-height: 1.4;
  --h6-line-height: 1.4;
}
/* Feat: Text Size Variables */
:root {
  --text-xs: clamp(0.8125rem, calc(0.1086956522vw + 0.7880434783rem), 0.875rem);
  --text-s: clamp(0.9375rem, calc(0.1086956522vw + 0.9130434783rem), 1rem);
  --text-m: clamp(1rem, calc(0.2173913043vw + 0.9510869565rem), 1.125rem);
  --text-l: clamp(1.15rem, calc(0.347826087vw + 1.0717391304rem), 1.35rem);
  --text-xl: clamp(1.3225rem, calc(0.5173913043vw + 1.2060869565rem), 1.62rem);
  --text-xxl: clamp(1.520875rem, calc(0.7358695652vw + 1.3553043478rem), 1.944rem);
  --text-s-to-xs: clamp(0.8125rem, calc(0.3260869565vw + 0.7391304348rem), 1rem);
  --text-m-to-s: clamp(0.9375rem, calc(0.3260869565vw + 0.8641304348rem), 1.125rem);
  --text-m-to-xs: clamp(0.8125rem, calc(0.5434782609vw + 0.6902173913rem), 1.125rem);
  --text-l-to-m: clamp(1rem, calc(0.6086956522vw + 0.8630434783rem), 1.35rem);
  --text-l-to-s: clamp(0.9375rem, calc(0.7173913043vw + 0.7760869565rem), 1.35rem);
  --text-l-to-xs: clamp(0.8125rem, calc(0.9347826087vw + 0.602173913rem), 1.35rem);
  --text-xl-to-l: clamp(1.15rem, calc(0.8173913043vw + 0.9660869565rem), 1.62rem);
  --text-xl-to-m: clamp(1rem, calc(1.0782608696vw + 0.7573913043rem), 1.62rem);
  --text-xl-to-s: clamp(0.9375rem, calc(1.1869565217vw + 0.6704347826rem), 1.62rem);
  --text-xl-to-xs: clamp(0.8125rem, calc(1.4043478261vw + 0.4965217391rem), 1.62rem);
  --text-xxl-to-xl: clamp(1.3225rem, calc(1.0808695652vw + 1.0793043478rem), 1.944rem);
  --text-xxl-to-l: clamp(1.15rem, calc(1.3808695652vw + 0.8393043478rem), 1.944rem);
  --text-xxl-to-m: clamp(1rem, calc(1.6417391304vw + 0.6306086957rem), 1.944rem);
  --text-xxl-to-s: clamp(0.9375rem, calc(1.7504347826vw + 0.5436521739rem), 1.944rem);
  --text-xxl-to-xs: clamp(0.8125rem, calc(1.967826087vw + 0.3697391304rem), 1.944rem);
}
/* Feat: Heading Size Variables */
:root {
  --h6: clamp(0.9375rem, calc(0.1086956522vw + 0.9130434783rem), 1rem);
  --h5: clamp(1rem, calc(0.2173913043vw + 0.9510869565rem), 1.125rem);
  --h4: clamp(1.25rem, calc(0.2173913043vw + 1.2010869565rem), 1.375rem);
  --h3: clamp(1.5rem, calc(0.4347826087vw + 1.402173913rem), 1.75rem);
  --h2: clamp(2rem, calc(1.3913043478vw + 1.6869565217rem), 2.8rem);
  --h1: clamp(2.8rem, calc(2.9565217391vw + 2.1347826087rem), 4.5rem);
  --h5-to-h6: clamp(0.9375rem, calc(0.3260869565vw + 0.8641304348rem), 1.125rem);
  --h4-to-h5: clamp(1rem, calc(0.652173913vw + 0.8532608696rem), 1.375rem);
  --h4-to-h6: clamp(0.9375rem, calc(0.7608695652vw + 0.7663043478rem), 1.375rem);
  --h3-to-h4: clamp(1.25rem, calc(0.8695652174vw + 1.0543478261rem), 1.75rem);
  --h3-to-h5: clamp(1rem, calc(1.3043478261vw + 0.7065217391rem), 1.75rem);
  --h3-to-h6: clamp(0.9375rem, calc(1.4130434783vw + 0.6195652174rem), 1.75rem);
  --h2-to-h3: clamp(1.5rem, calc(2.2608695652vw + 0.9913043478rem), 2.8rem);
  --h2-to-h4: clamp(1.25rem, calc(2.6956521739vw + 0.6434782609rem), 2.8rem);
  --h2-to-h5: clamp(1rem, calc(3.1304347826vw + 0.2956521739rem), 2.8rem);
  --h2-to-h6: clamp(0.9375rem, calc(3.2391304348vw + 0.2086956522rem), 2.8rem);
  --h1-to-h2: clamp(2rem, calc(4.347826087vw + 1.0217391304rem), 4.5rem);
  --h1-to-h3: clamp(1.5rem, calc(5.2173913043vw + 0.3260869565rem), 4.5rem);
  --h1-to-h4: clamp(1.25rem, calc(5.652173913vw + -0.0217391304rem), 4.5rem);
  --h1-to-h5: clamp(1rem, calc(6.0869565217vw + -0.3695652174rem), 4.5rem);
  --h1-to-h6: clamp(0.9375rem, calc(6.1956521739vw + -0.4565217391rem), 4.5rem);
}
/* Feat: Default Section Styles */
:root {
  --section-padding-block: var(--section-space-m);
  --gutter: clamp(1.5rem, calc(3.9130434783vw + 0.6195652174rem), 3.75rem);
}
/* Feat: Space Variables */
:root {
  --space-xs: clamp(0.8441720333rem, calc(0.0777684446vw + 0.8266741332rem), 0.8888888889rem);
  --space-s: clamp(1.1252813203rem, calc(0.3618295878vw + 1.0438696631rem), 1.3333333333rem);
  --space-s-to-xs: clamp(0.8441720333rem, calc(0.8507153045vw + 0.6527610897rem), 1.3333333333rem);
  --space-m: clamp(1.5rem, calc(0.8695652174vw + 1.3043478261rem), 2rem);
  --space-m-to-s: clamp(1.1252813203rem, calc(1.5212498777vw + 0.7830000979rem), 2rem);
  --space-m-to-xs: clamp(0.8441720333rem, calc(2.0101355943vw + 0.3918915245rem), 2rem);
  --space-l: clamp(1.9995rem, calc(1.74vw + 1.608rem), 3rem);
  --space-l-to-m: clamp(1.5rem, calc(2.6086956522vw + 0.9130434783rem), 3rem);
  --space-l-to-s: clamp(1.1252813203rem, calc(3.2603803125vw + 0.39169575rem), 3rem);
  --space-l-to-xs: clamp(0.8441720333rem, calc(3.7492660291vw + 0.0005871767rem), 3rem);
  --space-xl: clamp(2.6653335rem, calc(3.1907243478vw + 1.9474205217rem), 4.5rem);
  --space-xl-to-l: clamp(1.9995rem, calc(4.3486956522vw + 1.0210434783rem), 4.5rem);
  --space-xl-to-m: clamp(1.5rem, calc(5.2173913043vw + 0.3260869565rem), 4.5rem);
  --space-xl-to-s: clamp(1.1252813203rem, calc(5.8690759646vw + -0.1952607717rem), 4.5rem);
  --space-xl-to-xs: clamp(0.8441720333rem, calc(6.3579616813vw + -0.586369345rem), 4.5rem);
  --space-xxl: clamp(3.5528895555rem, calc(5.5601920774vw + 2.3018463381rem), 6.75rem);
  --space-xxl-to-xl: clamp(2.6653335rem, calc(7.1037678261vw + 1.0669857391rem), 6.75rem);
  --space-xxl-to-l: clamp(1.9995rem, calc(8.2617391304vw + 0.1406086957rem), 6.75rem);
  --space-xxl-to-m: clamp(1.5rem, calc(9.1304347826vw + -0.5543478261rem), 6.75rem);
  --space-xxl-to-s: clamp(1.1252813203rem, calc(9.7821194429vw + -1.0756955543rem), 6.75rem);
  --space-xxl-to-xs: clamp(0.8441720333rem, calc(10.2710051596vw + -1.4668041276rem), 6.75rem);
}
/* Feat: Section Space Variables */
:root {
  --section-space-xs: clamp(1.6883440665rem, calc(1.701430609vw + 1.3055221795rem), 2.6666666667rem);
  --section-space-s: clamp(2.2505626407rem, calc(3.0424997554vw + 1.5660001957rem), 4rem);
  --section-space-s-to-xs: clamp(1.6883440665rem, calc(4.0202711887vw + 0.7837830491rem), 4rem);
  --section-space-m: clamp(3rem, calc(5.2173913043vw + 1.8260869565rem), 6rem);
  --section-space-m-to-s: clamp(2.2505626407rem, calc(6.5207606249vw + 0.7833915rem), 6rem);
  --section-space-m-to-xs: clamp(1.6883440665rem, calc(7.4985320582vw + 0.0011743534rem), 6rem);
  --section-space-l: clamp(3.999rem, calc(8.6973913043vw + 2.0420869565rem), 9rem);
  --section-space-l-to-m: clamp(3rem, calc(10.4347826087vw + 0.652173913rem), 9rem);
  --section-space-l-to-s: clamp(2.2505626407rem, calc(11.7381519293vw + -0.3905215434rem), 9rem);
  --section-space-l-to-xs: clamp(1.6883440665rem, calc(12.7159233626vw + -1.1727386901rem), 9rem);
  --section-space-xl: clamp(5.330667rem, calc(14.2075356522vw + 2.1339714783rem), 13.5rem);
  --section-space-xl-to-l: clamp(3.999rem, calc(16.5234782609vw + 0.2812173913rem), 13.5rem);
  --section-space-xl-to-m: clamp(3rem, calc(18.2608695652vw + -1.1086956522rem), 13.5rem);
  --section-space-xl-to-s: clamp(2.2505626407rem, calc(19.5642388858vw + -2.1513911086rem), 13.5rem);
  --section-space-xl-to-xs: clamp(1.6883440665rem, calc(20.5420103191vw + -2.9336082553rem), 13.5rem);
  --section-space-xxl: clamp(7.105779111rem, calc(22.8595145896vw + 1.9623883283rem), 20.25rem);
  --section-space-xxl-to-xl: clamp(5.330667rem, calc(25.946666087vw + -0.5073328696rem), 20.25rem);
  --section-space-xxl-to-l: clamp(3.999rem, calc(28.2626086957vw + -2.3600869565rem), 20.25rem);
  --section-space-xxl-to-m: clamp(3rem, calc(30vw + -3.75rem), 20.25rem);
  --section-space-xxl-to-s: clamp(2.2505626407rem, calc(31.3033693206vw + -4.7926954565rem), 20.25rem);
  --section-space-xxl-to-xs: clamp(1.6883440665rem, calc(32.2811407539vw + -5.5749126031rem), 20.25rem);
}
/* Feat: Contextual Space Variables */
:root {
  --content-gap: var(--space-m);
  --container-gap: var(--space-xl);
  --grid-gap: var(--space-m);
}
/* Feat: Width Variables */
:root {
  --width-10: calc(var(--content-width) * 0.1);
  --width-20: calc(var(--content-width) * 0.2);
  --width-30: calc(var(--content-width) * 0.3);
  --width-40: calc(var(--content-width) * 0.4);
  --width-50: calc(var(--content-width) * 0.5);
  --width-60: calc(var(--content-width) * 0.6);
  --width-70: calc(var(--content-width) * 0.7);
  --width-80: calc(var(--content-width) * 0.8);
  --width-90: calc(var(--content-width) * 0.9);
  --width-full: calc(var(--content-width) * 100%);
}
/* Feat: Grid Variables */
:root {
  --grid-1: repeat(1, minmax(0, 1fr));
  --grid-2: repeat(2, minmax(0, 1fr));
  --grid-3: repeat(3, minmax(0, 1fr));
  --grid-4: repeat(4, minmax(0, 1fr));
  --grid-5: repeat(5, minmax(0, 1fr));
  --grid-6: repeat(6, minmax(0, 1fr));
  --grid-7: repeat(7, minmax(0, 1fr));
  --grid-8: repeat(8, minmax(0, 1fr));
  --grid-9: repeat(9, minmax(0, 1fr));
  --grid-10: repeat(10, minmax(0, 1fr));
  --grid-11: repeat(11, minmax(0, 1fr));
  --grid-12: repeat(12, minmax(0, 1fr));
  --grid-1-2: minmax(0, 1fr) minmax(0, 2fr);
  --grid-1-3: minmax(0, 1fr) minmax(0, 3fr);
  --grid-2-1: minmax(0, 2fr) minmax(0, 1fr);
  --grid-2-3: minmax(0, 2fr) minmax(0, 3fr);
  --grid-3-1: minmax(0, 3fr) minmax(0, 1fr);
  --grid-3-2: minmax(0, 3fr) minmax(0, 2fr);
}
:root {
  --scroll-margin: clamp(0rem, calc(0vw + 0rem), 0rem);
  --offset: clamp(0rem, calc(0vw + 0rem), 0rem);
}
/* Feat: Smart Spacing */
:root {
  --paragraph-spacing: 1.333em;
  --heading-spacing: var(--space-l);
  --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;
  --btn-padding-block: 0.8em;
  --btn-padding-inline: 1.5em;
  --btn-min-width: 0rem;
  --btn-width: max-content;
  --btn-line-height: 1;
  --btn-font-size: var(--text-m);
  --btn-font-weight: 600;
  --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: 1px;
  --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(--primary);
  --link-color-hover: var(--primary-hover);
  --link-transition: var(--transition);
  --link-decoration: inherit;
  --link-decoration-hover: inherit;
  --link-underline-offset: 0.3em;
  --link-weight: inherit;
  --link-decoration-thickness: 1px;
}
/* Contextual Color Variables */
:root {
  --body-bg-color: var(--base-light);
  --bg-ultra-light: var(--base-ultra-light);
  --bg-light: var(--base-semi-light);
  --bg-dark: var(--primary-dark);
  --bg-ultra-dark: var(--base);
  --text-light: var(--base-light);
  --text-light-muted: color-mix(in srgb, var(--text-light) 80%, transparent);
  --text-dark: var(--base);
  --text-dark-muted: var(--base-semi-dark);
}
/* Feat: Radius Variables */
:root {
  --radius: 0;
  --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 srgb, var(--primary) 25%, 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(--primary) 25%, transparent);
  --divider-color-light: color-mix(in srgb, var(--white) 20%, transparent);
  --divider: var(--divider-size) var(--divider-style) var(--divider-color-dark);
  --divider-light: var(--divider-size) var(--divider-style) var(--divider-color-light);
  --divider-dark: var(--divider-size) var(--divider-style) var(--divider-color-dark);
}
/* Feat: Transition Variables */
:root {
  --transition-duration: 0.3s;
  --transition-timing: ease-in-out;
  --transition-delay: 0s;
  --transition: 0.3s ease-in-out 0s;
}
/* Feat: Box Shadow Variables */
:root {
  --box-shadow-1: 8px 12px 25px color-mix(in srgb, var(--base) 12%, transparent);
  --box-shadow-2: 0 18px 40px color-mix(in srgb, var(--primary-dark) 10%, transparent);
  --box-shadow-3: 0 10px 24px color-mix(in srgb, var(--primary-dark) 20%, transparent);
}
/* 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;
}
/* 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(p) {
  line-height: var(--text-line-height, 1.7);
}
/* Feat: Link Defaults */
body a:where(:not([class*= btn--])) {
  color: var(--link-color, var(--primary));
  font-weight: var(--link-weight, inherit);
  -webkit-text-decoration: var(--link-decoration, inherit);
  text-decoration: var(--link-decoration, inherit);
  text-underline-offset: var(--link-underline-offset, 0.3em);
  text-decoration-thickness: var(--link-decoration-thickness);
  transition: var(--link-transition, var(--transition));
}
@media (hover: hover) and (pointer: fine) {
  body a:where(:not([class*= btn--])):hover {
    color: var(--link-color-hover, var(--primary-hover));
    text-decoration-thickness: var(--link-decoration-thickness);
  }
}
/* Feat: Heading Defaults */
h1, :where(.h1), h2, :where(.h2), h3, :where(.h3), h4, :where(.h4), h5, :where(.h5), h6, :where(.h6) {
  font-family: var(--heading-font-family);
  color: var(--heading-color);
  line-height: var(--heading-line-height);
  font-weight: var(--heading-font-weight);
  letter-spacing: var(--heading-letter-spacing);
  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);
}
h3 {
  font-size: var(--h3);
  line-height: var(--h3-line-height);
}
h4 {
  font-size: var(--h4);
  line-height: var(--h4-line-height);
}
h5 {
  font-size: var(--h5);
  line-height: var(--h5-line-height);
}
h6 {
  font-size: var(--h6);
  line-height: var(--h6-line-height);
}
.btn--primary {
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--text-light);
  --btn-text-color-hover: var(--text-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
.btn--primary.btn--outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--primary);
  --btn-text-color-hover: var(--primary-ultra-light);
  --btn-border-width: 1px;
  --btn-border-color: var(--primary);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
.btn--primary-light.btn--outline {
  --btn-background: transparent;
  --btn-background-hover: var(--primary-light);
  --btn-text-color: var(--primary-light);
  --btn-text-color-hover: var(--primary-dark);
  --btn-border-width: 1px;
  --btn-border-color: var(--primary-light);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
[class*="btn--"]:where(:not(.btn--none, .wp-block-button)), [class*="btn--"].wp-block-button > .wp-block-button__link {
  background: var(--btn-background);
  color: var(--btn-text-color);
  padding-block: var(--btn-padding-block);
  padding-inline: var(--btn-padding-inline);
  inline-size: var(--btn-width, auto);
  min-inline-size: var(--btn-min-width);
  line-height: var(--btn-line-height);
  font-family: var(--btn-font-family);
  font-size: var(--btn-font-size, var(--text-m));
  font-weight: var(--btn-font-weight);
  font-style: var(--btn-font-style);
  text-transform: var(--btn-text-transform);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: var(--btn-text-decoration);
  border-width: var(--btn-border-width);
  border-style: var(--btn-border-style);
  border-radius: var(--btn-border-radius);
  border-color: var(--btn-border-color);
  transition: var(--btn-transition, var(--transition));
  justify-content: var(--btn-justify-content, center);
  align-items: var(--btn-align-items, center);
  text-align: var(--btn-text-align, center);
  display: var(--btn-display, inline-flex);
}
@media (hover: hover) and (pointer: fine) {
  [class*="btn--"]:where(:not(.btn--none, .wp-block-button)):hover, [class*="btn--"].wp-block-button > .wp-block-button__link:hover {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
}
[class*="btn--"]:where(:not(.btn--none, .wp-block-button)):where(:focus-visible), [class*="btn--"].wp-block-button > .wp-block-button__link:where(:focus-visible) {
  outline-style: solid;
  outline-color: var(--focus-color);
  outline-width: var(--focus-width);
  outline-offset: var(--focus-offset);
}
.btn--xs {
  --btn-font-size: var(--text-xs);
}
.btn--s {
  --btn-font-size: var(--text-s);
}
.btn--m {
  --btn-font-size: var(--text-m);
}
.btn--l {
  --btn-font-size: var(--text-l);
}
.btn--xl {
  --btn-font-size: var(--text-xl);
}
.btn--xxl {
  --btn-font-size: var(--text-xxl);
}
.btn--none {
  background: none;
  border: none;
}
/* Scroll offset */
[id] {
  scroll-margin-top: var(--offset, 0);
}
/* Feat: Smooth Scrolling */
html {
  scroll-behavior: smooth;
}
html:has(:focus-visible) {
  scroll-behavior: auto;
}
.hidden-accessible {
  position: absolute !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(100%);
  white-space: nowrap;
  /* added line */
  border: 0;
}
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *, *::before, *::after {
    -webkit-animation-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
.skip-link {
  position: absolute !important;
  inset-block-start: 1rem;
  inset-inline-start: 1rem;
  transform: translateY(-250%);
  --btn-min-width: fit-content;
  z-index: 100;
  background: var(--btn-background);
  color: var(--btn-text-color);
  padding-block: var(--btn-padding-block);
  padding-inline: var(--btn-padding-inline);
  inline-size: var(--btn-width, auto);
  min-inline-size: var(--btn-min-width);
  line-height: var(--btn-line-height);
  font-family: var(--btn-font-family);
  font-size: var(--btn-font-size, var(--text-m));
  font-weight: var(--btn-font-weight);
  font-style: var(--btn-font-style);
  text-transform: var(--btn-text-transform);
  letter-spacing: var(--btn-letter-spacing);
  text-decoration: var(--btn-text-decoration);
  border-width: var(--btn-border-width);
  border-style: var(--btn-border-style);
  border-radius: var(--btn-border-radius);
  border-color: var(--btn-border-color);
  transition: var(--btn-transition, var(--transition));
  justify-content: var(--btn-justify-content, center);
  align-items: var(--btn-align-items, center);
  text-align: var(--btn-text-align, center);
  display: var(--btn-display, inline-flex);
  --btn-background: var(--primary);
  --btn-background-hover: var(--primary-hover);
  --btn-text-color: var(--text-light);
  --btn-text-color-hover: var(--text-light);
  --btn-border-color: var(--btn-background);
  --btn-border-color-hover: var(--btn-background-hover);
  --focus-color: var(--primary-light);
}
@media (hover: hover) and (pointer: fine) {
  .skip-link:hover {
    background: var(--btn-background-hover);
    color: var(--btn-text-color-hover);
    border-color: var(--btn-border-color-hover);
    text-decoration: var(--btn-text-decoration-hover);
  }
}
.skip-link:where(:focus-visible) {
  outline-style: solid;
  outline-color: var(--focus-color);
  outline-width: var(--focus-width);
  outline-offset: var(--focus-offset);
}
.skip-link:focus-visible {
  transform: translateY(0);
}
/* 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);
}
/* 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);
}
: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);
}
.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);
  line-height: var(--text-l-line-height);
}
.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);
  line-height: var(--text-s-line-height);
}
.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);
  line-height: var(--text-xs-line-height);
}
.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);
  line-height: var(--h1-line-height);
  max-width: var(--h1-max-width);
}
.h2 {
  font-size: var(--h2);
  line-height: var(--h2-line-height);
}
.h3 {
  font-size: var(--h3);
  line-height: var(--h3-line-height);
}
.h4 {
  font-size: var(--h4);
  line-height: var(--h4-line-height);
}
.h5 {
  font-size: var(--h5);
  line-height: var(--h5-line-height);
}
.h6 {
  font-size: var(--h6);
  line-height: var(--h6-line-height);
}
body blockquote {
  text-wrap: pretty;
}
/* 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%;
}
/* 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 */
:root {
  --transition-duration: 0.3s;
  --transition-timing: ease-in-out;
  --transition-delay: 0s;
  --transition: 0.3s ease-in-out 0s;
}
@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: 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;
}
