@charset "UTF-8";
@font-face {
  font-family: "Geist";
  font-style: normal;
  font-optical-sizing: auto;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Geist/Geist-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Geist";
  font-style: normal;
  font-optical-sizing: auto;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/Geist/Geist-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "Geist";
  font-style: normal;
  font-optical-sizing: auto;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/Geist/Geist-SemiBold.ttf") format("truetype");
}
@font-face {
  font-family: "Geist";
  font-style: normal;
  font-optical-sizing: auto;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/Geist/Geist-ExtraBold.ttf") format("truetype");
}
/* Geist Mono */
@font-face {
  font-family: "Geist Mono";
  font-style: normal;
  font-optical-sizing: auto;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/GeistMono/GeistMono-Regular.ttf") format("truetype");
}
/* Albert Sans */
@font-face {
  font-family: "Albert Sans";
  font-style: normal;
  font-optical-sizing: auto;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Albert_Sans/AlbertSans-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Albert Sans";
  font-style: normal;
  font-optical-sizing: auto;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/Albert_Sans/AlbertSans-SemiBold.ttf") format("truetype");
}
/* Nunito */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-optical-sizing: auto;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Nunito/Nunito-Regular.ttf") format("truetype");
}
/* Outfit */
@font-face {
  font-family: "Outfit";
  font-style: normal;
  font-optical-sizing: auto;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Outfit/Outfit-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Outfit";
  font-style: normal;
  font-optical-sizing: auto;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/Outfit/Outfit-Bold.ttf") format("truetype");
}
@font-face {
  font-family: Geist Fallback;
  src: local("Arial");
  ascent-override: 95.94%;
  descent-override: 28.16%;
  line-gap-override: 0%;
  size-adjust: 104.76%;
}
@font-face {
  font-family: Geist Mono Fallback;
  src: local("Arial");
  ascent-override: 95.94%;
  descent-override: 28.16%;
  line-gap-override: 0%;
  size-adjust: 104.76%;
}
:root {
  --rotation: 4deg;
  --radius:.625rem;
  --text-white: var(--color-white);
  --text-black: var(--color-black);
  --tw-border-style: solid;
  --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color,#0000000d);
  --background:oklch(100% 0 0);
  --foreground:oklch(26.982% 0.00553 285.95);
  --dark-background:oklch(0.2103 0.0059 285.89);
  --dark-foreground:oklch(100% 0 0);
  --card:oklch(100% 0 0);
  --card-foreground:oklch(14.5% 0 0);
  --popover:oklch(100% 0 0);
  --popover-foreground:oklch(14.5% 0 0);
  --primary: oklch(0.83 0.16 162.72);
  --primary-foreground:oklch(0.2103 0.0059 285.89);
  --secondary:oklch(26.982% 0.00553 285.95);
  --secondary-foreground:oklch(97% 0 0);
  --muted:oklch(86.995% 0.0001 271.152);
  --muted-foreground:oklch(46.04% 0.00005 271.152);
  --accent:oklch(97% 0 0);
  --accent-foreground:oklch(20.5% 0 0);
  --destructive:oklch(63.17% 0.19298 21.829);
  --border:oklch(92.2% 0 0);
  --input:oklch(92.2% 0 0);
  --ring:oklch(0.5555 0 0);
  --chart-1:var(--color-blue-300);
  --chart-2:var(--color-blue-500);
  --chart-3:var(--color-blue-600);
  --chart-4:var(--color-blue-700);
  --chart-5:var(--color-blue-800);
  --sidebar:oklch(98.5% 0 0);
  --sidebar-foreground:oklch(14.5% 0 0);
  --sidebar-primary:oklch(20.5% 0 0);
  --sidebar-primary-foreground:oklch(98.5% 0 0);
  --sidebar-accent:oklch(97% 0 0);
  --sidebar-accent-foreground:oklch(20.5% 0 0);
  --sidebar-border:oklch(92.2% 0 0);
  --sidebar-ring:oklch(70.8% 0 0);
  --surface:oklch(98% 0 0);
  --surface-foreground:var(--foreground);
  --code:var(--surface);
  --code-foreground:var(--surface-foreground);
  --code-highlight:oklch(96% 0 0);
  --code-number:oklch(0.552 0.0153 285.89);
  --selection:oklch(14.5% 0 0);
  --selection-foreground:oklch(100% 0 0);
  --success: oklch(0.61 0.13 185.87);
  --success-foreground: var(--background);
  --warning: var(--color-amber-300);
  --warning-foreground: var(--color-amber-800);
  --info: var(--color-blue-400);
  --info-foreground: var(--color-blue-900);
}

:host, :root {
  --font-sans:"Geist","Geist Fallback";
  --font-mono:"Geist Mono","Geist Mono Fallback";
  --color-red-50:oklch(97.1% .013 17.38);
  --color-red-300:oklch(80.8% .114 19.571);
  --color-red-400:oklch(70.4% .191 22.216);
  --color-red-500:oklch(63.7% .237 25.331);
  --color-red-600:oklch(57.7% .245 27.325);
  --color-red-700:oklch(50.5% .213 27.518);
  --color-red-800:oklch(44.4% .177 26.899);
  --color-red-900:oklch(39.6% .141 25.723);
  --color-orange-50:oklch(98% .016 73.684);
  --color-orange-300:oklch(83.7% .128 66.29);
  --color-orange-400:oklch(75% .183 55.934);
  --color-orange-500:oklch(70.5% .213 47.604);
  --color-orange-600:oklch(64.6% .222 41.116);
  --color-orange-700:oklch(55.3% .195 38.402);
  --color-orange-800:oklch(47% .157 37.304);
  --color-orange-900:oklch(40.8% .123 38.172);
  --color-amber-50:oklch(98.7% .022 95.277);
  --color-amber-100:oklch(96.2% .059 95.617);
  --color-amber-200:oklch(92.4% .12 95.746);
  --color-amber-300:oklch(87.9% .169 91.605);
  --color-amber-400:oklch(82.8% .189 84.429);
  --color-amber-500:oklch(76.9% .188 70.08);
  --color-amber-600:oklch(66.6% .179 58.318);
  --color-amber-700:oklch(55.5% .163 48.998);
  --color-amber-800:oklch(47.3% .137 46.201);
  --color-amber-900:oklch(41.4% .112 45.904);
  --color-amber-950:oklch(27.9% .077 45.635);
  --color-yellow-50:oklch(98.7% .026 102.212);
  --color-yellow-300:oklch(90.5% .182 98.111);
  --color-yellow-400:oklch(85.2% .199 91.936);
  --color-yellow-500:oklch(79.5% .184 86.047);
  --color-yellow-600:oklch(68.1% .162 75.834);
  --color-yellow-700:oklch(55.4% .135 66.442);
  --color-yellow-800:oklch(47.6% .114 61.907);
  --color-yellow-900:oklch(42.1% .095 57.708);
  --color-lime-50:oklch(98.6% .031 120.757);
  --color-lime-400:oklch(84.1% .238 128.85);
  --color-lime-500:oklch(76.8% .233 130.85);
  --color-lime-600:oklch(64.8% .2 131.684);
  --color-lime-900:oklch(40.5% .101 131.063);
  --color-green-50:oklch(98.2% .018 155.826);
  --color-green-100:oklch(96.2% .044 156.743);
  --color-green-300:oklch(87.1% .15 154.449);
  --color-green-400:oklch(79.2% .209 151.711);
  --color-green-500:oklch(72.3% .219 149.579);
  --color-green-600:oklch(62.7% .194 149.214);
  --color-green-700:oklch(52.7% .154 150.069);
  --color-green-800:oklch(44.8% .119 151.328);
  --color-green-900:oklch(39.3% .095 152.535);
  --color-green-950:oklch(26.6% .065 152.934);
  --color-emerald-500:oklch(69.6% .17 162.48);
  --color-teal-50:oklch(98.4% .014 180.72);
  --color-teal-300:oklch(85.5% .138 181.071);
  --color-teal-400:oklch(77.7% .152 181.912);
  --color-teal-500:oklch(70.4% .14 182.503);
  --color-teal-600:oklch(60% .118 184.704);
  --color-teal-700:oklch(51.1% .096 186.391);
  --color-teal-800:oklch(43.7% .078 188.216);
  --color-teal-900:oklch(38.6% .063 188.416);
  --color-cyan-900:oklch(39.8% .07 227.392);
  --color-sky-300:oklch(82.8% .111 230.318);
  --color-sky-500:oklch(68.5% .169 237.323);
  --color-blue-50:oklch(97% .014 254.604);
  --color-blue-100:oklch(93.2% .032 255.585);
  --color-blue-300:oklch(80.9% .105 251.813);
  --color-blue-400:oklch(70.7% .165 254.624);
  --color-blue-500:oklch(62.3% .214 259.815);
  --color-blue-600:oklch(54.6% .245 262.881);
  --color-blue-700:oklch(48.8% .243 264.376);
  --color-blue-800:oklch(42.4% .199 265.638);
  --color-blue-900:oklch(37.9% .146 265.522);
  --color-blue-950:oklch(28.2% .091 267.935);
  --color-violet-50:oklch(96.9% .016 293.756);
  --color-violet-300:oklch(81.1% .111 293.571);
  --color-violet-400:oklch(70.2% .183 293.541);
  --color-violet-500:oklch(60.6% .25 292.717);
  --color-violet-600:oklch(54.1% .281 293.009);
  --color-violet-700:oklch(49.1% .27 292.581);
  --color-violet-800:oklch(43.2% .232 292.759);
  --color-violet-900:oklch(38% .189 293.745);
  --color-purple-50:oklch(97.7% .014 308.299);
  --color-purple-300:oklch(82.7% .119 306.383);
  --color-purple-400:oklch(71.4% .203 305.504);
  --color-purple-500:oklch(62.7% .265 303.9);
  --color-purple-600:oklch(55.8% .288 302.321);
  --color-purple-700:oklch(49.6% .265 301.924);
  --color-purple-800:oklch(43.8% .218 303.724);
  --color-purple-900:oklch(38.1% .176 304.987);
  --color-pink-500:oklch(65.6% .241 354.308);
  --color-pink-600:oklch(59.2% .249 .584);
  --color-rose-50:oklch(96.9% .015 12.422);
  --color-rose-300:oklch(81% .117 11.638);
  --color-rose-400:oklch(71.2% .194 13.428);
  --color-rose-500:oklch(64.5% .246 16.439);
  --color-rose-600:oklch(58.6% .253 17.585);
  --color-rose-700:oklch(51.4% .222 16.935);
  --color-rose-800:oklch(45.5% .188 13.697);
  --color-rose-900:oklch(41% .159 10.272);
  --color-slate-50:oklch(98.4% .003 247.858);
  --color-slate-100:oklch(96.8% .007 247.896);
  --color-slate-200:oklch(92.9% .013 255.508);
  --color-slate-400:oklch(70.4% .04 256.788);
  --color-slate-500:oklch(55.4% .046 257.417);
  --color-slate-800:oklch(27.9% .041 260.031);
  --color-slate-900:oklch(20.8% .042 265.755);
  --color-slate-950:oklch(12.9% .042 264.695);
  --color-gray-50:oklch(98.5% .002 247.839);
  --color-gray-100:oklch(96.7% .003 264.542);
  --color-gray-200:oklch(92.8% .006 264.531);
  --color-gray-400:oklch(70.7% .022 261.325);
  --color-gray-500:oklch(55.1% .027 264.364);
  --color-gray-800:oklch(27.8% .033 256.848);
  --color-gray-900:oklch(21% .034 264.665);
  --color-gray-950:oklch(13% .028 261.692);
  --color-zinc-50:oklch(98.5% 0 0);
  --color-zinc-100:oklch(96.7% .001 286.375);
  --color-zinc-200:oklch(92% .004 286.32);
  --color-zinc-400:oklch(70.5% .015 286.067);
  --color-zinc-500:oklch(55.2% .016 285.938);
  --color-zinc-800:oklch(27.4% .006 286.033);
  --color-zinc-900:oklch(21% .006 285.885);
  --color-zinc-950:oklch(14.1% .005 285.823);
  --color-neutral-50:oklch(98.5% 0 0);
  --color-neutral-100:oklch(97% 0 0);
  --color-neutral-200:oklch(92.2% 0 0);
  --color-neutral-300:oklch(87% 0 0);
  --color-neutral-400:oklch(70.8% 0 0);
  --color-neutral-500:oklch(55.6% 0 0);
  --color-neutral-600:oklch(43.9% 0 0);
  --color-neutral-700:oklch(37.1% 0 0);
  --color-neutral-800:oklch(26.9% 0 0);
  --color-neutral-900:oklch(20.5% 0 0);
  --color-neutral-950:oklch(14.5% 0 0);
  --color-stone-50:oklch(98.5% .001 106.423);
  --color-stone-100:oklch(97% .001 106.424);
  --color-stone-200:oklch(92.3% .003 48.717);
  --color-stone-300:oklch(86.9% .005 56.366);
  --color-stone-400:oklch(70.9% .01 56.259);
  --color-stone-500:oklch(55.3% .013 58.071);
  --color-stone-600:oklch(44.4% .011 73.639);
  --color-stone-700:oklch(37.4% .01 67.558);
  --color-stone-800:oklch(26.8% .007 34.298);
  --color-stone-900:oklch(21.6% .006 56.043);
  --color-stone-950:oklch(14.7% .004 49.25);
  --color-black:#000;
  --color-white:#fff;
  --spacing:.25rem;
  --breakpoint-2xl:96rem;
  --container-4xs:8rem;
  --container-3xs:12rem;
  --container-2xs:16rem;
  --container-xs:20rem;
  --container-sm:24rem;
  --container-md:28rem;
  --container-lg:32rem;
  --container-xl:36rem;
  --container-2xl:42rem;
  --container-3xl:48rem;
  --container-4xl:56rem;
  --container-5xl:64rem;
  --container-6xl:72rem;
  --text-xs:.75rem;
  --text-xs--line-height:calc(1/.75);
  --text-sm:.875rem;
  --text-sm--line-height:calc(1.25/.875);
  --text-md:1rem;
  --text-md--line-height:calc(1.5/1);
  --text-lg:1.125rem;
  --text-lg--line-height:calc(1.75/1.125);
  --text-xl:1.25rem;
  --text-xl--line-height:calc(1.75/1.25);
  --text-2xl:1.5rem;
  --text-2xl--line-height:calc(2/1.5);
  --text-3xl:1.875rem;
  --text-3xl--line-height:calc(2.25/1.875);
  --text-4xl:2.25rem;
  --text-4xl--line-height:calc(2.5/2.25);
  --text-5xl:3rem;
  --text-5xl--line-height:1;
  --text-6xl:3.5rem;
  --text-6xl--line-height:1.15;
  --text-7xl:4.5rem;
  --text-7xl--line-height:1.2;
  --font-weight-normal:400;
  --font-weight-medium:500;
  --font-weight-semibold:600;
  --font-weight-bold:700;
  --font-weight-extrabold:800;
  --tracking-tighter:-.05em;
  --tracking-tight:-.025em;
  --tracking-widest:.1em;
  --leading-tight:1.25;
  --leading-snug:1.375;
  --leading-normal:1.5;
  --leading-relaxed:1.625;
  --leading-loose:2;
  --radius-xs:.125rem;
  --radius-sm:calc(var(--radius) - 4px);
  --radius-md:calc(var(--radius) - 2px);
  --radius-lg:var(--radius);
  --radius-xl:calc(var(--radius) + 4px);
  --shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;
  --ease-out:cubic-bezier(0,0,.2,1);
  --ease-in-out:cubic-bezier(.4,0,.2,1);
  --animate-spin:spin 1s linear infinite;
  --animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;
  --blur-sm:8px;
  --aspect-video:16/9;
  --default-transition-duration:.15s;
  --default-transition-timing-function:cubic-bezier(.4,0,.2,1);
  --default-font-family:var(--font-sans);
  --default-mono-font-family:var(--font-mono);
  --color-background:var(--background);
  --color-foreground:var(--foreground);
  --color-card:var(--card);
  --color-card-foreground:var(--card-foreground);
  --color-popover:var(--popover);
  --color-popover-foreground:var(--popover-foreground);
  --color-primary:var(--primary);
  --color-primary-foreground:var(--primary-foreground);
  --color-secondary:var(--secondary);
  --color-secondary-foreground:var(--secondary-foreground);
  --color-muted:var(--muted);
  --color-muted-foreground:var(--muted-foreground);
  --color-accent:var(--accent);
  --color-accent-foreground:var(--accent-foreground);
  --color-destructive:var(--destructive);
  --color-border:var(--border);
  --color-input:var(--input);
  --color-ring:var(--ring);
  --color-chart-1:var(--chart-1);
  --color-chart-2:var(--chart-2);
  --color-chart-3:var(--chart-3);
  --color-chart-4:var(--chart-4);
  --color-chart-5:var(--chart-5);
  --color-sidebar:var(--sidebar);
  --color-sidebar-foreground:var(--sidebar-foreground);
  --color-sidebar-primary:var(--sidebar-primary);
  --color-sidebar-primary-foreground:var(--sidebar-primary-foreground);
  --color-sidebar-accent:var(--sidebar-accent);
  --color-sidebar-accent-foreground:var(--sidebar-accent-foreground);
  --color-sidebar-border:var(--sidebar-border);
  --color-sidebar-ring:var(--sidebar-ring);
  --color-code:var(--code);
  --color-code-foreground:var(--code-foreground);
  --color-code-highlight:var(--code-highlight);
  --color-code-number:var(--code-number) ;
}

*, ::backdrop, :after, :before {
  box-sizing: border-box;
  border: 0 solid;
  margin: 0;
  padding: 0;
}

::file-selector-button {
  box-sizing: border-box;
  border: 0 solid;
  margin: 0;
  padding: 0;
}

:host, html {
  -webkit-text-size-adjust: 100%;
  tab-size: 4;
  line-height: 1.5;
  font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
  font-feature-settings: var(--default-font-feature-settings, normal);
  font-variation-settings: var(--default-font-variation-settings, normal);
  -webkit-tap-highlight-color: transparent;
}

hr {
  height: 0;
  color: inherit;
  border-top-width: 1px;
}

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
}

a {
  color: inherit;
  -webkit-text-decoration: inherit;
  text-decoration: inherit;
}

b, strong {
  font-weight: bolder;
}

code, kbd, pre, samp {
  font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
  font-feature-settings: var(--default-mono-font-feature-settings, normal);
  font-variation-settings: var(--default-mono-font-variation-settings, normal);
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub, sup {
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
  position: relative;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}

:-moz-focusring {
  outline: auto;
}

progress {
  vertical-align: baseline;
}

summary {
  display: list-item;
}

menu,
ol,
ul {
  list-style: none;
}

audio,
canvas,
embed,
iframe,
img,
object,
svg,
video {
  vertical-align: middle;
  display: block;
}

img,
video {
  max-width: 100%;
  height: auto;
}

button,
input,
optgroup,
select,
textarea {
  font: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  letter-spacing: inherit;
  color: inherit;
  opacity: 1;
  background-color: rgba(0, 0, 0, 0);
  border-radius: 0;
}

::file-selector-button {
  font: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  letter-spacing: inherit;
  color: inherit;
  opacity: 1;
  background-color: rgba(0, 0, 0, 0);
  border-radius: 0;
}

:where(select:is([multiple],
[size])) optgroup {
  font-weight: bolder;
}

:where(select:is([multiple],
[size])) optgroup option {
  padding-inline-start: 20px;
}

::file-selector-button {
  margin-inline-end: 4px;
}

::placeholder {
  opacity: 1;
}

@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
  ::placeholder {
    color: currentColor;
  }
  @supports (color: color-mix(in lab, red, red)) {
    ::placeholder {
      color: color-mix(in oklab, currentcolor 50%, transparent);
    }
  }
}
textarea {
  resize: vertical;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-date-and-time-value {
  min-height: 1lh;
  text-align: inherit;
}

::-webkit-datetime-edit {
  display: inline-flex;
}

::-webkit-datetime-edit-fields-wrapper {
  padding: 0;
}

::-webkit-datetime-edit,
::-webkit-datetime-edit-year-field {
  padding-block: 0;
}

::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field {
  padding-block: 0;
}

::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-minute-field {
  padding-block: 0;
}

::-webkit-datetime-edit-millisecond-field,
::-webkit-datetime-edit-second-field {
  padding-block: 0;
}

::-webkit-datetime-edit-meridiem-field {
  padding-block: 0;
}

:-moz-ui-invalid {
  box-shadow: none;
}

button,
input:where([type=button],
[type=reset],
[type=submit]) {
  appearance: button;
}

::file-selector-button {
  appearance: button;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

[hidden]:where(:not([hidden=until-found])) {
  display: none !important;
}

* {
  border-color: var(--border);
  outline-color: var(--ring);
}

@supports (color: color-mix(in lab, red, red)) {
  * {
    outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
  }
}
::selection {
  background-color: var(--selection);
  color: var(--selection-foreground);
}

@supports (font: -apple-system-body) and (appearance: none) {
  @media (min-width: 1800px) {
    [data-wrapper] {
      border-top-style: var(--tw-border-style);
      border-top-width: 1px;
    }
  }
}
a:active, button:active {
  opacity: 0.6;
}

@media (min-width: 48rem) {
  a:active, button:active {
    opacity: 1;
  }
}
a {
  cursor: pointer;
}

html {
  scroll-behavior: smooth;
}

html, body {
  min-width: 100%;
  min-height: 100%;
  width: 100%;
  height: 100%;
}

main, main > section, main > article {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
  padding-inline: calc(var(--spacing) * 3);
  width: 100%;
}

body {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: start;
  overflow-x: hidden;
  overflow-y: auto;
  font-synthesis-weight: none;
  text-rendering: optimizeLegibility;
  color: var(--foreground);
  background-color: var(--background);
  text-underline-offset: 2px;
}

hr {
  border-top-width: 1px;
  border-color: var(--border);
  border-style: var(--tw-border-style);
  margin-block: calc(var(--spacing) * 1);
  outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
}

label:has(input[type=checkbox]) {
  user-select: none;
  cursor: pointer;
}

.blob {
  --pulse-size: 0.8rem;
  --pulse-color: var(--primary);
  background: var(--pulse-color);
  border-radius: 50%;
  height: var(--pulse-size);
  width: var(--pulse-size);
  box-shadow: 0 0 0 0 var(--pulse-color);
  transform: scale(1);
  animation: pulse 2s infinite;
}
.blob.floating-blob {
  --pulse-size: 1.5rem;
  --pulse-radial: calc(var(--spacing) * var(--card-spacing));
  border-radius: 5px;
  rotate: calc(var(--rotation) * -1);
  display: inline-block;
  background-color: var(--ring);
  box-shadow: 0 0 0 var(--pulse-radial) var(--background);
  transform: scale(0.5);
  animation: none;
  z-index: 1;
  position: absolute;
  top: calc(var(--pulse-radial) * 0.1);
  left: calc(0px - (var(--pulse-size) - var(--pulse-radial) / 2));
}

@keyframes pulse {
  0% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 color-mix(in oklab, var(--pulse-color) 50%, transparent);
  }
  70% {
    transform: scale(0.95);
    box-shadow: 0 0 0 8px rgba(46, 204, 113, 0);
  }
  100% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(46, 204, 113, 0);
  }
}
@keyframes accordion-down {
  0% {
    height: 0;
  }
  to {
    height: var(--radix-accordion-content-height, var(--bits-accordion-content-height, var(--reka-accordion-content-height, var(--kb-accordion-content-height, auto))));
  }
}
@keyframes accordion-up {
  0% {
    height: var(--radix-accordion-content-height, var(--bits-accordion-content-height, var(--reka-accordion-content-height, var(--kb-accordion-content-height, auto))));
  }
  to {
    height: 0;
  }
}
@keyframes caret-blink {
  0%, 70%, to {
    opacity: 1;
  }
  20%, 50% {
    opacity: 0;
  }
}
@keyframes spin {
  to {
    transform: rotate(1turn);
  }
}
.animate-spin {
  animation: var(--animate-spin);
}

.sepatator {
  position: relative;
  width: 100%;
  border-width: 1px;
  border-color: var(--border);
  border-style: var(--tw-border-style);
  border-radius: calc(var(--radius) + var(--card-radius));
}
.sepatator > * {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  background: var(--background);
  padding: 0 calc(var(--spacing) * 1);
}

.skeleton {
  --skeleton-spacing: var(--spacing);
  --skeleton-radius: var(--radius);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: calc(var(--skeleton-spacing) * 2);
  border-radius: calc(var(--skeleton-radius));
  color: var(--muted-foreground);
  background-color: var(--muted);
  text-align: center;
  vertical-align: middle;
}

.skeleton-logo {
  rotate: calc(var(--rotation) * -1);
  display: inline-block;
  width: var(--image-container, 3.5rem);
  max-width: var(--image-container, 3.5rem);
  height: var(--image-container, 3.5rem);
  max-height: var(--image-container, 3.5rem);
  border-radius: calc(var(--radius));
  color: var(--muted-foreground);
  background-color: var(--muted);
  text-align: center;
  vertical-align: middle;
  font-size: var(--text-xl);
  line-height: var(--image-container, 3.5rem);
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}

.action-input {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
}
.action-input > .content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 3);
  padding: calc(var(--spacing) * 1);
  padding-left: calc(var(--spacing) * 4);
  width: 100%;
  height: calc(var(--spacing) * 12);
  border-color: var(--ring);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-radius: calc(var(--radius) - 2px + var(--spacing) * 0.5);
  outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
}
.action-input > .content svg {
  display: block;
  flex-shrink: 0;
  pointer-events: none;
  width: calc(var(--spacing) * 4);
  height: calc(var(--spacing) * 4);
  opacity: 0.7;
}
.action-input > .content:has(> label) {
  margin-top: calc(var(--spacing) * 8);
}
.action-input > .content > label {
  user-select: none;
  position: absolute;
  top: 0;
  left: 0;
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}
.action-input > .content > input {
  border: 0;
  width: 100%;
}
.action-input > .content > input::placeholder {
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}
.action-input > .content > input:focus, .action-input > .content > input:focus-visible {
  outline: none;
  border: none;
}
.action-input > .content:has(> .pre-text) {
  gap: 0;
}
.action-input > .content:has(> .pre-text) > input, .action-input > .content:has(> .pre-text) > .pre-icon {
  margin-right: calc(var(--spacing) * 3);
}
.action-input:has(.footer .error:not([hidden])) .content {
  color: var(--destructive);
  border-color: var(--destructive);
  outline-color: color-mix(in oklab, var(--destructive) 70%, transparent);
}
.action-input:has(.footer .error:not([hidden])) .content > input::placeholder {
  color: color-mix(in oklab, var(--destructive) 70%, transparent);
}
.action-input .inner-button, .action-input .outter-button {
  cursor: pointer;
  padding-block: calc(var(--spacing) * 3);
  padding-inline: calc(var(--spacing) * 8);
}
.action-input > .footer {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  text-align: left;
}
.action-input > .footer .error {
  padding-left: calc(var(--spacing) * 2);
  color: color-mix(in oklab, var(--destructive) 70%, transparent);
}

.action-file {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
}
.action-file > .content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 3);
  padding: calc(var(--spacing) * 1);
  padding-left: calc(var(--spacing) * 4);
  width: 100%;
  height: calc(var(--spacing) * 12);
  border-color: var(--ring);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-radius: calc(var(--radius) - 2px + var(--spacing) * 0.5);
  outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
}
.action-file > .content svg {
  display: block;
  flex-shrink: 0;
  pointer-events: none;
  width: calc(var(--spacing) * 4);
  height: calc(var(--spacing) * 4);
  opacity: 0.7;
}
.action-file > .content:has(> label) {
  margin-top: calc(var(--spacing) * 8);
}
.action-file > .content > label {
  user-select: none;
  position: absolute;
  top: 0;
  left: 0;
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}
.action-file > .content > input {
  border: 0;
  width: 100%;
}
.action-file > .content > input::placeholder {
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}
.action-file > .content > input::file-selector-button {
  cursor: pointer;
  white-space: nowrap;
  outline-style: none;
  text-decoration: none;
  box-sizing: border-box;
  padding-block: calc(var(--spacing) * 2);
  padding-inline: calc(var(--spacing) * 4);
  border-radius: calc(var(--radius) - 2px);
  color: var(--secondary-foreground);
  fill: var(--secondary-foreground);
  background-color: var(--secondary);
}
.action-file > .content > input:focus, .action-file > .content > input:focus-visible {
  outline: none;
  border: none;
}
.action-file > .content:has(> .pre-text) {
  gap: 0;
}
.action-file > .content:has(> .pre-text) > input, .action-file > .content:has(> .pre-text) > .pre-icon {
  margin-right: calc(var(--spacing) * 3);
}
.action-file:has(.footer .error:not([hidden])) .content {
  color: var(--destructive);
  border-color: var(--destructive);
  outline-color: color-mix(in oklab, var(--destructive) 70%, transparent);
}
.action-file:has(.footer .error:not([hidden])) .content > input::placeholder {
  color: color-mix(in oklab, var(--destructive) 70%, transparent);
}
.action-file .inner-button, .action-file .outter-button {
  cursor: pointer;
  padding-block: calc(var(--spacing) * 3);
  padding-inline: calc(var(--spacing) * 8);
}
.action-file > .footer {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  text-align: left;
}
.action-file > .footer .error {
  padding-left: calc(var(--spacing) * 2);
  color: color-mix(in oklab, var(--destructive) 70%, transparent);
}

.action-area {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
}
.action-area > .content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 3);
  width: 100%;
}
.action-area > .content svg {
  display: block;
  flex-shrink: 0;
  pointer-events: none;
  width: calc(var(--spacing) * 4);
  height: calc(var(--spacing) * 4);
  opacity: 0.7;
}
.action-area > .content:has(> label) {
  margin-top: calc(var(--spacing) * 8);
}
.action-area > .content > label {
  user-select: none;
  position: absolute;
  top: 0;
  left: 0;
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}
.action-area > .content > textarea {
  resize: vertical;
  border-color: var(--ring);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-radius: calc(var(--radius) - 2px + var(--spacing) * 0.5);
  padding: calc(var(--spacing) * 4);
  min-height: calc(var(--spacing) * 26);
  width: 100%;
}
.action-area:has(.footer .error:not([hidden])) .content {
  color: var(--destructive);
  border-color: var(--destructive);
  outline-color: color-mix(in oklab, var(--destructive) 70%, transparent);
}
.action-area .inner-button, .action-area .outter-button {
  cursor: pointer;
  padding-block: calc(var(--spacing) * 3);
  padding-inline: calc(var(--spacing) * 8);
}
.action-area > .footer {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  text-align: left;
}
.action-area > .footer .error {
  padding-left: calc(var(--spacing) * 2);
  color: color-mix(in oklab, var(--destructive) 70%, transparent);
}

.action-select {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
}
.action-select > .content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 3);
  padding: calc(var(--spacing) * 1);
  padding-left: calc(var(--spacing) * 4);
  width: 100%;
  height: calc(var(--spacing) * 12);
  border-color: var(--ring);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-radius: calc(var(--radius) - 2px + var(--spacing) * 0.5);
  outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
}
.action-select > .content svg {
  display: block;
  flex-shrink: 0;
  pointer-events: none;
  width: calc(var(--spacing) * 4);
  height: calc(var(--spacing) * 4);
  opacity: 0.7;
}
.action-select > .content:has(> label) {
  margin-top: calc(var(--spacing) * 8);
}
.action-select > .content > label {
  user-select: none;
  position: absolute;
  top: 0;
  left: 0;
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}
.action-select > .content > select {
  border: 0;
  width: 100%;
  cursor: pointer;
}
.action-select > .content > select:focus, .action-select > .content > select:focus-visible {
  outline: none;
  border: none;
}
.action-select > .content:has(> .pre-text) {
  gap: 0;
}
.action-select > .content:has(> .pre-text) > select, .action-select > .content:has(> .pre-text) > .pre-icon {
  margin-right: calc(var(--spacing) * 3);
}
.action-select:has(.footer .error:not([hidden])) .content {
  color: var(--destructive);
  border-color: var(--destructive);
  outline-color: color-mix(in oklab, var(--destructive) 70%, transparent);
}
.action-select .inner-button, .action-select .outter-button {
  cursor: pointer;
  padding-block: calc(var(--spacing) * 3);
  padding-inline: calc(var(--spacing) * 8);
}
.action-select > .footer {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  text-align: left;
}
.action-select > .footer .error {
  padding-left: calc(var(--spacing) * 2);
  color: color-mix(in oklab, var(--destructive) 70%, transparent);
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 2);
  color: var(--primary-foreground);
  fill: var(--primary-foreground);
  background-color: var(--primary);
  cursor: pointer;
  white-space: nowrap;
  outline-style: none;
  text-decoration: none;
  box-sizing: border-box;
  padding-block: calc(var(--spacing) * 2);
  padding-inline: calc(var(--spacing) * 4);
  border-radius: calc(var(--radius) - 2px);
  font-size: var(--text-sm);
  font-weight: var(--font-weight-medium);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  --tw-duration: 0s;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.button svg {
  display: block;
  flex-shrink: 0;
  pointer-events: none;
  width: calc(var(--spacing) * 4);
  height: calc(var(--spacing) * 4);
  rotate: calc(var(--rotation) * -1);
}
.button svg.loader {
  display: none;
}
.button:hover {
  color: var(--primary-foreground);
  fill: var(--primary-foreground);
  background-color: color-mix(in oklab, var(--primary) 90%, transparent);
}
.button.button-secondary {
  color: var(--secondary-foreground);
  fill: var(--secondary-foreground);
  background-color: var(--secondary);
}
.button.button-secondary:hover {
  background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
}
.button.button-destructive {
  color: var(--text-white);
  fill: var(--text-white);
  background-color: var(--destructive);
}
.button.button-destructive:hover {
  background-color: color-mix(in oklab, var(--destructive) 90%, transparent);
}
.button.button-outline, .button.button-with-icon {
  color: var(--foreground);
  fill: var(--foreground);
  background-color: var(--background);
  border-color: var(--ring);
  border-style: var(--tw-border-style);
  border-width: 1px;
  outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
}
.button.button-outline:hover, .button.button-with-icon:hover {
  color: var(--accent-foreground);
  background-color: var(--accent);
}
.button.button-ghost {
  color: var(--foreground);
  fill: var(--foreground);
  background-color: var(--background);
}
.button.button-ghost:hover {
  color: var(--accent-foreground);
  fill: var(--accent-foreground);
  background-color: var(--accent);
}
.button.button-link {
  color: var(--foreground);
  background-color: transparent;
}
.button.button-link:hover {
  text-decoration-line: underline;
}
.button.button-footer {
  font-family: "Geist Mono";
  color: var(--muted);
  background-color: transparent;
  padding: 0;
}
.button.button-footer:hover {
  text-decoration-line: underline;
}
.button.button-option {
  color: var(--foreground);
  background-color: transparent;
  padding-inline: 0;
}
.button.button-option.destructive {
  color: var(--destructive);
}
.button.button-option:hover {
  text-decoration-line: underline;
}
.button.button-icon {
  color: var(--foreground);
  fill: var(--foreground);
  background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
}
.button.button-loading {
  color: var(--primary-foreground);
  background-color: var(--primary);
  opacity: 0.5;
  pointer-events: none;
}
.button.button-loading > svg:not(.loader) {
  display: none;
}
.button.button-loading > svg.loader {
  display: inline-flex;
  animation: var(--animate-spin);
}
.button.button-sidebar {
  color: var(--foreground);
  fill: var(--foreground);
  background-color: transparent;
  font-weight: var(--font-weight-normal);
}
.button.button-sidebar > .skeleton {
  color: var(--primary);
  fill: var(--primary);
  background-color: var(--secondary);
}
.button.button-sidebar:hover {
  color: var(--primary-foreground);
  fill: var(--primary-foreground);
  font-weight: var(--font-weight-medium);
  background-color: color-mix(in oklab, var(--primary) 40%, white);
}
.button.button-sidebar:hover .skeleton {
  background-color: var(--primary);
  color: color-mix(in oklab, var(--primary-foreground) 100%, transparent);
}
.button.button-leading {
  color: var(--primary-foreground);
  fill: var(--primary-foreground);
  font-weight: var(--font-weight-medium);
  background-color: color-mix(in oklab, var(--primary) 60%, white);
  rotate: calc(var(--rotation) * -1);
}
.button.button-leading .skeleton {
  background-color: var(--primary);
  color: color-mix(in oklab, var(--primary-foreground) 100%, white);
}
.button.button-dense {
  padding-block: calc(var(--spacing) * 1.7);
  padding-inline: calc(var(--spacing) * 2);
  border-radius: calc(var(--radius) - 6px);
  opacity: 0.9;
}
.button.button-dense:hover {
  opacity: 1;
}
.button.button-compensation {
  color: var(--success-foreground);
  fill: var(--success-foreground);
  background-color: var(--success);
}
.button.button-featured {
  color: var(--success-foreground);
  fill: var(--success-foreground);
  background-color: var(--success);
}
.button.button-requeriment {
  color: var(--accent);
  background-color: var(--accent-foreground);
}
.button.button-skill {
  color: var(--secondary-foreground);
  background-color: var(--secondary);
}
.button.button-hero {
  color: oklch(26.982% 0.00553 285.95deg);
  background-color: oklch(85.71% 0.1593 162.65deg);
  rotate: calc(var(--rotation) * 1);
}
.button.button-hero svg {
  width: calc(var(--spacing) * 8);
  height: calc(var(--spacing) * 8);
  rotate: calc(var(--rotation) * -1);
}
.button.button-second-hero {
  color: oklch(97% 0 0deg);
  background-color: oklch(64.586% 0.23797 331.644deg);
  rotate: calc(var(--rotation) * 1);
}
.button.button-second-hero svg {
  width: calc(var(--spacing) * 8);
  height: calc(var(--spacing) * 8);
  rotate: calc(var(--rotation) * -1);
}
.button.active {
  font-weight: var(--font-weight-semibold);
  background-color: color-mix(in oklab, var(--primary) 10%, transparent);
}
.button.active:hover {
  text-decoration: none;
  font-weight: var(--font-weight-semibold);
  background-color: color-mix(in oklab, var(--primary) 20%, transparent);
}

.tag {
  color: var(--code-number);
  background-color: transparent;
}
.tag:hover {
  text-decoration-line: underline;
}

.badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  gap: calc(var(--spacing) * 1);
  color: var(--primary-foreground);
  background-color: var(--primary);
  white-space: nowrap;
  outline-style: none;
  text-decoration: none;
  box-sizing: border-box;
  overflow: hidden;
  padding-block: calc(var(--spacing) * 0.5);
  padding-inline: calc(var(--spacing) * 2);
  border-radius: calc(var(--radius) - 2px);
  font-size: var(--text-sm);
  font-weight: var(--font-weight-medium);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  --tw-duration: 0s;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.badge > svg {
  display: block;
  flex-shrink: 0;
  pointer-events: none;
  width: calc(var(--spacing) * 3);
  height: calc(var(--spacing) * 3);
}
.badge.badge-secondary {
  color: var(--secondary-foreground);
  background-color: var(--secondary);
}
.badge.badge-destructive {
  color: var(--text-white);
  background-color: var(--destructive);
}
.badge.badge-outline, .badge.badge-with-icon {
  color: var(--foreground);
  background-color: var(--background);
  border-color: var(--border);
  border-style: var(--tw-border-style);
  border-width: 1px;
  outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
}
.badge.badge-icon {
  color: var(--foreground);
  background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
}

dialog:not(.dropdown) {
  position: relative;
  margin: 25vh auto;
  border: none !important;
  border-radius: calc(var(--radius));
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  max-width: var(--container-2xl);
  padding: calc(var(--spacing) * 10);
  animation: enter var(--tw-animation-duration, var(--tw-duration, 0.15s)) var(--tw-ease, ease) var(--tw-animation-delay, 0s) var(--tw-animation-iteration-count, 1) var(--tw-animation-direction, normal) var(--tw-animation-fill-mode, none);
}
dialog:not(.dropdown)[open] {
  height: fit-content;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
dialog:not(.dropdown)::backdrop {
  background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
}
dialog:not(.dropdown) > button.close {
  position: absolute;
  top: calc(var(--spacing) * 6);
  right: calc(var(--spacing) * 6);
}
dialog:not(.dropdown) > .dialog-footer {
  display: flex;
  justify-content: flex-end;
  gap: calc(var(--spacing) * 2);
  padding-top: calc(var(--spacing) * 4);
}

.job-item {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 0.8);
  color: var(--muted);
  padding-bottom: calc(var(--spacing) * var(--card-spacing, 5));
}
.job-item h4, .job-item h4 a {
  font-family: "Geist";
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-md--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}
.job-item h4 a, .job-item h4 a a {
  white-space: wrap;
  padding-right: calc(var(--spacing) * 2);
}
.job-item .time {
  white-space: nowrap;
}
.job-item > div {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: calc(var(--spacing) * var(--card-gap, 2));
}
.job-item .tags {
  flex-wrap: wrap;
  padding-top: calc(var(--spacing) * 0.8);
}
.job-item .tags .button {
  font-size: var(--text-xs);
}
.job-item p {
  font-family: "Geist";
}

a.card {
  cursor: pointer;
}

.card {
  --card-spacing: 6;
  --card-radius: 4px;
  --card-gap: 2;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: calc(var(--spacing) * var(--card-gap));
  width: 100%;
  max-width: var(--container-md);
  color: var(--foreground);
  padding-block: calc(var(--spacing) * var(--card-spacing));
  border-width: 1px;
  border-color: var(--border);
  border-style: var(--tw-border-style);
  border-radius: calc(var(--radius) + var(--card-radius));
  outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.card.row {
  flex-direction: row;
}
.card.size-lg {
  max-width: var(--container-lg);
}
.card.inverse {
  color: var(--background);
  background-color: var(--foreground);
}
.card > div {
  gap: calc(var(--spacing) * var(--card-gap));
  padding-inline: calc(var(--spacing) * var(--card-spacing));
}
.card .card-title {
  --tw-leading: 1.5;
  line-height: 1.5;
  font-size: var(--text-lg);
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}
.card .card-description {
  color: var(--muted-foreground);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}

.card.company {
  --card-gap: 2;
  --card-spacing: 5;
  --card-radius: 1px;
  width: 100%;
  min-width: var(--container-2xs);
  max-width: var(--container-2xl);
  border: none;
  user-select: none;
}
.card.company > div {
  padding-inline: 0;
}
.card.company .excerpt {
  font-family: "Geist";
  font-size: var(--text-md);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.card.company .job-item {
  border-left-width: 2px;
  border-color: var(--muted-foreground);
  margin-left: calc(var(--image-container, 4rem) * 0.35);
  padding-left: calc(var(--spacing) * var(--card-spacing, 5));
}

.company-header {
  --image-container: 3.5rem;
  display: flex;
  justify-content: start;
  align-items: start;
  gap: calc(var(--spacing) * 1.5);
}
.company-header > .container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: calc(var(--spacing) * 1);
}
.company-header .title {
  font-family: "Outfit";
  text-align: start;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-md--line-height));
  line-height: var(--tw-leading, var(--text-md--line-height));
}
.company-header .title > a {
  padding-block: 0;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-md--line-height));
}
.company-header .subtitle {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--muted-foreground);
  font-weight: var(--font-weight-normal);
  display: flex;
  gap: calc(var(--spacing) * 2);
}
.company-header.company-header-sm {
  --image-container: 1.5rem;
}
.company-header.company-header-sm .title, .company-header.company-header-sm .title > a {
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  font-size: var(--text-md);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.company-header.company-header-sm .subtitle {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--muted-foreground);
  font-weight: var(--font-weight-normal);
}
.company-header.company-header-md {
  --image-container: 3rem;
}
.company-header.company-header-md .title, .company-header.company-header-md .title > a {
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  font-size: var(--text-md);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.company-header.company-header-md .subtitle {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--muted-foreground);
  font-weight: var(--font-weight-normal);
}
.company-header.company-header-lg {
  --image-container: 3rem;
}
.company-header.company-header-lg .title, .company-header.company-header-lg .title > a {
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  font-size: var(--text-md);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.company-header.company-header-lg .subtitle {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--muted-foreground);
  font-weight: var(--font-weight-normal);
}
.company-header.company-header-xl {
  --image-container: 4.5rem;
}
.company-header.company-header-xl .title, .company-header.company-header-xl .title > a {
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}
.company-header.inline > .container {
  flex-direction: row;
  justify-content: start;
  align-items: center;
}
.company-header.inline > .container > * {
  display: inline-flex;
}

.avatar {
  position: relative;
  display: inline-flex;
  width: calc(var(--spacing) * 8);
  height: calc(var(--spacing) * 8);
}
.avatar > .avatar-image-container {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 100%;
  width: 100%;
  height: 100%;
}
.avatar > .avatar-image-container:has(> .avatar-skeleton) {
  background-color: var(--foreground);
}
.avatar > .avatar-image-container > .avatar-image {
  width: 100%;
  height: 100%;
  aspect-ratio: 1;
}
.avatar > .avatar-image-container > .avatar-skeleton {
  display: inline;
  color: var(--background);
  text-align: center;
  vertical-align: middle;
  font-size: var(--text-sm);
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.avatar > .avatar-fallback {
  position: relative;
  bottom: 0;
  right: 0;
}
.avatar.avatar-rounded-sm > .avatar-image-container {
  border-radius: var(--radius-sm);
}

.markdown-block {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
}

.highlight {
  display: flex;
  align-items: center;
}
.highlight > .relative {
  position: relative;
}
.highlight > .relative > .background {
  position: absolute;
  display: block;
  height: 50%;
  inset: calc(var(--spacing) * 2.4);
  left: calc(var(--spacing));
  bottom: 0;
  background-color: color-mix(in oklab, var(--primary) 25%, transparent);
}
.highlight > .relative > .text {
  z-index: 2;
}

.floating-footer {
  display: none;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 999;
  width: 100%;
  background-color: var(--primary);
  border-radius: calc(var(--radius));
  padding: calc(var(--spacing) * 2);
}
@media (max-width: 768px) {
  .floating-footer.on-tablet {
    display: flex;
  }
}
@media (max-width: 640px) {
  .floating-footer.on-portrait {
    display: flex;
  }
}
@media (max-width: 480px) {
  .floating-footer {
    display: flex;
  }
}

.company-table {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
}
.company-table .companies {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(var(--spacing) * 1) calc(var(--spacing) * 10);
}
.company-table .companies .card.company {
  padding-block: calc(var(--spacing) * 1);
}
@media (max-width: 1024px) {
  .company-table .companies {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 768px) {
  .company-table .companies {
    grid-template-columns: repeat(1, 1fr);
  }
}

.social-group {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  gap: calc(var(--spacing) * 1);
}
.social-group .button {
  padding: calc(var(--spacing) * 1);
}

.accordion {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
  width: 100%;
}
.accordion > .accordion-item:not(:last-child) {
  border-bottom: 1px solid var(--border);
  padding-bottom: calc(var(--spacing) * 2);
}
.accordion > .accordion-item {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
  width: 100%;
}
.accordion > .accordion-item > .accordion-trigger {
  display: flex;
  width: 100%;
}
.accordion > .accordion-item > .accordion-trigger > button {
  text-align: start;
  align-items: center;
  justify-content: space-between;
  background-color: transparent;
  width: 100%;
  white-space: normal;
  color: var(--foreground);
  fill: var(--foreground);
}
.accordion > .accordion-item > .accordion-trigger > button > .icon {
  --tw-duration: .2s;
  transition-duration: 0.2s;
  translate: var(--tw-translate-x) var(--tw-translate-y);
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.accordion > .accordion-item > .accordion-trigger > button > .icon.open {
  rotate: 180deg;
}
.accordion > .accordion-item > .accordion-content {
  display: none;
  width: 100%;
  padding-inline: calc(var(--spacing) * 6);
}
.accordion > .accordion-item > .accordion-content.open {
  display: flex;
}

body > header {
  display: grid;
  grid-template-areas: "hamburger logo menu actions options profile";
  grid-template-columns: auto 1fr auto auto auto auto;
  gap: calc(var(--spacing));
  padding-block: calc(var(--spacing) * 4);
  padding-inline: calc(var(--spacing) * 4);
  border-radius: calc(var(--radius));
  background-color: var(--background);
  font-family: "Outfit", sans-serif;
  width: 100%;
  max-width: 1280px;
}
@media (max-width: 1024px) {
  body > header {
    max-width: 1024px;
  }
}
@media (max-width: 768px) {
  body > header {
    max-width: 768px;
  }
}
@media (max-width: 640px) {
  body > header {
    max-width: 768px;
  }
}
@media (max-width: 480px) {
  body > header {
    max-width: 640px;
  }
}
@media (max-width: 768px) {
  body > header {
    padding-block: calc(var(--spacing) * 2);
    padding-inline: calc(var(--spacing) * 2);
    grid-template-areas: "hamburger logo options profile" "menu menu menu menu" "actions actions actions actions";
    grid-template-columns: auto 1fr auto auto;
  }
}
body > header > .root {
  grid-area: logo;
  justify-content: start;
}
@media (max-width: 768px) {
  body > header > .root {
    justify-content: center;
  }
}
body > header > .menu {
  grid-area: menu;
  display: flex;
}
body > header > .menu > .sections {
  display: flex;
  width: 100%;
  gap: calc(var(--spacing) * 4);
}
@media (max-width: 768px) {
  body > header > .menu > .sections {
    flex-direction: column;
  }
}
body > header > .menu > .sections > .items {
  grid-area: items;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1);
}
@media (max-width: 768px) {
  body > header > .menu > .sections > .items {
    flex-direction: column;
  }
}
body > header > .menu > .sections > .cta {
  grid-area: cta;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 6);
  text-align: center;
}
body > header > .menu > .sections > .cta .title {
  display: none;
  margin-top: calc(var(--spacing) * 6);
  opacity: 0.7;
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
}
body > header > .menu > .sections > .cta > .group {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1);
}
@media (max-width: 768px) {
  body > header > .menu > .sections > .cta > .group {
    flex-wrap: wrap;
  }
}
body > header > .actions {
  grid-area: actions;
  display: flex;
}
body > header > .options {
  grid-area: options;
  display: flex;
}
body > header > .profile {
  grid-area: profile;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
body > header .item .skeleton {
  display: none;
}
body > header .item .trailing-icon {
  display: none;
  margin-left: auto;
}
body > header .menu-toggle {
  grid-area: hamburger;
  display: none;
  padding: 0;
  cursor: pointer;
  margin-left: auto;
}
@media (max-width: 768px) {
  body > header .menu-toggle {
    display: inline-flex;
  }
}

body.open {
  overflow: hidden;
}
body.open > *:not(header) {
  display: none;
}
body.open > header {
  height: 100%;
  height: 100vh;
  min-height: 100vh;
  align-content: start;
}
body.open > header .sections {
  margin-top: calc(var(--spacing) * 4);
}
body.open > header .menu-toggle > .hamburger-icon {
  rotate: 45deg;
  stroke-dashoffset: -68px;
}
body.open > header .menu > .sections > .cta > .title {
  display: block;
}
body.open > header .item {
  width: 100%;
}
body.open > header .item a {
  width: 100%;
}
body.open > header .item .skeleton, body.open > header .item .trailing-icon {
  display: inline-flex;
}

@media (max-width: 768px) {
  body:not(.open) header .menu {
    display: none;
  }
}

section.hero {
  grid-area: hero;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 2rem auto;
  text-align: center;
  max-width: var(--container-3xl);
  padding-block: calc(var(--spacing) * 2);
  padding-inline: calc(var(--spacing) * 4);
}
section.hero > a {
  padding-inline: 0.4rem;
  padding-block: 0.2rem;
}
@media (max-width: 480px) {
  section.hero > a .text {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    opacity: 0.5;
  }
}
section.hero > a .blob {
  display: none;
  --pulse-size: .5rem;
}
@media (max-width: 480px) {
  section.hero > a .blob {
    display: block;
  }
}
@media (max-width: 480px) {
  section.hero > a .badge {
    display: none;
  }
}
section.hero h1 {
  font-family: "Outfit";
  font-size: var(--text-5xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
}
@media (max-width: 480px) {
  section.hero h1 {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    text-align: start;
  }
}
section.hero p {
  opacity: 0.7;
  font-family: "Outfit";
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-md--line-height));
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
}
@media (max-width: 480px) {
  section.hero p {
    font-size: var(--text-md);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: var(--text-md--line-height);
    letter-spacing: var(--tracking-tighter);
    padding-block: calc(var(--spacing));
  }
}
section.hero .quick-filters {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 6);
}
@media (max-width: 480px) {
  section.hero .quick-filters {
    align-items: start;
    justify-content: start;
    gap: calc(var(--spacing) * 1);
  }
  section.hero .quick-filters .button {
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1);
  }
}
@media (max-width: 480px) {
  section.hero {
    margin: 0;
    text-align: start;
    align-items: start;
    padding-block: calc(var(--spacing) * 2);
    padding-inline: calc(var(--spacing) * 3);
  }
  section.hero .button-hero, section.hero .button-second-hero {
    padding-block: calc(var(--spacing) * 1.5);
    padding-inline: calc(var(--spacing) * 3);
  }
  section.hero .button-hero svg, section.hero .button-second-hero svg {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
  }
}

section.about {
  grid-area: about;
  padding: calc(var(--spacing) * 6);
  border-radius: calc(var(--radius) * 2);
  color: var(--warning-foreground);
  background-color: var(--warning);
}
section.about strong {
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}

section.author {
  grid-area: author;
}

main.home > section.featured {
  grid-area: featured;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: start;
  align-self: start;
  padding-bottom: calc(var(--spacing) * 8);
  padding-inline: calc(var(--spacing) * 1);
  max-width: var(--container-xl);
}
main.home > section.featured > * {
  width: 100%;
  min-width: var(--container-2xs);
  max-width: var(--container-2xl);
}
main.home > section.featured .positions {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-md--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  padding-inline: calc(var(--spacing) * 4);
}
main.home > section.featured .updated {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
  padding-inline: calc(var(--spacing) * 4);
  opacity: 0.5;
}

section.specialities {
  grid-area: specialities;
  width: 100%;
  padding-inline: calc(var(--spacing) * 1);
}
section.specialities li a {
  display: flex;
  justify-content: space-between;
}

section.newsletter {
  grid-area: newsletter;
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 3);
  width: 100%;
  padding-inline: calc(var(--spacing) * 1);
  border-radius: calc(var(--radius) * 2);
  padding-inline: calc(var(--spacing) * 6);
  padding-block: calc(var(--spacing) * 8);
  color: var(--background);
  background-color: var(--foreground);
}
section.newsletter h2 {
  font-family: "Albert Sans";
}
section.newsletter .action-input > .content {
  color: var(--foreground);
  background-color: var(--border);
}

.dark section.newsletter {
  color: var(--foreground);
  background-color: var(--border);
}

.dashboard-excerpt {
  border-width: 1px;
  border-color: var(--primary);
  border-style: var(--tw-border-style);
  border-radius: calc(var(--radius));
  padding: calc(var(--spacing) * 4);
  margin-block: calc(var(--spacing) * 4);
  background-color: color-mix(in oklab, var(--primary) 10%, transparent);
}
.dashboard-excerpt strong {
  color: var(--primary);
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}

.dashboard-header {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: calc(var(--spacing) * 4);
  width: 100%;
}
.dashboard-header > .actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: end;
  gap: calc(var(--spacing) * 2);
  margin-left: auto;
}

section.dashboard-profile > .info {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 8);
}
section.dashboard-profile > .info > .avatar {
  min-width: calc(var(--spacing) * 24);
  min-height: calc(var(--spacing) * 24);
}
section.dashboard-profile > .info > .group {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 0);
  width: 100%;
}
section.dashboard-profile > .bio {
  display: flex;
  flex-direction: column;
}

section.dashboard-projects > .projects {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
  padding: calc(var(--spacing) * 4);
}

section.dashboard-experiences > .experiences {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
  padding: calc(var(--spacing) * 4);
  width: 95%;
}

.separator {
  display: none;
  height: calc(var(--spacing) * 4);
}
@media (max-width: 480px) {
  .separator {
    display: flex;
  }
}

footer {
  display: flex;
  flex-direction: column;
  margin-top: auto;
  align-items: center;
  justify-content: center;
  color: var(--dark-foreground);
  background-color: var(--foreground);
  width: 100%;
  gap: calc(var(--spacing) * 1);
  padding-bottom: calc(var(--spacing) * 6);
}
@media (max-width: 480px) {
  footer {
    width: unset;
    margin: calc(var(--spacing) * 5);
    border-radius: calc(var(--radius) * 2);
  }
}
footer > * {
  display: flex;
  width: 100%;
  max-width: 1280px;
}
@media (max-width: 1024px) {
  footer > * {
    max-width: 1024px;
  }
}
@media (max-width: 768px) {
  footer > * {
    max-width: 768px;
  }
}
@media (max-width: 640px) {
  footer > * {
    max-width: 768px;
  }
}
@media (max-width: 480px) {
  footer > * {
    max-width: 640px;
  }
}
footer > * {
  padding-inline: calc(var(--spacing) * 4);
}
footer .spacer {
  min-width: 100% !important;
  background-color: var(--background);
  height: calc(var(--spacing) * 4);
  border-bottom-left-radius: calc(var(--radius) * 4);
  border-bottom-right-radius: calc(var(--radius) * 4);
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
@media (max-width: 480px) {
  footer .spacer {
    display: none;
  }
}
footer .footer-grid {
  display: grid;
  grid-template-areas: "principal first second third";
  grid-template-columns: 1fr auto auto auto;
  row-gap: calc(var(--spacing) * 8);
  column-gap: calc(var(--spacing) * 6);
  padding-top: calc(var(--spacing) * 6);
}
footer .footer-grid > * {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: flex-start;
  color: var(--muted-foreground);
  gap: calc(var(--spacing) * 1.5);
  padding-block: calc(var(--spacing) * 1);
  padding-inline: calc(var(--spacing) * 4);
}
footer .footer-grid .principal {
  grid-area: principal;
  gap: calc(var(--spacing) * 3);
  max-width: var(--container-lg);
}
footer .footer-grid .first {
  grid-area: first;
}
footer .footer-grid .second {
  grid-area: second;
}
footer .footer-grid .third {
  grid-area: third;
}
@media (max-width: 1024px) {
  footer .footer-grid {
    padding-inline: calc(var(--spacing) * 2);
    row-gap: calc(var(--spacing) * 2);
    grid-template-areas: "principal principal principal" "first second third";
    grid-template-columns: auto auto auto;
  }
}
@media (max-width: 640px) {
  footer .footer-grid {
    grid-template-areas: "principal" "first" "second" "third";
    grid-template-columns: 1fr;
  }
}
footer .description {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--muted);
  font-family: "Outfit";
}
footer .section-title {
  font-family: "Outfit";
  font-size: var(--text-md);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--ring);
}
footer .copyright {
  display: flex;
  font-family: "Outfit";
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--muted);
  gap: calc(var(--spacing) * 1);
}
footer .copyright .button-link {
  padding: 0;
  color: var(--muted);
}
footer .legal {
  display: flex;
  gap: calc(var(--spacing) * 4);
}
@media (max-width: 480px) {
  footer .footer-logo {
    margin-inline: auto;
  }
}
footer .footer-logo > .logo-icon {
  width: 11rem;
  height: 4.5rem;
  padding: unset;
}
footer .action-input > .content {
  color: var(--ring);
}

.dark footer .logo-icon .foreground {
  fill: var(--secondary) !important;
}

section.title {
  grid-area: title;
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
  width: 100%;
  text-align: center;
  align-items: center;
  padding-top: calc(var(--spacing) * 12);
}
section.title > p {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--muted-foreground);
  font-weight: var(--font-weight-normal);
}
section.title > .suscribe {
  padding-top: calc(var(--spacing) * 8);
  width: 100%;
  max-width: var(--container-md);
}

main.auth {
  display: flex;
  flex-direction: column;
  padding: calc(var(--spacing) * 4);
  gap: calc(var(--spacing) * 8);
  height: 100%;
}
main.auth > section {
  margin: 15vh 0;
  text-align: center;
  max-width: var(--container-2xl);
}
main.auth > section .form {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
}

section.verify {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: start;
  margin: 15vh 0;
}

main.home {
  display: grid;
  grid-template-columns: 7fr 4fr;
  grid-template-rows: auto;
  gap: calc(var(--spacing) * 8);
  max-width: var(--container-6xl);
  grid-template-areas: "hero hero" "featured aside" "featured about" "featured .";
}
@media (max-width: 768px) {
  main.home {
    grid-template-columns: 1fr;
    grid-template-areas: "hero" "featured" "aside" "about";
  }
}
main.home > aside {
  grid-area: aside;
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: start;
  gap: calc(var(--spacing) * 4);
}

article.jobs {
  position: relative;
  display: grid;
  grid-template-columns: 7fr 4fr;
  grid-template-rows: auto;
  gap: calc(var(--spacing) * 4);
  align-items: start;
  padding-bottom: calc(var(--spacing) * 10);
  width: 100%;
  max-width: 1280px;
}
@media (max-width: 1024px) {
  article.jobs {
    max-width: 1024px;
  }
}
@media (max-width: 768px) {
  article.jobs {
    max-width: 768px;
  }
}
@media (max-width: 640px) {
  article.jobs {
    max-width: 768px;
  }
}
@media (max-width: 480px) {
  article.jobs {
    max-width: 640px;
  }
}
article.jobs {
  grid-template-areas: "title title" "info filters" "content filters" ". filters";
}
@media (max-width: 768px) {
  article.jobs {
    grid-template-columns: 1fr;
    grid-template-areas: "title" "info" "content" "filters";
  }
}
article.jobs aside, article.jobs section, article.jobs .body, article.jobs .footer {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
}
article.jobs > .title {
  grid-area: title;
  padding-block: calc(var(--spacing) * 12);
}
article.jobs > .info {
  grid-area: info;
}
article.jobs > .content {
  grid-area: content;
}
article.jobs > aside {
  grid-area: filters;
  padding: calc(var(--spacing) * 4);
  width: 100%;
  z-index: 8888;
  max-width: var(--container-xs);
  border-width: 1px;
  border-color: var(--ring);
  border-style: var(--tw-border-style);
  border-radius: calc(var(--radius));
  color: var(--foreground);
  background-color: var(--background);
  outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
}
article.jobs > aside section {
  border-bottom-width: 1px;
  border-color: var(--ring);
  border-style: var(--tw-border-style);
  border-radius: 0;
  outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
  padding-bottom: calc(var(--spacing) * 2);
}
article.jobs > aside .header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 768px) {
  article.jobs > aside.filters {
    position: fixed;
    top: 0;
    left: 0;
    max-width: unset;
    height: 100%;
    border-width: 0;
    border-radius: 0;
  }
  article.jobs > aside.filters:not(.open) {
    display: none;
  }
  article.jobs > aside.filters .body {
    overflow-x: hidden;
    overflow-y: auto;
  }
  article.jobs > aside.filters .footer {
    margin-top: auto;
  }
}

article.articles {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: calc(var(--spacing) * 4);
  padding-inline: calc(var(--spacing) * 1);
  max-width: var(--container-2xl);
}
article.articles aside, article.articles section, article.articles .body, article.articles .footer {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing));
  width: 100%;
}
article.articles .meta {
  display: flex;
  align-items: center;
  flex-direction: row;
  gap: calc(var(--spacing));
  padding-block: calc(var(--spacing) * 6);
}
article.articles section.title p {
  font-size: var(--text-md);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--muted-foreground);
}
article.articles section.content {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-md--line-height));
  gap: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 6);
}
article.articles section.content h1, article.articles section.content h2, article.articles section.content h3, article.articles section.content h4 {
  padding-top: calc(var(--spacing) * 4);
}
article.articles section.content ul {
  list-style-type: none;
  padding-left: calc(var(--spacing) * 3);
}
article.articles section.content ul li {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-md--line-height));
  padding-block: calc(var(--spacing) * 1);
}
article.articles section.content ul li::before {
  content: "-";
  margin-right: calc(var(--spacing) * 3);
}

article.job-entry {
  display: grid;
  grid-template-columns: 7fr 4fr;
  grid-template-rows: auto;
  gap: calc(var(--spacing) * 4);
  align-items: start;
  grid-template-areas: "role role" "info application" "content company" "content newsletter" "application-footer newsletter" "detail newsletter" "related newsletter" "others newsletter";
  margin: 0 auto;
  max-width: var(--container-5xl);
  padding-block: calc(var(--spacing) * 2);
  padding-inline: calc(var(--spacing) * 4);
}
@media (max-width: 768px) {
  article.job-entry {
    grid-template-columns: 1fr;
    grid-template-areas: "role" "info" "application" "company" "content" "application-footer" "detail" "related" "newsletter" "others";
  }
}
article.job-entry > * {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 6);
  width: 100%;
  align-self: start;
}
article.job-entry .role {
  grid-area: role;
  align-items: start;
}
article.job-entry .info {
  grid-area: info;
}
article.job-entry .info .company {
  display: flex;
  align-items: center;
  justify-content: start;
  flex-wrap: nowrap;
  gap: calc(var(--spacing) * 2);
}
article.job-entry .info .skeleton-logo {
  --image-container: 1.5rem;
  font-size: var(--text-sm);
}
article.job-entry .info .highlights {
  display: grid;
  grid-auto-flow: column; /* ← Aquí la clave */
  grid-template-rows: repeat(3, auto); /* 3 filas */
  gap: calc(var(--spacing) * 2);
  width: 100%;
}
@media (max-width: 768px) {
  article.job-entry .info .highlights {
    display: flex;
    flex-direction: column;
  }
}
article.job-entry .company {
  grid-area: company;
}
article.job-entry .application, article.job-entry .application-footer {
  grid-area: application;
  position: relative;
  justify-content: center;
  align-items: center;
  gap: calc(var(--spacing) * 1);
  padding-block: calc(var(--spacing) * 4);
}
article.job-entry .application hr, article.job-entry .application-footer hr {
  position: absolute;
  top: 49%;
  width: 100%;
  transform: translateY(-50%);
}
article.job-entry .application span, article.job-entry .application-footer span {
  z-index: 2;
  background-color: var(--background);
  padding-inline: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--muted-foreground);
  font-weight: var(--font-weight-normal);
}
article.job-entry .application-footer {
  grid-area: application-footer;
}
article.job-entry .detail {
  grid-area: detail;
}
article.job-entry .content {
  grid-area: content;
}
article.job-entry .others {
  grid-area: others;
}
article.job-entry .related {
  grid-area: related;
}

article.companies {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: calc(var(--spacing) * 16);
}
article.companies aside, article.companies section, article.companies .body, article.companies .footer {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing));
  width: 100%;
}
article.companies > .title {
  padding-block: calc(var(--spacing) * 12);
}
article.companies > .columns {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: calc(var(--spacing) * 10);
}
@media (max-width: 768px) {
  article.companies > .columns {
    display: flex;
    flex-direction: column;
  }
}

article.company-profile {
  display: grid;
  grid-template-columns: 1fr 3fr;
  grid-template-areas: "info body";
  gap: calc(var(--spacing) * 12);
  margin: 0 auto;
  max-width: var(--container-6xl);
  padding-block: calc(var(--spacing) * 16);
  padding-inline: calc(var(--spacing) * 8);
}
@media (max-width: 768px) {
  article.company-profile {
    padding-block: calc(var(--spacing) * 4);
    padding-inline: calc(var(--spacing) * 1);
    grid-template-columns: 1fr;
    grid-template-areas: "info" "body";
  }
  article.company-profile .socials {
    justify-content: center;
  }
  article.company-profile .socials .button svg {
    rotate: 0deg;
  }
}
article.company-profile > div {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 6);
  width: 100%;
}
article.company-profile .info {
  grid-area: info;
}
article.company-profile .body {
  grid-area: body;
}
article.company-profile .body p {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
}
article.company-profile .header {
  display: flex;
  justify-content: start;
  align-items: center;
  gap: calc(var(--spacing) * 4);
}
article.company-profile .description {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--muted-foreground);
  font-weight: var(--font-weight-normal);
  font-family: "Geist";
}
article.company-profile .overview > h2 {
  padding-bottom: calc(var(--spacing) * 5);
}
article.company-profile .overview > h3 {
  padding-top: calc(var(--spacing) * 2);
}
article.company-profile .policies > .container {
  display: flex;
  flex-direction: column;
}
article.company-profile .policies > .container li {
  position: relative;
  padding-left: 1.2em;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
}
article.company-profile .policies > .container li::before {
  content: "-"; /* el guion */
  position: absolute;
  left: 0;
  color: var(--muted-foreground);
}
article.company-profile .policies > .container > .row {
  display: grid;
  grid-template-columns: 1fr 3fr;
  gap: calc(var(--spacing) * 4);
}
@media (max-width: 480px) {
  article.company-profile .policies > .container > .row {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
  }
}
article.company-profile .jobs > .container {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
}
article.company-profile .jobs > .container .blob {
  display: none;
}
article.company-profile nav.toc > ol {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
  width: 100%;
}
article.company-profile nav.toc > ol .button {
  width: 100%;
  justify-content: start !important;
  font-size: var(--text-md);
  font-weight: var(--font-weight-semibold);
  line-height: var(--tw-leading, var(--text-md--line-height));
}

article.hire {
  max-width: var(--container-5xl);
  gap: calc(var(--spacing) * 8);
  margin-bottom: calc(var(--spacing) * 8);
}
article.hire > .cta {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(var(--spacing));
}
article.hire > .cta h2 {
  font-size: var(--text-md);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  line-height: 1;
  letter-spacing: var(--tracking-tight);
  padding: 0;
  margin: 0;
}
article.hire > .cta .card {
  max-width: var(--container-2xs);
  padding-block: calc(var(--spacing) * 4);
}
article.hire > .cta .card > * {
  padding-inline: calc(var(--spacing) * 4);
}
article.hire > .cta .card.first {
  background-color: color-mix(in oklab, oklch(75% 0.19 339.04deg) 30%, white);
}
article.hire > .cta .card.first h2, article.hire > .cta .card.first p, article.hire > .cta .card.first .button-leading, article.hire > .cta .card.first .button-link {
  color: oklch(35.542% 0.10025 338.942deg);
  fill: oklch(35.542% 0.10025 338.942deg);
}
article.hire > .cta .card.first .button-leading {
  background-color: oklch(75% 0.19 339.04deg);
}
article.hire > .cta .card.second {
  background-color: color-mix(in oklab, oklch(83.521% 0.14208 154.587deg) 50%, white);
}
article.hire > .cta .card.second h2, article.hire > .cta .card.second p, article.hire > .cta .card.second .button-leading, article.hire > .cta .card.second .button-link {
  color: oklch(39.186% 0.08318 152.744deg);
}
article.hire > .cta .card.second .button-leading {
  background-color: oklch(83.521% 0.14208 154.587deg);
}
article.hire > .cta .card.third {
  background-color: color-mix(in oklab, oklch(76.946% 0.12862 229.022deg) 50%, white);
}
article.hire > .cta .card.third h2, article.hire > .cta .card.third p, article.hire > .cta .card.third .button-leading, article.hire > .cta .card.third .button-link {
  color: oklch(35.371% 0.05517 227.703deg);
}
article.hire > .cta .card.third .button-leading {
  background-color: oklch(76.946% 0.12862 229.022deg);
}
article.hire > .cta .card p {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-2xs--line-height));
  line-height: 1.2;
}
article.hire > .cta .button-leading {
  padding-inline: calc(var(--spacing) * 3.5);
}
article.hire .features, article.hire .faq, article.hire .company, article.hire .job, article.hire .user {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(var(--spacing) * 8);
  margin-top: calc(var(--spacing) * 6);
}
@media (max-width: 1024px) {
  article.hire .features, article.hire .faq, article.hire .company, article.hire .job, article.hire .user {
    grid-template-columns: repeat(1, 1fr);
  }
}
article.hire .features > *, article.hire .faq > *, article.hire .company > *, article.hire .job > *, article.hire .user > * {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
article.hire .features > *.left, article.hire .faq > *.left, article.hire .company > *.left, article.hire .job > *.left, article.hire .user > *.left {
  gap: calc(var(--spacing) * 6);
}
article.hire .features > * > .last, article.hire .faq > * > .last, article.hire .company > * > .last, article.hire .job > * > .last, article.hire .user > * > .last {
  display: none;
}
@media (max-width: 1024px) {
  article.hire .features .last, article.hire .faq .last, article.hire .company .last, article.hire .job .last, article.hire .user .last {
    display: flex;
    margin-block: calc(var(--spacing) * 4);
  }
  article.hire .features .first, article.hire .faq .first, article.hire .company .first, article.hire .job .first, article.hire .user .first {
    display: none;
  }
}
article.hire .features .feature, article.hire .faq .feature, article.hire .company .feature, article.hire .job .feature, article.hire .user .feature {
  position: relative;
  border-left-width: 2px;
  border-color: var(--muted-foreground);
  margin-left: calc(var(--image-container, 4rem) * 0.35);
  padding-left: calc(var(--spacing) * 7);
}
article.hire .features .feature h3, article.hire .faq .feature h3, article.hire .company .feature h3, article.hire .job .feature h3, article.hire .user .feature h3 {
  padding-top: calc(var(--spacing) * 2);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-lg--line-height));
}
article.hire .features .feature p, article.hire .faq .feature p, article.hire .company .feature p, article.hire .job .feature p, article.hire .user .feature p {
  padding-bottom: calc(var(--spacing) * 4);
}
article.hire .features .feature > .icon, article.hire .faq .feature > .icon, article.hire .company .feature > .icon, article.hire .job .feature > .icon, article.hire .user .feature > .icon {
  position: absolute;
  background-color: var(--background);
  z-index: 3;
  left: -1.5rem;
  top: 0;
  width: 3rem;
  height: 3rem;
  rotate: calc(var(--rotation) * -1);
}
article.hire .features .feature > .icon svg, article.hire .faq .feature > .icon svg, article.hire .company .feature > .icon svg, article.hire .job .feature > .icon svg, article.hire .user .feature > .icon svg {
  width: calc(var(--spacing) * 6);
  height: calc(var(--spacing) * 6);
}
article.hire .company .left, article.hire .job .left, article.hire .user .left {
  justify-content: start;
}
article.hire .company .right, article.hire .job .right, article.hire .user .right {
  gap: calc(var(--spacing) * 2);
}
article.hire .contact {
  text-align: center;
  align-items: center;
}

main {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: start;
  width: 100%;
}

body.dashboard {
  display: grid;
  grid-template-areas: "header header" "aside breadcumbs" "aside main" "footer footer";
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto 1fr auto;
}
body.dashboard > header {
  grid-area: header;
}
body.dashboard > aside {
  grid-area: aside;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-self: start;
  padding-block: calc(var(--spacing) * 4);
  padding-inline: calc(var(--spacing) * 2);
  border-right-width: 1px;
  border-color: color-mix(in oklab, var(--ring) 10%, transparent);
  border-style: var(--tw-border-style);
  border-radius: 0;
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  font-family: var(--font-mono);
}
body.dashboard > aside h5 {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--muted-foreground);
  font-weight: var(--font-weight-normal);
  text-transform: uppercase;
  padding: calc(var(--spacing) * 5);
  padding-bottom: 0;
}
body.dashboard > aside .item {
  padding-inline: calc(var(--spacing) * 2);
  min-width: var(--container-2xs);
}
body.dashboard > aside .item a {
  width: 100%;
  justify-content: start;
}
body.dashboard > main {
  grid-area: main;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-self: start;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}
body.dashboard > main > section {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
  padding: calc(var(--spacing) * 4) calc(var(--spacing) * 6);
}
body.dashboard > nav {
  grid-area: breadcumbs;
  padding-block: calc(var(--spacing) * 1);
  padding-inline: calc(var(--spacing) * 4);
}
body.dashboard > nav ol {
  color: var(--muted-foreground);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: calc(var(--spacing) * 1.5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  overflow-wrap: break-word;
}
body.dashboard > nav li {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 1.5);
}
body.dashboard > nav li svg {
  width: 1rem;
  height: 1rem;
}
body.dashboard > nav [aria-current=page], body.dashboard > nav a:hover {
  color: var(--foreground);
}
body.dashboard > footer {
  grid-area: footer;
}

.icon, .logo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  pointer-events: none;
}
.icon > svg, .logo > svg {
  width: calc(var(--spacing) * 4);
  height: calc(var(--spacing) * 4);
}

svg.logo-icon {
  display: block;
  animation-duration: 0.3s;
  --tw-duration: .3s;
  transition-duration: 0.3s;
  user-select: none;
  will-change: transform;
  width: 9rem;
  height: 3.5rem;
  pointer-events: all;
  border-radius: 5px;
  padding: 7px;
}
svg.logo-icon .background {
  fill: var(--foreground);
}
svg.logo-icon .foreground {
  fill: var(--background);
}
svg.logo-icon .accent {
  fill: var(--primary);
}

.dark svg.logo-icon .background {
  fill: var(--border);
}
.dark svg.logo-icon .foreground {
  fill: var(--foreground);
}

svg.hamburger-icon {
  animation-duration: 0.3s;
  --tw-duration: .3s;
  transition-duration: 0.3s;
  user-select: none;
  will-change: transform;
  width: 3rem;
  height: 3rem;
  rotate: 0deg;
}
svg.hamburger-icon > path {
  fill: none;
  stroke: currentColor;
  stroke-width: 5px;
  stroke-linecap: round;
  stroke-dasharray: 40 121;
  --tw-duration: .3s;
  transition-duration: 0.3s;
}
svg.hamburger-icon.open {
  rotate: 45deg;
  stroke-dashoffset: -68px;
}

.hide {
  display: none !important;
}

.truncate {
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}

.uppercase {
  text-transform: uppercase;
}

.ml-auto {
  margin-left: auto;
}

.bg-fill {
  fill: var(--background);
}

.flex {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 2);
}

.flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 2);
}

.flex-col {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
}

.flex-wrap {
  flex-wrap: wrap;
}

.gap-0 {
  gap: 0;
}

.gap-1 {
  gap: calc(var(--spacing) * 1);
}

.justify-between {
  justify-content: space-between;
}

.full-w, .w-full {
  width: 100%;
}

.full-h, .h-full {
  height: 100%;
}

.text-start {
  text-align: start;
}

.text-center {
  text-align: center;
}

.text-xs {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-2xs--line-height));
}

.text-sm {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
}

.text-md {
  font-size: var(--text-md);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}

.text-lg {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-md--line-height));
}

.text-xl {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-lg--line-height));
}

.text-2xl {
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
}

.text-3xl {
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
}

.text-4xl {
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
}

.text-5xl {
  font-size: var(--text-5xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
}

.text-6xl {
  font-size: var(--text-6xl);
  line-height: var(--tw-leading, var(--text-5xl--line-height));
}

.text-7xl {
  font-size: var(--text-7xl);
  line-height: var(--tw-leading, var(--text-6xl--line-height));
}

.font-normal {
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
}

.font-medium {
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}

.font-semibold {
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}

.font-bold {
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}

.font-extrabold {
  --tw-font-weight: var(--font-weight-extrabold);
  font-weight: var(--font-weight-extrabold);
}

.p-0 {
  padding: 0;
}

.p-4 {
  padding: calc(var(--spacing) * 4);
}

.pt-4 {
  padding-top: calc(var(--spacing) * 4);
}

.px-4 {
  padding-inline: calc(var(--spacing) * 4);
}

.py-2 {
  padding-block: calc(var(--spacing) * 2);
}

h1, h2, h3, h4 {
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  scroll-margin: calc(var(--spacing) * 20);
}

h1 {
  text-align: center;
  text-wrap: balance;
  font-family: "Outfit";
  --tw-font-weight: var(--font-weight-extrabold);
  font-weight: var(--font-weight-extrabold);
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
}

h2 {
  font-family: "Outfit";
  margin-top: calc(var(--spacing) * 0);
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
  padding-bottom: calc(var(--spacing) * 2);
}

h3 {
  font-family: "Outfit";
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
}

h4 {
  font-family: "Albert Sans";
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-lg--line-height));
}

p, li {
  font-family: "Albert Sans";
  --tw-leading: calc(var(--spacing)*5.5);
  line-height: calc(var(--spacing) * 5.5);
}

blockquote {
  font-style: italic;
  margin-top: calc(var(--spacing) * 6);
  padding-left: calc(var(--spacing) * 6);
  border-left-style: var(--tw-border-style);
  border-left-width: 2px;
}

.text-muted, .text-muted-sm {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--muted-foreground);
  font-weight: var(--font-weight-normal);
}

.text-muted-md {
  font-size: var(--text-md);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--muted-foreground);
  font-weight: var(--font-weight-normal);
}