/* inaccessible */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
  *, ::before, ::after, ::backdrop { --tw-translate-x: 0; --tw-translate-y: 0; --tw-translate-z: 0; --tw-rotate-x: initial; --tw-rotate-y: initial; --tw-rotate-z: initial; --tw-skew-x: initial; --tw-skew-y: initial; --tw-space-y-reverse: 0; --tw-space-x-reverse: 0; --tw-border-style: solid; --tw-leading: initial; --tw-font-weight: initial; --tw-tracking: initial; --tw-ordinal: initial; --tw-slashed-zero: initial; --tw-numeric-figure: initial; --tw-numeric-spacing: initial; --tw-numeric-fraction: initial; --tw-shadow: 0 0 #0000; --tw-shadow-color: initial; --tw-shadow-alpha: 100%; --tw-inset-shadow: 0 0 #0000; --tw-inset-shadow-color: initial; --tw-inset-shadow-alpha: 100%; --tw-ring-color: initial; --tw-ring-shadow: 0 0 #0000; --tw-inset-ring-color: initial; --tw-inset-ring-shadow: 0 0 #0000; --tw-ring-inset: initial; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-outline-style: solid; --tw-blur: initial; --tw-brightness: initial; --tw-contrast: initial; --tw-grayscale: initial; --tw-hue-rotate: initial; --tw-invert: initial; --tw-opacity: initial; --tw-saturate: initial; --tw-sepia: initial; --tw-drop-shadow: initial; --tw-drop-shadow-color: initial; --tw-drop-shadow-alpha: 100%; --tw-drop-shadow-size: initial; --tw-duration: initial; --tw-ease: initial; --tw-content: ""; }
}
}
@layer theme {
  :root, :host { --font-sans: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif; --font-mono: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif; --color-black: #000; --spacing: .25rem; --container-sm: 24rem; --container-md: 28rem; --container-lg: 32rem; --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-base: 1rem; --text-base--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-7xl: 4.5rem; --text-7xl--line-height: 1; --font-weight-light: 300; --font-weight-normal: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; --tracking-tight: -.025em; --tracking-widest: .1em; --leading-tight: 1.25; --leading-relaxed: 1.625; --radius-sm: .25rem; --radius-md: .375rem; --radius-lg: .5rem; --radius-xl: .75rem; --radius-2xl: 1rem; --ease-in-out: cubic-bezier(.4, 0, .2, 1); --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite; --blur-2xl: 40px; --aspect-video: 16 / 9; --default-transition-duration: .15s; --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1); --default-font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif; --default-mono-font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif; --color-border: var(--border); --font-display: "DM Serif Display", Georgia, serif; }
}
@layer base {
  *, ::after, ::before, ::backdrop { box-sizing: border-box; border: 0px solid; margin: 0px; padding: 0px; }
  ::file-selector-button { box-sizing: border-box; border: 0px solid; margin: 0px; padding: 0px; }
  html, :host { text-size-adjust: 100%; tab-size: 4; line-height: 1.5; font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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: 0px; color: inherit; border-top-width: 1px; }
  abbr:where([title]) { text-decoration: underline dotted; }
  h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; }
  a { color: inherit; text-decoration: inherit; }
  b, strong { font-weight: bolder; }
  code, kbd, samp, pre { 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: 0px; border-color: inherit; border-collapse: collapse; }
  progress { vertical-align: baseline; }
  summary { display: list-item; }
  ol, ul, menu { list-style: none; }
  img, svg, video, canvas, audio, iframe, embed, object { vertical-align: middle; display: block; }
  img, video { max-width: 100%; height: auto; }
  button, input, select, optgroup, textarea { font: inherit; letter-spacing: inherit; color: inherit; opacity: 1; background-color: rgba(0, 0, 0, 0); border-radius: 0px; }
  ::file-selector-button { font: inherit; letter-spacing: inherit; color: inherit; opacity: 1; background-color: rgba(0, 0, 0, 0); border-radius: 0px; }
  :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, transparent); }
}
}
  textarea { resize: vertical; }
  ::-webkit-search-decoration { 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: 0px; }
  ::-webkit-datetime-edit { padding-block: 0px; }
  ::-webkit-datetime-edit-year-field { padding-block: 0px; }
  ::-webkit-datetime-edit-month-field { padding-block: 0px; }
  ::-webkit-datetime-edit-day-field { padding-block: 0px; }
  ::-webkit-datetime-edit-hour-field { padding-block: 0px; }
  ::-webkit-datetime-edit-minute-field { padding-block: 0px; }
  ::-webkit-datetime-edit-second-field { padding-block: 0px; }
  ::-webkit-datetime-edit-millisecond-field { padding-block: 0px; }
  ::-webkit-datetime-edit-meridiem-field { padding-block: 0px; }
  ::-webkit-calendar-picker-indicator { line-height: 1; }
  button, input:where([type="button"], [type="reset"], [type="submit"]) { appearance: button; }
  ::file-selector-button { appearance: button; }
  ::-webkit-inner-spin-button { height: auto; }
  ::-webkit-outer-spin-button { height: auto; }
  [hidden]:where(:not([hidden="until-found"])) { display: none !important; }
}
@layer components;
@layer utilities {
  .pointer-events-none { pointer-events: none; }
  .invisible { visibility: hidden; }
  .visible { visibility: visible; }
  .sr-only { clip-path: inset(50%); white-space: nowrap; border-width: 0px; width: 1px; height: 1px; margin: -1px; padding: 0px; position: absolute; overflow: hidden; }
  .absolute { position: absolute; }
  .fixed { position: fixed; }
  .relative { position: relative; }
  .static { position: static; }
  .-inset-4 { inset: calc(var(--spacing) * -4); }
  .inset-0 { inset: 0px; }
  .inset-x-0 { inset-inline: 0px; }
  .inset-y-0 { inset-block: 0px; }
  .-top-12 { top: calc(var(--spacing) * -12); }
  .-top-16 { top: calc(var(--spacing) * -16); }
  .top-0 { top: 0px; }
  .top-1\.5 { top: calc(var(--spacing) * 1.5); }
  .top-1\/2 { top: 50%; }
  .top-3\.5 { top: calc(var(--spacing) * 3.5); }
  .top-4 { top: calc(var(--spacing) * 4); }
  .top-\[1px\] { top: 1px; }
  .top-\[50\%\] { top: 50%; }
  .top-\[60\%\] { top: 60%; }
  .top-full { top: 100%; }
  .-right-8 { right: calc(var(--spacing) * -8); }
  .-right-12 { right: calc(var(--spacing) * -12); }
  .-right-16 { right: calc(var(--spacing) * -16); }
  .right-0 { right: 0px; }
  .right-1 { right: var(--spacing); }
  .right-2 { right: calc(var(--spacing) * 2); }
  .right-3 { right: calc(var(--spacing) * 3); }
  .right-4 { right: calc(var(--spacing) * 4); }
  .-bottom-12 { bottom: calc(var(--spacing) * -12); }
  .bottom-0 { bottom: 0px; }
  .bottom-16 { bottom: calc(var(--spacing) * 16); }
  .-left-12 { left: calc(var(--spacing) * -12); }
  .left-0 { left: 0px; }
  .left-1\/2 { left: 50%; }
  .left-2 { left: calc(var(--spacing) * 2); }
  .left-\[50\%\] { left: 50%; }
  .z-10 { z-index: 10; }
  .z-20 { z-index: 20; }
  .z-50 { z-index: 50; }
  .z-\[1\] { z-index: 1; }
  .-mx-1 { margin-inline: calc(var(--spacing) * -1); }
  .mx-2 { margin-inline: calc(var(--spacing) * 2); }
  .mx-3\.5 { margin-inline: calc(var(--spacing) * 3.5); }
  .mx-auto { margin-inline: auto; }
  .my-0\.5 { margin-block: calc(var(--spacing) * .5); }
  .my-1 { margin-block: var(--spacing); }
  .-mt-4 { margin-top: calc(var(--spacing) * -4); }
  .mt-1 { margin-top: var(--spacing); }
  .mt-1\.5 { margin-top: calc(var(--spacing) * 1.5); }
  .mt-2 { margin-top: calc(var(--spacing) * 2); }
  .mt-4 { margin-top: calc(var(--spacing) * 4); }
  .mt-5 { margin-top: calc(var(--spacing) * 5); }
  .mt-6 { margin-top: calc(var(--spacing) * 6); }
  .mt-8 { margin-top: calc(var(--spacing) * 8); }
  .mt-14 { margin-top: calc(var(--spacing) * 14); }
  .mt-24 { margin-top: calc(var(--spacing) * 24); }
  .mt-auto { margin-top: auto; }
  .mr-2 { margin-right: calc(var(--spacing) * 2); }
  .mb-1 { margin-bottom: var(--spacing); }
  .-ml-4 { margin-left: calc(var(--spacing) * -4); }
  .ml-1 { margin-left: var(--spacing); }
  .ml-auto { margin-left: auto; }
  .block { display: block; }
  .flex { display: flex; }
  .grid { display: grid; }
  .hidden { display: none; }
  .inline-flex { display: inline-flex; }
  .table { display: table; }
  .aspect-\[4\/5\] { aspect-ratio: 4 / 5; }
  .aspect-square { aspect-ratio: 1 / 1; }
  .aspect-video { aspect-ratio: var(--aspect-video); }
  .size-\(--cell-size\) { width: var(--cell-size); height: var(--cell-size); }
  .size-4 { width: calc(var(--spacing) * 4); height: calc(var(--spacing) * 4); }
  .h-\(--cell-size\) { height: var(--cell-size); }
  .h-1\.5 { height: calc(var(--spacing) * 1.5); }
  .h-2 { height: calc(var(--spacing) * 2); }
  .h-2\.5 { height: calc(var(--spacing) * 2.5); }
  .h-3 { height: calc(var(--spacing) * 3); }
  .h-3\.5 { height: calc(var(--spacing) * 3.5); }
  .h-4 { height: calc(var(--spacing) * 4); }
  .h-5 { height: calc(var(--spacing) * 5); }
  .h-6 { height: calc(var(--spacing) * 6); }
  .h-7 { height: calc(var(--spacing) * 7); }
  .h-8 { height: calc(var(--spacing) * 8); }
  .h-9 { height: calc(var(--spacing) * 9); }
  .h-10 { height: calc(var(--spacing) * 10); }
  .h-12 { height: calc(var(--spacing) * 12); }
  .h-14 { height: calc(var(--spacing) * 14); }
  .h-48 { height: calc(var(--spacing) * 48); }
  .h-\[1px\] { height: 1px; }
  .h-\[var\(--radix-navigation-menu-viewport-height\)\] { height: var(--radix-navigation-menu-viewport-height); }
  .h-\[var\(--radix-select-trigger-height\)\] { height: var(--radix-select-trigger-height); }
  .h-auto { height: auto; }
  .h-full { height: 100%; }
  .h-px { height: 1px; }
  .h-svh { height: 100svh; }
  .max-h-\(--radix-context-menu-content-available-height\) { max-height: var(--radix-context-menu-content-available-height); }
  .max-h-\(--radix-select-content-available-height\) { max-height: var(--radix-select-content-available-height); }
  .max-h-\[300px\] { max-height: 300px; }
  .max-h-\[var\(--radix-dropdown-menu-content-available-height\)\] { max-height: var(--radix-dropdown-menu-content-available-height); }
  .min-h-0 { min-height: 0px; }
  .min-h-\[60px\] { min-height: 60px; }
  .min-h-screen { min-height: 100vh; }
  .min-h-svh { min-height: 100svh; }
  .w-\(--cell-size\) { width: var(--cell-size); }
  .w-\(--sidebar-width\) { width: var(--sidebar-width); }
  .w-0 { width: 0px; }
  .w-1 { width: var(--spacing); }
  .w-1\.5 { width: calc(var(--spacing) * 1.5); }
  .w-2 { width: calc(var(--spacing) * 2); }
  .w-2\.5 { width: calc(var(--spacing) * 2.5); }
  .w-3 { width: calc(var(--spacing) * 3); }
  .w-3\.5 { width: calc(var(--spacing) * 3.5); }
  .w-3\/4 { width: 75%; }
  .w-4 { width: calc(var(--spacing) * 4); }
  .w-5 { width: calc(var(--spacing) * 5); }
  .w-6 { width: calc(var(--spacing) * 6); }
  .w-7 { width: calc(var(--spacing) * 7); }
  .w-8 { width: calc(var(--spacing) * 8); }
  .w-9 { width: calc(var(--spacing) * 9); }
  .w-10 { width: calc(var(--spacing) * 10); }
  .w-14 { width: calc(var(--spacing) * 14); }
  .w-48 { width: calc(var(--spacing) * 48); }
  .w-64 { width: calc(var(--spacing) * 64); }
  .w-72 { width: calc(var(--spacing) * 72); }
  .w-\[1px\] { width: 1px; }
  .w-\[100px\] { width: 100px; }
  .w-auto { width: auto; }
  .w-fit { width: fit-content; }
  .w-full { width: 100%; }
  .w-max { width: max-content; }
  .w-px { width: 1px; }
  .max-w-\(--skeleton-width\) { max-width: var(--skeleton-width); }
  .max-w-6xl { max-width: var(--container-6xl); }
  .max-w-lg { max-width: var(--container-lg); }
  .max-w-max { max-width: max-content; }
  .max-w-md { max-width: var(--container-md); }
  .max-w-sm { max-width: var(--container-sm); }
  .min-w-\(--cell-size\) { min-width: var(--cell-size); }
  .min-w-0 { min-width: 0px; }
  .min-w-5 { min-width: calc(var(--spacing) * 5); }
  .min-w-8 { min-width: calc(var(--spacing) * 8); }
  .min-w-9 { min-width: calc(var(--spacing) * 9); }
  .min-w-10 { min-width: calc(var(--spacing) * 10); }
  .min-w-\[8rem\] { min-width: 8rem; }
  .min-w-\[12rem\] { min-width: 12rem; }
  .min-w-\[var\(--radix-select-trigger-width\)\] { min-width: var(--radix-select-trigger-width); }
  .flex-1 { flex: 1 1 0%; }
  .shrink-0 { flex-shrink: 0; }
  .grow { flex-grow: 1; }
  .grow-0 { flex-grow: 0; }
  .basis-full { flex-basis: 100%; }
  .caption-bottom { caption-side: bottom; }
  .border-collapse { border-collapse: collapse; }
  .origin-\(--radix-context-menu-content-transform-origin\) { transform-origin: var(--radix-context-menu-content-transform-origin); }
  .origin-\(--radix-dropdown-menu-content-transform-origin\) { transform-origin: var(--radix-dropdown-menu-content-transform-origin); }
  .origin-\(--radix-hover-card-content-transform-origin\) { transform-origin: var(--radix-hover-card-content-transform-origin); }
  .origin-\(--radix-menubar-content-transform-origin\) { transform-origin: var(--radix-menubar-content-transform-origin); }
  .origin-\(--radix-popover-content-transform-origin\) { transform-origin: var(--radix-popover-content-transform-origin); }
  .origin-\(--radix-select-content-transform-origin\) { transform-origin: var(--radix-select-content-transform-origin); }
  .origin-\(--radix-tooltip-content-transform-origin\) { transform-origin: var(--radix-tooltip-content-transform-origin); }
  .-translate-x-1\/2 { --tw-translate-x: calc(calc(1 / 2 * 100%) * -1); translate: var(--tw-translate-x) var(--tw-translate-y); }
  .-translate-x-px { --tw-translate-x: -1px; translate: var(--tw-translate-x) var(--tw-translate-y); }
  .translate-x-\[-50\%\] { --tw-translate-x: -50%; translate: var(--tw-translate-x) var(--tw-translate-y); }
  .translate-x-px { --tw-translate-x: 1px; translate: var(--tw-translate-x) var(--tw-translate-y); }
  .-translate-y-1\/2 { --tw-translate-y: calc(calc(1 / 2 * 100%) * -1); translate: var(--tw-translate-x) var(--tw-translate-y); }
  .translate-y-\[-50\%\] { --tw-translate-y: -50%; translate: var(--tw-translate-x) var(--tw-translate-y); }
  .rotate-45 { rotate: 45deg; }
  .rotate-90 { rotate: 90deg; }
  .transform { transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, ); }
  .animate-pulse { animation: var(--animate-pulse); }
  .cursor-default { cursor: default; }
  .cursor-pointer { cursor: pointer; }
  .touch-none { touch-action: none; }
  .list-none { list-style-type: none; }
  .flex-col { flex-direction: column; }
  .flex-col-reverse { flex-direction: column-reverse; }
  .flex-row { flex-direction: row; }
  .flex-wrap { flex-wrap: wrap; }
  .place-content-center { place-content: center; }
  .place-items-center { place-items: center; }
  .items-center { align-items: center; }
  .items-end { align-items: flex-end; }
  .items-start { align-items: flex-start; }
  .items-stretch { align-items: stretch; }
  .justify-between { justify-content: space-between; }
  .justify-center { justify-content: center; }
  .gap-1 { gap: var(--spacing); }
  .gap-1\.5 { gap: calc(var(--spacing) * 1.5); }
  .gap-2 { gap: calc(var(--spacing) * 2); }
  .gap-4 { gap: calc(var(--spacing) * 4); }
  .gap-5 { gap: calc(var(--spacing) * 5); }
  .gap-6 { gap: calc(var(--spacing) * 6); }
  .gap-12 { gap: calc(var(--spacing) * 12); }
  .gap-16 { gap: calc(var(--spacing) * 16); }
  :where(.space-y-1\.5 > :not(:last-child)) { --tw-space-y-reverse: 0; margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse)); margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse))); }
  :where(.space-y-2 > :not(:last-child)) { --tw-space-y-reverse: 0; margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse)); margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse))); }
  :where(.space-y-4 > :not(:last-child)) { --tw-space-y-reverse: 0; margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse)); margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse))); }
  :where(.space-y-5 > :not(:last-child)) { --tw-space-y-reverse: 0; margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse)); margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse))); }
  :where(.space-x-1 > :not(:last-child)) { --tw-space-x-reverse: 0; margin-inline-start: calc(var(--spacing) * var(--tw-space-x-reverse)); margin-inline-end: calc(var(--spacing) * calc(1 - var(--tw-space-x-reverse))); }
  .truncate { text-overflow: ellipsis; white-space: nowrap; overflow: hidden; }
  .overflow-auto { overflow: auto; }
  .overflow-hidden { overflow: hidden; }
  .overflow-x-clip { overflow-x: clip; }
  .overflow-x-hidden { overflow-x: hidden; }
  .overflow-y-auto { overflow-y: auto; }
  .rounded-2xl { border-radius: var(--radius-2xl); }
  .rounded-\[2px\] { border-radius: 2px; }
  .rounded-\[inherit\] { border-radius: inherit; }
  .rounded-full { border-radius: 3.40282e+38px; }
  .rounded-lg { border-radius: var(--radius-lg); }
  .rounded-md { border-radius: var(--radius-md); }
  .rounded-none { border-radius: 0px; }
  .rounded-sm { border-radius: var(--radius-sm); }
  .rounded-xl { border-radius: var(--radius-xl); }
  .rounded-t-\[10px\] { border-top-left-radius: 10px; border-top-right-radius: 10px; }
  .rounded-t-full { border-top-left-radius: 3.40282e+38px; border-top-right-radius: 3.40282e+38px; }
  .rounded-l-md { border-top-left-radius: var(--radius-md); border-bottom-left-radius: var(--radius-md); }
  .rounded-tl-sm { border-top-left-radius: var(--radius-sm); }
  .rounded-r-md { border-top-right-radius: var(--radius-md); border-bottom-right-radius: var(--radius-md); }
  .border { border-style: var(--tw-border-style); border-width: 1px; }
  .border-2 { border-style: var(--tw-border-style); border-width: 2px; }
  .border-\[1\.5px\] { border-style: var(--tw-border-style); border-width: 1.5px; }
  .border-y { border-block-style: var(--tw-border-style); border-block-width: 1px; }
  .border-t { border-top-style: var(--tw-border-style); border-top-width: 1px; }
  .border-r { border-right-style: var(--tw-border-style); border-right-width: 1px; }
  .border-b { border-bottom-style: var(--tw-border-style); border-bottom-width: 1px; }
  .border-l { border-left-style: var(--tw-border-style); border-left-width: 1px; }
  .border-dashed { --tw-border-style: dashed; border-style: dashed; }
  .border-\(--color-border\) { border-color: var(--color-border); }
  .border-border { border-color: var(--border); }
  .border-border\/50 { border-color: var(--border); }
  @supports (color: color-mix(in lab, red, red)) {
  .border-border\/50 { border-color: color-mix(in oklab, var(--border) 50%, transparent); }
}
  .border-input { border-color: var(--border); }
  .border-primary { border-color: var(--accent); }
  .border-primary\/25 { border-color: var(--accent); }
  @supports (color: color-mix(in lab, red, red)) {
  .border-primary\/25 { border-color: color-mix(in oklab, var(--accent) 25%, transparent); }
}
  .border-primary\/50 { border-color: var(--accent); }
  @supports (color: color-mix(in lab, red, red)) {
  .border-primary\/50 { border-color: color-mix(in oklab, var(--accent) 50%, transparent); }
}
  .border-transparent { border-color: rgba(0, 0, 0, 0); }
  .border-t-transparent { border-top-color: rgba(0, 0, 0, 0); }
  .border-l-transparent { border-left-color: rgba(0, 0, 0, 0); }
  .bg-\(--color-bg\) { background-color: var(--color-bg); }
  .bg-accent-soft { background-color: var(--accent-soft); }
  .bg-background { background-color: var(--bg); }
  .bg-black\/80 { background-color: rgba(0, 0, 0, 0.8); }
  @supports (color: color-mix(in lab, red, red)) {
  .bg-black\/80 { background-color: color-mix(in oklab, var(--color-black) 80%, transparent); }
}
  .bg-border { background-color: var(--border); }
  .bg-foreground { background-color: var(--fg); }
  .bg-popover { background-color: var(--surface); }
  .bg-primary { background-color: var(--accent); }
  .bg-primary\/10 { background-color: var(--accent); }
  @supports (color: color-mix(in lab, red, red)) {
  .bg-primary\/10 { background-color: color-mix(in oklab, var(--accent) 10%, transparent); }
}
  .bg-primary\/20 { background-color: var(--accent); }
  @supports (color: color-mix(in lab, red, red)) {
  .bg-primary\/20 { background-color: color-mix(in oklab, var(--accent) 20%, transparent); }
}
  .bg-surface { background-color: var(--surface); }
  .bg-surface-2 { background-color: var(--surface-2); }
  .bg-transparent { background-color: rgba(0, 0, 0, 0); }
  .fill-current { fill: currentcolor; }
  .fill-primary { fill: var(--accent); }
  .object-cover { object-fit: cover; }
  .p-0 { padding: 0px; }
  .p-1 { padding: var(--spacing); }
  .p-2 { padding: calc(var(--spacing) * 2); }
  .p-3 { padding: calc(var(--spacing) * 3); }
  .p-4 { padding: calc(var(--spacing) * 4); }
  .p-5 { padding: calc(var(--spacing) * 5); }
  .p-6 { padding: calc(var(--spacing) * 6); }
  .p-7 { padding: calc(var(--spacing) * 7); }
  .p-8 { padding: calc(var(--spacing) * 8); }
  .p-\[1px\] { padding: 1px; }
  .px-\(--cell-size\) { padding-inline: var(--cell-size); }
  .px-1 { padding-inline: var(--spacing); }
  .px-1\.5 { padding-inline: calc(var(--spacing) * 1.5); }
  .px-2 { padding-inline: calc(var(--spacing) * 2); }
  .px-2\.5 { padding-inline: calc(var(--spacing) * 2.5); }
  .px-3 { padding-inline: calc(var(--spacing) * 3); }
  .px-4 { padding-inline: calc(var(--spacing) * 4); }
  .px-6 { padding-inline: calc(var(--spacing) * 6); }
  .px-8 { padding-inline: calc(var(--spacing) * 8); }
  .py-0\.5 { padding-block: calc(var(--spacing) * .5); }
  .py-1 { padding-block: var(--spacing); }
  .py-1\.5 { padding-block: calc(var(--spacing) * 1.5); }
  .py-2 { padding-block: calc(var(--spacing) * 2); }
  .py-3 { padding-block: calc(var(--spacing) * 3); }
  .py-4 { padding-block: calc(var(--spacing) * 4); }
  .py-5 { padding-block: calc(var(--spacing) * 5); }
  .py-6 { padding-block: calc(var(--spacing) * 6); }
  .py-8 { padding-block: calc(var(--spacing) * 8); }
  .py-24 { padding-block: calc(var(--spacing) * 24); }
  .pt-0 { padding-top: 0px; }
  .pt-3 { padding-top: calc(var(--spacing) * 3); }
  .pt-4 { padding-top: calc(var(--spacing) * 4); }
  .pr-1 { padding-right: var(--spacing); }
  .pr-2 { padding-right: calc(var(--spacing) * 2); }
  .pr-2\.5 { padding-right: calc(var(--spacing) * 2.5); }
  .pr-8 { padding-right: calc(var(--spacing) * 8); }
  .pb-3 { padding-bottom: calc(var(--spacing) * 3); }
  .pb-4 { padding-bottom: calc(var(--spacing) * 4); }
  .pl-2 { padding-left: calc(var(--spacing) * 2); }
  .pl-2\.5 { padding-left: calc(var(--spacing) * 2.5); }
  .pl-4 { padding-left: calc(var(--spacing) * 4); }
  .pl-8 { padding-left: calc(var(--spacing) * 8); }
  .text-center { text-align: center; }
  .text-left { text-align: left; }
  .align-middle { vertical-align: middle; }
  .font-display { font-family: "DM Serif Display", Georgia, serif; }
  .font-mono, .font-sans { font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif; }
  .text-2xl { font-size: var(--text-2xl); line-height: var(--tw-leading, var(--text-2xl--line-height)); }
  .text-3xl { font-size: var(--text-3xl); line-height: var(--tw-leading, var(--text-3xl--line-height)); }
  .text-4xl { font-size: var(--text-4xl); line-height: var(--tw-leading, var(--text-4xl--line-height)); }
  .text-7xl { font-size: var(--text-7xl); line-height: var(--tw-leading, var(--text-7xl--line-height)); }
  .text-base { font-size: var(--text-base); line-height: var(--tw-leading, var(--text-base--line-height)); }
  .text-lg { font-size: var(--text-lg); line-height: var(--tw-leading, var(--text-lg--line-height)); }
  .text-sm { font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); }
  .text-xl { font-size: var(--text-xl); line-height: var(--tw-leading, var(--text-xl--line-height)); }
  .text-xs { font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); }
  .text-\[0\.8rem\] { font-size: 0.8rem; }
  .leading-none { --tw-leading: 1; line-height: 1; }
  .leading-relaxed { --tw-leading: var(--leading-relaxed); line-height: var(--leading-relaxed); }
  .leading-tight { --tw-leading: var(--leading-tight); line-height: var(--leading-tight); }
  .font-bold { --tw-font-weight: var(--font-weight-bold); font-weight: var(--font-weight-bold); }
  .font-light { --tw-font-weight: var(--font-weight-light); font-weight: var(--font-weight-light); }
  .font-medium { --tw-font-weight: var(--font-weight-medium); font-weight: var(--font-weight-medium); }
  .font-normal { --tw-font-weight: var(--font-weight-normal); font-weight: var(--font-weight-normal); }
  .font-semibold { --tw-font-weight: var(--font-weight-semibold); font-weight: var(--font-weight-semibold); }
  .tracking-\[0\.25em\] { --tw-tracking: .25em; letter-spacing: 0.25em; }
  .tracking-tight { --tw-tracking: var(--tracking-tight); letter-spacing: var(--tracking-tight); }
  .tracking-widest { --tw-tracking: var(--tracking-widest); letter-spacing: var(--tracking-widest); }
  .break-words { overflow-wrap: break-word; }
  .whitespace-nowrap { white-space: nowrap; }
  .text-current { color: currentcolor; }
  .text-foreground { color: var(--fg); }
  .text-muted-foreground { color: var(--muted); }
  .text-popover-foreground { color: var(--fg); }
  .text-primary { color: var(--accent); }
  .text-primary-foreground { color: var(--accent-fg); }
  .uppercase { text-transform: uppercase; }
  .italic { font-style: italic; }
  .tabular-nums { --tw-numeric-spacing: tabular-nums; font-variant-numeric: var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, ); }
  .underline-offset-4 { text-underline-offset: 4px; }
  .opacity-0 { opacity: 0; }
  .opacity-50 { opacity: 0.5; }
  .opacity-60 { opacity: 0.6; }
  .opacity-70 { opacity: 0.7; }
  .opacity-80 { opacity: 0.8; }
  .shadow { --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); }
  .shadow-2xl { --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, #00000040); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
  .shadow-\[0_0_0_1px_var\(--sidebar-border\)\] { --tw-shadow: 0 0 0 1px var(--tw-shadow-color, var(--sidebar-border)); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
  .shadow-lg { --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px 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); }
  .shadow-md { --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px 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); }
  .shadow-none { --tw-shadow: 0 0 #0000; box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
  .shadow-sm { --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); }
  .shadow-xl { --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, #0000001a), 0 8px 10px -6px 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); }
  .shadow-xs { --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, #0000000d); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
  .ring-0 { --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
  .ring-1 { --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
  .ring-ring { --tw-ring-color: var(--accent); }
  .ring-offset-background { --tw-ring-offset-color: var(--bg); }
  .outline { outline-style: var(--tw-outline-style); outline-width: 1px; }
  .blur-2xl { --tw-blur: blur(var(--blur-2xl)); filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, ); }
  .filter { filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, ); }
  .transition { transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-duration: var(--tw-duration, var(--default-transition-duration)); }
  .transition-\[left\,right\,width\] { transition-property: left, right, width; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-duration: var(--tw-duration, var(--default-transition-duration)); }
  .transition-\[margin\,opacity\] { transition-property: margin, opacity; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-duration: var(--tw-duration, var(--default-transition-duration)); }
  .transition-\[width\,height\,padding\] { transition-property: width, height, padding; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-duration: var(--tw-duration, var(--default-transition-duration)); }
  .transition-\[width\] { transition-property: width; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-duration: var(--tw-duration, var(--default-transition-duration)); }
  .transition-all { transition-property: all; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-duration: var(--tw-duration, var(--default-transition-duration)); }
  .transition-colors { transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-duration: var(--tw-duration, var(--default-transition-duration)); }
  .transition-opacity { transition-property: opacity; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-duration: var(--tw-duration, var(--default-transition-duration)); }
  .transition-transform { 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)); }
  .duration-200 { --tw-duration: .2s; transition-duration: 0.2s; }
  .duration-300 { --tw-duration: .3s; transition-duration: 0.3s; }
  .duration-1000 { --tw-duration: 1s; transition-duration: 1s; }
  .ease-in-out { --tw-ease: var(--ease-in-out); transition-timing-function: var(--ease-in-out); }
  .ease-linear { --tw-ease: linear; transition-timing-function: linear; }
  .outline-none { --tw-outline-style: none; outline-style: none; }
  .select-none { user-select: none; }
  .\[--cell-size\:2rem\] { --cell-size: 2rem; }
  .group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *) { opacity: 1; }
  @media (hover: hover) {
  .group-hover\:bg-primary:is(:where(.group):hover *), .group-hover\:bg-primary\/20:is(:where(.group):hover *) { background-color: var(--accent); }
  @supports (color: color-mix(in lab, red, red)) {
  .group-hover\:bg-primary\/20:is(:where(.group):hover *) { background-color: color-mix(in oklab, var(--accent) 20%, transparent); }
}
  .group-hover\:text-primary-foreground:is(:where(.group):hover *) { color: var(--accent-fg); }
  .group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *) { opacity: 1; }
}
  .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar="menu-action"]) *) { padding-right: calc(var(--spacing) * 8); }
  .group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible="icon"] *) { margin-top: calc(var(--spacing) * -8); }
  .group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible="icon"] *) { display: none; }
  .group-data-\[collapsible\=icon\]\:\!size-8:is(:where(.group)[data-collapsible="icon"] *) { width: calc(var(--spacing) * 8) !important; height: calc(var(--spacing) * 8) !important; }
  .group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible="icon"] *) { width: var(--sidebar-width-icon); }
  .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\]:is(:where(.group)[data-collapsible="icon"] *) { width: calc(var(--sidebar-width-icon) + 1rem); }
  .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\]:is(:where(.group)[data-collapsible="icon"] *) { width: calc(var(--sidebar-width-icon) + 1rem + 2px); }
  .group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible="icon"] *) { overflow: hidden; }
  .group-data-\[collapsible\=icon\]\:\!p-0:is(:where(.group)[data-collapsible="icon"] *) { padding: 0px !important; }
  .group-data-\[collapsible\=icon\]\:\!p-2:is(:where(.group)[data-collapsible="icon"] *) { padding: calc(var(--spacing) * 2) !important; }
  .group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible="icon"] *) { opacity: 0; }
  .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible="offcanvas"] *) { right: calc(var(--sidebar-width) * -1); }
  .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible="offcanvas"] *) { left: calc(var(--sidebar-width) * -1); }
  .group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible="offcanvas"] *) { width: 0px; }
  .group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible="offcanvas"] *) { --tw-translate-x: 0px; translate: var(--tw-translate-x) var(--tw-translate-y); }
  .group-data-\[focused\=true\]\/day\:relative:is(:where(.group\/day)[data-focused="true"] *) { position: relative; }
  .group-data-\[focused\=true\]\/day\:z-10:is(:where(.group\/day)[data-focused="true"] *) { z-index: 10; }
  .group-data-\[focused\=true\]\/day\:border-ring:is(:where(.group\/day)[data-focused="true"] *) { border-color: var(--accent); }
  .group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(:where(.group\/day)[data-focused="true"] *) { --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
  .group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused="true"] *) { --tw-ring-color: var(--accent); }
  @supports (color: color-mix(in lab, red, red)) {
  .group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused="true"] *) { --tw-ring-color: color-mix(in oklab, var(--accent) 50%, transparent); }
}
  .group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side="left"] *) { right: calc(var(--spacing) * -4); }
  .group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side="left"] *) { border-right-style: var(--tw-border-style); border-right-width: 1px; }
  .group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side="right"] *) { left: 0px; }
  .group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side="right"] *) { rotate: 180deg; }
  .group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side="right"] *) { border-left-style: var(--tw-border-style); border-left-width: 1px; }
  .group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state="open"] *) { rotate: 180deg; }
  .group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant="floating"] *) { border-radius: var(--radius-lg); }
  .group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant="floating"] *) { border-style: var(--tw-border-style); border-width: 1px; }
  .group-data-\[variant\=floating\]\:shadow:is(:where(.group)[data-variant="floating"] *) { --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); }
  .group-\[\.toast\]\:bg-primary:is(:where(.group).toast *) { background-color: var(--accent); }
  .group-\[\.toast\]\:text-muted-foreground:is(:where(.group).toast *) { color: var(--muted); }
  .group-\[\.toast\]\:text-primary-foreground:is(:where(.group).toast *) { color: var(--accent-fg); }
  .group-\[\.toaster\]\:border-border:is(:where(.group).toaster *) { border-color: var(--border); }
  .group-\[\.toaster\]\:bg-background:is(:where(.group).toaster *) { background-color: var(--bg); }
  .group-\[\.toaster\]\:text-foreground:is(:where(.group).toaster *) { color: var(--fg); }
  .group-\[\.toaster\]\:shadow-lg:is(:where(.group).toaster *) { --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px 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); }
  .peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled ~ *) { cursor: not-allowed; }
  .peer-disabled\:opacity-70:is(:where(.peer):disabled ~ *) { opacity: 0.7; }
  .peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size="default"] ~ *) { top: calc(var(--spacing) * 1.5); }
  .peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size="lg"] ~ *) { top: calc(var(--spacing) * 2.5); }
  .peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size="sm"] ~ *) { top: var(--spacing); }
  .file\:border-0::file-selector-button { border-style: var(--tw-border-style); border-width: 0px; }
  .file\:bg-transparent::file-selector-button { background-color: rgba(0, 0, 0, 0); }
  .file\:text-sm::file-selector-button { font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); }
  .file\:font-medium::file-selector-button { --tw-font-weight: var(--font-weight-medium); font-weight: var(--font-weight-medium); }
  .file\:text-foreground::file-selector-button { color: var(--fg); }
  .placeholder\:text-muted-foreground::placeholder { color: var(--muted); }
  .after\:absolute::after { content: var(--tw-content); position: absolute; }
  .after\:-inset-2::after { content: var(--tw-content); inset: calc(var(--spacing) * -2); }
  .after\:inset-y-0::after { content: var(--tw-content); inset-block: 0px; }
  .after\:left-1\/2::after { content: var(--tw-content); left: 50%; }
  .after\:w-1::after { content: var(--tw-content); width: var(--spacing); }
  .after\:w-\[2px\]::after { content: var(--tw-content); width: 2px; }
  .after\:-translate-x-1\/2::after { content: var(--tw-content); --tw-translate-x: calc(calc(1 / 2 * 100%) * -1); translate: var(--tw-translate-x) var(--tw-translate-y); }
  .group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible="offcanvas"] *)::after { content: var(--tw-content); left: 100%; }
  .first\:rounded-l-md:first-child { border-top-left-radius: var(--radius-md); border-bottom-left-radius: var(--radius-md); }
  .first\:border-l:first-child { border-left-style: var(--tw-border-style); border-left-width: 1px; }
  .last\:rounded-r-md:last-child { border-top-right-radius: var(--radius-md); border-bottom-right-radius: var(--radius-md); }
  @media (hover: hover) {
  .hover\:-translate-y-1:hover { --tw-translate-y: calc(var(--spacing) * -1); translate: var(--tw-translate-x) var(--tw-translate-y); }
  .hover\:border-primary\/40:hover { border-color: var(--accent); }
  @supports (color: color-mix(in lab, red, red)) {
  .hover\:border-primary\/40:hover { border-color: color-mix(in oklab, var(--accent) 40%, transparent); }
}
  .hover\:bg-primary\/80:hover { background-color: var(--accent); }
  @supports (color: color-mix(in lab, red, red)) {
  .hover\:bg-primary\/80:hover { background-color: color-mix(in oklab, var(--accent) 80%, transparent); }
}
  .hover\:bg-primary\/90:hover { background-color: var(--accent); }
  @supports (color: color-mix(in lab, red, red)) {
  .hover\:bg-primary\/90:hover { background-color: color-mix(in oklab, var(--accent) 90%, transparent); }
}
  .hover\:text-foreground:hover { color: var(--fg); }
  .hover\:text-muted-foreground:hover { color: var(--muted); }
  .hover\:text-primary:hover { color: var(--accent); }
  .hover\:underline:hover { text-decoration-line: underline; }
  .hover\:opacity-100:hover { opacity: 1; }
  .hover\:shadow-\[0_0_0_1px_var\(--sidebar-accent\)\]:hover { --tw-shadow: 0 0 0 1px var(--tw-shadow-color, var(--sidebar-accent)); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
}
  .focus\:ring-1:focus { --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
  .focus\:ring-2:focus { --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
  .focus\:ring-ring:focus { --tw-ring-color: var(--accent); }
  .focus\:ring-offset-2:focus { --tw-ring-offset-width: 2px; --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); }
  .focus\:outline-none:focus { --tw-outline-style: none; outline-style: none; }
  .focus-visible\:ring-1:focus-visible { --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
  .focus-visible\:ring-2:focus-visible { --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
  .focus-visible\:ring-ring:focus-visible { --tw-ring-color: var(--accent); }
  .focus-visible\:ring-offset-1:focus-visible { --tw-ring-offset-width: 1px; --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); }
  .focus-visible\:ring-offset-2:focus-visible { --tw-ring-offset-width: 2px; --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); }
  .focus-visible\:ring-offset-background:focus-visible { --tw-ring-offset-color: var(--bg); }
  .focus-visible\:outline-none:focus-visible { --tw-outline-style: none; outline-style: none; }
  .disabled\:pointer-events-none:disabled { pointer-events: none; }
  .disabled\:cursor-not-allowed:disabled { cursor: not-allowed; }
  .disabled\:opacity-50:disabled { opacity: 0.5; }
  .has-focus\:border-ring:has(:focus) { border-color: var(--accent); }
  .has-focus\:ring-\[3px\]:has(:focus) { --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
  .has-focus\:ring-ring\/50:has(:focus) { --tw-ring-color: var(--accent); }
  @supports (color: color-mix(in lab, red, red)) {
  .has-focus\:ring-ring\/50:has(:focus) { --tw-ring-color: color-mix(in oklab, var(--accent) 50%, transparent); }
}
  .has-\[\:disabled\]\:opacity-50:has(:disabled) { opacity: 0.5; }
  .aria-disabled\:pointer-events-none[aria-disabled="true"] { pointer-events: none; }
  .aria-disabled\:opacity-50[aria-disabled="true"] { opacity: 0.5; }
  .aria-selected\:text-muted-foreground[aria-selected="true"] { color: var(--muted); }
  .data-\[active\=true\]\:font-medium[data-active="true"] { --tw-font-weight: var(--font-weight-medium); font-weight: var(--font-weight-medium); }
  .data-\[disabled\]\:pointer-events-none[data-disabled] { pointer-events: none; }
  .data-\[disabled\]\:opacity-50[data-disabled] { opacity: 0.5; }
  .data-\[disabled\=true\]\:pointer-events-none[data-disabled="true"] { pointer-events: none; }
  .data-\[disabled\=true\]\:opacity-50[data-disabled="true"] { opacity: 0.5; }
  .data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction="vertical"] { height: 1px; }
  .data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction="vertical"] { width: 100%; }
  .data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction="vertical"] { flex-direction: column; }
  .data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction="vertical"]::after { content: var(--tw-content); left: 0px; }
  .data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction="vertical"]::after { content: var(--tw-content); height: var(--spacing); }
  .data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction="vertical"]::after { content: var(--tw-content); width: 100%; }
  .data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction="vertical"]::after { content: var(--tw-content); --tw-translate-x: 0px; translate: var(--tw-translate-x) var(--tw-translate-y); }
  .data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction="vertical"]::after { content: var(--tw-content); --tw-translate-y: calc(calc(1 / 2 * 100%) * -1); translate: var(--tw-translate-x) var(--tw-translate-y); }
  .data-\[placeholder\]\:text-muted-foreground[data-placeholder] { color: var(--muted); }
  .data-\[range-end\=true\]\:rounded-md[data-range-end="true"] { border-radius: var(--radius-md); }
  .data-\[range-end\=true\]\:bg-primary[data-range-end="true"] { background-color: var(--accent); }
  .data-\[range-end\=true\]\:text-primary-foreground[data-range-end="true"] { color: var(--accent-fg); }
  .data-\[range-middle\=true\]\:rounded-none[data-range-middle="true"] { border-radius: 0px; }
  .data-\[range-start\=true\]\:rounded-md[data-range-start="true"] { border-radius: var(--radius-md); }
  .data-\[range-start\=true\]\:bg-primary[data-range-start="true"] { background-color: var(--accent); }
  .data-\[range-start\=true\]\:text-primary-foreground[data-range-start="true"] { color: var(--accent-fg); }
  .data-\[selected-single\=true\]\:bg-primary[data-selected-single="true"] { background-color: var(--accent); }
  .data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single="true"] { color: var(--accent-fg); }
  .data-\[selected\=true\]\:rounded-none[data-selected="true"] { border-radius: 0px; }
  .data-\[side\=bottom\]\:translate-y-1[data-side="bottom"] { --tw-translate-y: var(--spacing); translate: var(--tw-translate-x) var(--tw-translate-y); }
  .data-\[side\=left\]\:-translate-x-1[data-side="left"] { --tw-translate-x: calc(var(--spacing) * -1); translate: var(--tw-translate-x) var(--tw-translate-y); }
  .data-\[side\=right\]\:translate-x-1[data-side="right"] { --tw-translate-x: var(--spacing); translate: var(--tw-translate-x) var(--tw-translate-y); }
  .data-\[side\=top\]\:-translate-y-1[data-side="top"] { --tw-translate-y: calc(var(--spacing) * -1); translate: var(--tw-translate-x) var(--tw-translate-y); }
  .data-\[state\=active\]\:bg-background[data-state="active"] { background-color: var(--bg); }
  .data-\[state\=active\]\:text-foreground[data-state="active"] { color: var(--fg); }
  .data-\[state\=active\]\:shadow[data-state="active"] { --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); }
  .data-\[state\=checked\]\:translate-x-4[data-state="checked"] { --tw-translate-x: calc(var(--spacing) * 4); translate: var(--tw-translate-x) var(--tw-translate-y); }
  .data-\[state\=checked\]\:bg-primary[data-state="checked"] { background-color: var(--accent); }
  .data-\[state\=checked\]\:text-primary-foreground[data-state="checked"] { color: var(--accent-fg); }
  .data-\[state\=closed\]\:duration-300[data-state="closed"] { --tw-duration: .3s; transition-duration: 0.3s; }
  .data-\[state\=open\]\:text-muted-foreground[data-state="open"] { color: var(--muted); }
  .data-\[state\=open\]\:opacity-100[data-state="open"] { opacity: 1; }
  .data-\[state\=open\]\:duration-500[data-state="open"] { --tw-duration: .5s; transition-duration: 0.5s; }
  .data-\[state\=unchecked\]\:translate-x-0[data-state="unchecked"] { --tw-translate-x: 0px; translate: var(--tw-translate-x) var(--tw-translate-y); }
  .data-\[state\=unchecked\]\:bg-input[data-state="unchecked"] { background-color: var(--border); }
  @media (width >= 40rem) {
  .sm\:mt-0 { margin-top: 0px; }
  .sm\:flex { display: flex; }
  .sm\:max-w-sm { max-width: var(--container-sm); }
  .sm\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .sm\:flex-row { flex-direction: row; }
  .sm\:justify-end { justify-content: flex-end; }
  .sm\:gap-2\.5 { gap: calc(var(--spacing) * 2.5); }
  :where(.sm\:space-x-2 > :not(:last-child)) { --tw-space-x-reverse: 0; margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse)); margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse))); }
  .sm\:rounded-lg { border-radius: var(--radius-lg); }
  .sm\:text-left { text-align: left; }
}
  @media (width >= 48rem) {
  .md\:absolute { position: absolute; }
  .md\:block { display: block; }
  .md\:flex { display: flex; }
  .md\:w-\[var\(--radix-navigation-menu-viewport-width\)\] { width: var(--radix-navigation-menu-viewport-width); }
  .md\:w-auto { width: auto; }
  .md\:flex-row { flex-direction: row; }
  .md\:text-5xl { font-size: var(--text-5xl); line-height: var(--tw-leading, var(--text-5xl--line-height)); }
  .md\:text-sm { font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); }
  .md\:opacity-0 { opacity: 0; }
  .md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant="inset"] ~ *) { margin: calc(var(--spacing) * 2); }
  .md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant="inset"] ~ *) { margin-left: 0px; }
  .md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant="inset"] ~ *) { border-radius: var(--radius-xl); }
  .md\:peer-data-\[variant\=inset\]\:shadow:is(:where(.peer)[data-variant="inset"] ~ *) { --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); }
  .md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2:is(:where(.peer)[data-state="collapsed"] ~ *):is(:where(.peer)[data-variant="inset"] ~ *) { margin-left: calc(var(--spacing) * 2); }
}
  .after\:md\:hidden::after { content: var(--tw-content); }
  @media (width >= 48rem) {
  .after\:md\:hidden::after { display: none; }
}
  @media (width >= 64rem) {
  .lg\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .lg\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0px, 1fr)); }
}
  .\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text { fill: var(--muted); }
  .\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"] { stroke: var(--border); }
  @supports (color: color-mix(in lab, red, red)) {
  .\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"] { stroke: color-mix(in oklab, var(--border) 50%, transparent); }
}
  .\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor { stroke: var(--border); }
  .\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"] { stroke: rgba(0, 0, 0, 0); }
  .\[\&_\.recharts-layer\]\:outline-none .recharts-layer { --tw-outline-style: none; outline-style: none; }
  .\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"], .\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"] { stroke: var(--border); }
  .\[\&_\.recharts-sector\]\:outline-none .recharts-sector { --tw-outline-style: none; outline-style: none; }
  .\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"] { stroke: rgba(0, 0, 0, 0); }
  .\[\&_\.recharts-surface\]\:outline-none .recharts-surface { --tw-outline-style: none; outline-style: none; }
  .\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading] { padding-inline: calc(var(--spacing) * 2); }
  .\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading] { padding-block: calc(var(--spacing) * 1.5); }
  .\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading] { font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); }
  .\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading] { --tw-font-weight: var(--font-weight-medium); font-weight: var(--font-weight-medium); }
  .\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading] { color: var(--muted); }
  .\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group] { padding-inline: calc(var(--spacing) * 2); }
  .\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden]) ~ [cmdk-group] { padding-top: 0px; }
  .\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg { height: calc(var(--spacing) * 5); }
  .\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg { width: calc(var(--spacing) * 5); }
  .\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input] { height: calc(var(--spacing) * 12); }
  .\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item] { padding-inline: calc(var(--spacing) * 2); }
  .\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item] { padding-block: calc(var(--spacing) * 3); }
  .\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg { height: calc(var(--spacing) * 5); }
  .\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg { width: calc(var(--spacing) * 5); }
  .\[\&_p\]\:leading-relaxed p { --tw-leading: var(--leading-relaxed); line-height: var(--leading-relaxed); }
  .\[\&_svg\]\:pointer-events-none svg { pointer-events: none; }
  .\[\&_svg\]\:size-4 svg { width: calc(var(--spacing) * 4); height: calc(var(--spacing) * 4); }
  .\[\&_svg\]\:shrink-0 svg { flex-shrink: 0; }
  .\[\&_tr\]\:border-b tr { border-bottom-style: var(--tw-border-style); border-bottom-width: 1px; }
  .\[\&_tr\:last-child\]\:border-0 tr:last-child { border-style: var(--tw-border-style); border-width: 0px; }
  .\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected="true"] button { border-top-left-radius: var(--radius-md); border-bottom-left-radius: var(--radius-md); }
  .\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role="checkbox"]) { padding-right: 0px; }
  :is(.rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), [dir="rtl"], [dir="rtl"] *) *):is(.rdp-button_next > svg), :is(.rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), [dir="rtl"], [dir="rtl"] *) *):is(.rdp-button_previous > svg) { rotate: 180deg; }
  .\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected="true"] button { border-top-right-radius: var(--radius-md); border-bottom-right-radius: var(--radius-md); }
  .\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\] > [role="checkbox"] { --tw-translate-y: 2px; translate: var(--tw-translate-x) var(--tw-translate-y); }
  .\[\&\>button\]\:hidden > button { display: none; }
  .\[\&\>span\]\:line-clamp-1 > span { -webkit-line-clamp: 1; -webkit-box-orient: vertical; display: -webkit-box; overflow: hidden; }
  .\[\&\>span\]\:text-xs > span { font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); }
  .\[\&\>span\]\:opacity-70 > span { opacity: 0.7; }
  .\[\&\>span\:last-child\]\:truncate > span:last-child { text-overflow: ellipsis; white-space: nowrap; overflow: hidden; }
  .\[\&\>svg\]\:absolute > svg { position: absolute; }
  .\[\&\>svg\]\:top-4 > svg { top: calc(var(--spacing) * 4); }
  .\[\&\>svg\]\:left-4 > svg { left: calc(var(--spacing) * 4); }
  .\[\&\>svg\]\:size-3\.5 > svg { width: calc(var(--spacing) * 3.5); height: calc(var(--spacing) * 3.5); }
  .\[\&\>svg\]\:size-4 > svg { width: calc(var(--spacing) * 4); height: calc(var(--spacing) * 4); }
  .\[\&\>svg\]\:h-2\.5 > svg { height: calc(var(--spacing) * 2.5); }
  .\[\&\>svg\]\:h-3 > svg { height: calc(var(--spacing) * 3); }
  .\[\&\>svg\]\:h-3\.5 > svg { height: calc(var(--spacing) * 3.5); }
  .\[\&\>svg\]\:w-2\.5 > svg { width: calc(var(--spacing) * 2.5); }
  .\[\&\>svg\]\:w-3 > svg { width: calc(var(--spacing) * 3); }
  .\[\&\>svg\]\:w-3\.5 > svg { width: calc(var(--spacing) * 3.5); }
  .\[\&\>svg\]\:shrink-0 > svg { flex-shrink: 0; }
  .\[\&\>svg\]\:text-foreground > svg { color: var(--fg); }
  .\[\&\>svg\]\:text-muted-foreground > svg { color: var(--muted); }
  .\[\&\>svg\+div\]\:translate-y-\[-3px\] > svg + div { --tw-translate-y: -3px; translate: var(--tw-translate-x) var(--tw-translate-y); }
  .\[\&\>svg\~\*\]\:pl-7 > svg ~ * { padding-left: calc(var(--spacing) * 7); }
  .\[\&\>tr\]\:last\:border-b-0 > tr:last-child { border-bottom-style: var(--tw-border-style); border-bottom-width: 0px; }
  .\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction="vertical"] > div { rotate: 90deg; }
  .\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state="open"] > svg { rotate: 180deg; }
  [data-side="left"] .\[\[data-side\=left\]_\&\]\:cursor-w-resize { cursor: w-resize; }
  [data-side="left"][data-collapsible="offcanvas"] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2 { right: calc(var(--spacing) * -2); }
  [data-side="left"][data-state="collapsed"] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize, [data-side="right"] .\[\[data-side\=right\]_\&\]\:cursor-e-resize { cursor: e-resize; }
  [data-side="right"][data-collapsible="offcanvas"] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2 { left: calc(var(--spacing) * -2); }
  [data-side="right"][data-state="collapsed"] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize { cursor: w-resize; }
  [data-slot="card-content"] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent, [data-slot="popover-content"] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent { background-color: rgba(0, 0, 0, 0); }
}
[data-design="editorial-classic"] { --lp-bg: #f8f4ec; --lp-fg: #1d1b1a; --lp-accent: #a30d21; --lp-muted: #65615d; --lp-panel: #ece2d6; --lp-on-accent: #fff; }
[data-design="dark-signature"] { --lp-bg: #111112; --lp-fg: #f4f1ec; --lp-accent: #ed343a; --lp-muted: #bbb5b4; --lp-panel: #2a1b20; --lp-on-accent: #fff; }
[data-design="paper-editorial"] { --lp-bg: #f6f4ef; --lp-fg: #171918; --lp-accent: #ab1321; --lp-muted: #64635f; --lp-panel: #e7dfd1; --lp-on-accent: #fff; }
[data-design="soft-lavender"] { --lp-bg: #f2eaf3; --lp-fg: #34263a; --lp-accent: #663865; --lp-muted: #716475; --lp-panel: #d6c5dd; --lp-on-accent: #fff; }
[data-design="forest-editorial"] { --lp-bg: #132c23; --lp-fg: #f2efdf; --lp-accent: #b8d5a4; --lp-muted: #b5c3b6; --lp-panel: #264739; --lp-on-accent: #132c23; }
[data-design="warm-organic"] { --lp-bg: #f5eee2; --lp-fg: #362822; --lp-accent: #a5452f; --lp-muted: #79685c; --lp-panel: #e5c9b1; --lp-on-accent: #fff; }
[data-design="technical-grid"] { --lp-bg: #fafafa; --lp-fg: #16191c; --lp-accent: #b91e2b; --lp-muted: #606970; --lp-panel: #e3e8eb; --lp-on-accent: #fff; }
[data-design="midnight-blue"] { --lp-bg: #0c1b27; --lp-fg: #f0f5fa; --lp-accent: #9bcee9; --lp-muted: #a7b8c5; --lp-panel: #1c3b51; --lp-on-accent: #0c1b27; }
[data-design="soft-rose"] { --lp-bg: #faeeed; --lp-fg: #332628; --lp-accent: #a72336; --lp-muted: #776167; --lp-panel: #efd4d3; --lp-on-accent: #fff; }
[data-design="swiss-modern"] { --lp-bg: #f7f7f7; --lp-fg: #151515; --lp-accent: #ce1925; --lp-muted: #606060; --lp-panel: #ddd; --lp-on-accent: #fff; }
.landing { --lp-line: var(--lp-fg); }
@supports (color: color-mix(in lab, red, red)) {
  .landing { --lp-line: color-mix(in srgb, var(--lp-fg) 17%, transparent); }
}
.landing { background: var(--lp-bg); color: var(--lp-fg); isolation: isolate; font-family: Urbanist, sans-serif; position: relative; overflow-x: clip; }
.landing-paper-surface { object-fit: cover; opacity: 0.55; z-index: -1; pointer-events: none; width: 100%; height: 100%; position: absolute; inset: 0px; }
.landing[data-appearance]:not([data-appearance="design"]):not([data-appearance="light"]) .landing-paper-surface { mix-blend-mode: luminosity; opacity: 0.06; }
.landing[data-appearance]:not([data-appearance="design"]) { --lp-bg: var(--bg); --lp-fg: var(--fg); --lp-accent: var(--accent); --lp-muted: var(--muted); --lp-panel: var(--surface-2); --lp-on-accent: var(--accent-fg); }
.landing-header { border-bottom: 1px solid var(--lp-line); z-index: 20; align-items: center; gap: 28px; max-width: 1440px; min-height: 90px; margin: auto; padding: 18px 48px; display: flex; position: relative; }
.landing-logo { margin-right: auto; font-family: Fraunces, serif; font-size: 42px; font-weight: 500; line-height: 1; }
.landing-logo span { color: var(--lp-accent); }
.landing-desktop { align-items: center; gap: 22px; font-size: 12px; font-weight: 600; display: flex; }
.landing-desktop a { white-space: nowrap; padding: 18px 0px; position: relative; }
.landing-desktop a[aria-current] { color: var(--lp-accent); }
.landing-desktop a[aria-current]::after { content: ""; background: var(--lp-accent); height: 2px; position: absolute; bottom: 0px; left: 0px; right: 0px; }
.landing-controls { align-items: center; gap: 7px; display: flex; }
.landing .landing-controls button { color: var(--lp-fg); border-color: var(--lp-line); box-shadow: none; background: none; }
.landing button:focus-visible, .landing a:focus-visible { outline: 2px solid var(--lp-accent); outline-offset: 4px; }
.pending-nav { opacity: 0.5; cursor: not-allowed; font-size: 12px; }
.landing .mobile-menu-toggle { display: none; }
.landing-hero { isolation: isolate; grid-template-columns: 1.25fr 1fr; align-items: center; gap: 38px; max-width: 1344px; min-height: 640px; margin: auto; padding: 70px 48px 48px; display: grid; position: relative; }
.landing-background { z-index: -1; pointer-events: none; position: absolute; inset: 0px; overflow: hidden; }
.paper-background { object-fit: cover; object-position: center center; opacity: 0.72; width: 54%; height: 100%; mask-image: linear-gradient(90deg, transparent, var(--lp-fg) 12%); position: absolute; top: 0px; right: 0px; }
.background-field, .background-line, .background-secondary { display: none; position: absolute; }
.botanical-background { object-fit: contain; width: 210px; height: 430px; position: absolute; }
.landing[data-appearance]:not([data-appearance="design"]):not([data-appearance="light"]) .paper-background { mix-blend-mode: luminosity; opacity: 0.13; }
.hero-copy { z-index: 2; min-width: 0px; position: relative; }
.landing-eyebrow { text-transform: uppercase; letter-spacing: 0px; align-items: center; gap: 18px; font-size: 11px; font-weight: 600; display: flex; }
.landing-eyebrow span { background: var(--lp-line); width: 64px; height: 1px; }
.landing-name { letter-spacing: 0px; white-space: nowrap; margin: 18px 0px 20px; font-family: Anton, Impact, sans-serif; font-size: 150px; font-weight: 400; line-height: 1.08; }
.landing-introduction { max-width: 475px; color: var(--lp-muted); font-size: 17px; line-height: 1.65; }
.landing-actions { flex-wrap: wrap; gap: 12px; margin-top: 30px; display: flex; }
.landing .work-button { height: 43px; box-shadow: none; background: var(--lp-accent); color: var(--lp-on-accent); border-radius: 30px; padding: 0px 23px; font-size: 12px; }
.landing-socials { gap: 10px; margin-top: 20px; display: flex; }
.landing .landing-socials > * { color: var(--lp-fg); border-color: var(--lp-line); width: 33px; height: 33px; box-shadow: none; background: none; border-radius: 50%; }
.portrait-composition { isolation: isolate; width: 100%; max-width: 430px; height: 450px; margin: 0px auto; position: relative; }
.portrait-image { background: var(--lp-panel); position: absolute; inset: 20px 40px 25px; overflow: hidden; }
.portrait-image img { object-fit: cover; object-position: 52% 50%; width: 100%; height: 100%; transform: scale(1.22); }
.portrait-backdrop { background: var(--lp-panel); z-index: -2; position: absolute; inset: 0px 20px 10px; }
.portrait-outline { border: 1px solid var(--lp-accent); z-index: -1; position: absolute; inset: 14px 28px 18px; }
.portrait-composition figcaption { color: var(--lp-muted); justify-content: space-between; font-size: 10px; display: flex; position: absolute; bottom: 0px; left: 40px; right: 40px; }
.portrait-index { font-size: 9px; font-weight: 600; line-height: 2; display: none; position: absolute; top: 60px; right: -18px; }
.portrait-index i { background: var(--lp-accent); width: 20px; height: 2px; margin-top: 14px; display: block; }
.portrait-signature { color: var(--lp-accent); font-family: Fraunces, serif; font-size: 35px; font-style: italic; display: none; position: absolute; bottom: 18px; left: 0px; transform: rotate(-12deg); }
.edition-label { color: var(--lp-muted); grid-column: 1 / -1; justify-content: space-between; margin-top: 10px; font-family: "DM Mono", monospace; font-size: 9px; display: flex; position: relative; }
.landing-highlights { border-top: 1px solid var(--lp-line); border-bottom: 3px solid var(--lp-accent); grid-template-columns: repeat(5, 1fr); gap: 0px; padding: 28px 48px 35px; display: grid; }
.landing-highlight { border-right: 1px solid var(--lp-line); align-items: flex-start; gap: 14px; padding: 8px 20px; display: flex; }
.landing-highlight:first-child { padding-left: 0px; }
.landing-highlight:last-child { border-right: 0px; padding-right: 0px; }
.landing-highlight > svg { width: 25px; height: 25px; color: var(--lp-accent); flex-shrink: 0; }
.landing-highlight h2 { font-size: 11px; font-weight: 700; line-height: 1.5; }
.landing-highlight p { color: var(--lp-muted); margin-top: 5px; font-size: 11px; line-height: 1.6; }
[data-design="editorial-classic"] .landing-name { color: var(--lp-accent); }
[data-design="editorial-classic"] .portrait-backdrop { border-radius: 48% 48% 0px 0px; inset: -20px 0px 0px 30px; }
[data-design="editorial-classic"] .portrait-outline { border-radius: 48% 48% 0px 0px; inset: -36px -12px 30px 12px; }
[data-design="editorial-classic"] .portrait-index { display: block; }
[data-design="editorial-classic"] .background-field { background: var(--lp-panel); border-radius: 50% 50% 0px 0px; width: 470px; height: 640px; display: block; bottom: -90px; right: 8%; }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="editorial-classic"] .background-field { background: color-mix(in srgb, var(--lp-panel) 45%, transparent); }
}
[data-design="editorial-classic"] .background-field { transform: rotate(12deg); }
[data-design="editorial-classic"] .background-secondary { background: var(--lp-panel); border-radius: 55% 55% 0px 0px; width: 230px; height: 370px; display: block; bottom: -80px; right: 25%; }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="editorial-classic"] .background-secondary { background: color-mix(in srgb, var(--lp-panel) 80%, transparent); }
}
[data-design="editorial-classic"] .background-secondary { transform: rotate(-12deg); }
[data-design="editorial-classic"] .background-line { background: var(--lp-accent); width: 1px; display: block; top: 90px; bottom: 45px; right: 4%; }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="editorial-classic"] .background-line { background: color-mix(in srgb, var(--lp-accent) 45%, transparent); }
}
[data-design="dark-signature"] .landing-hero { grid-template-columns: 1fr 1.1fr; }
[data-design="dark-signature"] .landing-name { color: var(--lp-accent); }
[data-design="dark-signature"] .portrait-composition { height: 490px; }
[data-design="dark-signature"] .portrait-image { border-radius: 150px 150px 0px 0px; inset: 0px 10px 0px 55px; }
[data-design="dark-signature"] .portrait-outline { border-radius: 180px 180px 0px 0px; inset: 20px -6px -15px 30px; }
[data-design="dark-signature"] .portrait-backdrop { inset: 70px 0px 40px; }
[data-design="dark-signature"] figcaption { bottom: -28px; }
[data-design="dark-signature"] .background-field { background: linear-gradient(125deg, var(--lp-accent), var(--lp-accent) 70%); border-radius: 230px 230px 0px 0px; width: 410px; height: 500px; display: block; top: 80px; right: 9%; }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="dark-signature"] .background-field { background: linear-gradient(125deg, var(--lp-accent), color-mix(in srgb, var(--lp-accent) 18%, var(--lp-bg)) 70%); }
}
[data-design="dark-signature"] .background-field { transform: rotate(15deg); }
[data-design="dark-signature"] .background-line { border: 1px solid var(--lp-accent); opacity: 0.6; border-radius: 50% 50% 0px 0px; width: 510px; height: 610px; display: block; top: 30px; right: 5%; }
[data-design="dark-signature"] .portrait-backdrop { background: none; }
[data-design="paper-editorial"] .portrait-backdrop { display: none; }
[data-design="paper-editorial"] .portrait-outline { border-color: var(--lp-bg); border-width: 8px; inset: 8px 34px 18px 40px; transform: rotate(-5deg); }
[data-design="paper-editorial"] .portrait-image { clip-path: none; border-radius: 0px; inset: 20px 46px 32px 51px; transform: rotate(-5deg); }
[data-design="paper-editorial"] .portrait-signature { display: block; }
[data-design="paper-editorial"] .portrait-backdrop::after { content: ""; background: var(--lp-panel); width: 70px; height: 20px; position: absolute; top: -8px; left: 47%; transform: rotate(12deg); }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="paper-editorial"] .portrait-backdrop::after { background: color-mix(in srgb, var(--lp-panel) 70%, var(--lp-muted)); }
}
[data-design="paper-editorial"] .portrait-backdrop::after { opacity: 0.7; }
[data-design="soft-lavender"] .landing-name { color: var(--lp-accent); }
[data-design="soft-lavender"] .portrait-backdrop { border-radius: 48% 48% 0px 0px; inset: 0px 50px -20px -20px; transform: rotate(8deg); }
[data-design="soft-lavender"] .portrait-outline { background: var(--lp-accent); border: 0px; width: 1px; inset: 0px -5px 0px auto; }
[data-design="soft-lavender"] .portrait-index { display: block; top: 145px; right: -50px; }
[data-design="soft-lavender"] .portrait-image { top: 35px; left: 30px; right: 45px; }
[data-design="soft-lavender"] .background-field { background: var(--lp-panel); border-radius: 65% 35% 60% 40%; width: 500px; height: 530px; display: block; top: 45px; right: 7%; }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="soft-lavender"] .background-field { background: color-mix(in srgb, var(--lp-panel) 70%, transparent); }
}
[data-design="soft-lavender"] .background-field { transform: rotate(25deg); }
[data-design="soft-lavender"] .background-secondary { background: var(--lp-panel); border-radius: 60% 40% 0px 0px; width: 420px; height: 410px; display: block; bottom: -130px; right: 12%; }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="soft-lavender"] .background-secondary { background: color-mix(in srgb, var(--lp-panel) 45%, transparent); }
}
[data-design="soft-lavender"] .portrait-backdrop { background: none; }
[data-design="forest-editorial"] .landing-hero { grid-template-columns: 1.15fr 0.85fr; }
[data-design="forest-editorial"] .hero-copy { order: 1; }
[data-design="forest-editorial"] .portrait-composition { order: 2; max-width: 365px; }
[data-design="forest-editorial"] .edition-label { order: 3; }
[data-design="forest-editorial"] .portrait-outline { border-radius: 50% 50% 0px 0px; inset: -10px 0px 12px; transform: rotate(-7deg); }
[data-design="forest-editorial"] .portrait-backdrop { background: none; }
[data-design="forest-editorial"] .landing-name { font-size: 132px; }
[data-design="forest-editorial"] .botanical-background { opacity: 0.85; bottom: 30px; right: 29%; transform: rotate(-15deg); }
[data-design="forest-editorial"] .background-line { border: 1px solid var(--lp-accent); border-radius: 50% 50% 0px 0px; width: 490px; height: 570px; display: block; top: 45px; right: 3%; }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="forest-editorial"] .background-line { border: 1px solid color-mix(in srgb, var(--lp-accent) 40%, transparent); }
}
[data-design="forest-editorial"] .background-line { transform: rotate(12deg); }
[data-design="warm-organic"] .landing-name { color: var(--lp-accent); }
[data-design="warm-organic"] .hero-copy { align-self: start; margin-top: 30px; }
[data-design="warm-organic"] .portrait-composition { margin-top: 45px; }
[data-design="warm-organic"] .portrait-backdrop { border-radius: 48% 12% 32% 5%; inset: -30px -5px 20px; transform: rotate(9deg); }
[data-design="warm-organic"] .portrait-outline { border-radius: 46% 28% 8% 40%; inset: 20px -20px -5px 10px; transform: rotate(-12deg); }
[data-design="warm-organic"] .portrait-image { border-radius: 95px 0px 0px; }
[data-design="warm-organic"] .background-field { background: var(--lp-accent); border-radius: 30% 0px 46% 65%; width: 420px; height: 400px; display: block; top: -180px; right: -100px; }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="warm-organic"] .background-field { background: color-mix(in srgb, var(--lp-accent) 80%, var(--lp-panel)); }
}
[data-design="warm-organic"] .background-field { transform: rotate(-20deg); }
[data-design="warm-organic"] .background-line { border: 1px solid var(--lp-accent); width: 550px; height: 510px; display: block; top: 85px; right: 8%; }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="warm-organic"] .background-line { border: 1px solid color-mix(in srgb, var(--lp-accent) 65%, transparent); }
}
[data-design="warm-organic"] .background-line { border-radius: 62% 38% 68% 32%; transform: rotate(-25deg); }
[data-design="warm-organic"] .background-secondary { background: var(--lp-panel); width: 470px; height: 490px; display: block; top: 140px; right: 5%; }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="warm-organic"] .background-secondary { background: color-mix(in srgb, var(--lp-panel) 65%, transparent); }
}
[data-design="warm-organic"] .background-secondary { border-radius: 38% 62% 35% 65%; transform: rotate(24deg); }
[data-design="technical-grid"] .landing-hero { background-image: linear-gradient(var(--lp-line) 1px, transparent 1px), linear-gradient(90deg, var(--lp-line) 1px, transparent 1px); background-size: 54px 54px; }
[data-design="technical-grid"] .landing-name span { color: var(--lp-accent); }
[data-design="technical-grid"] .portrait-backdrop { inset: 0px; }
[data-design="technical-grid"] .portrait-outline { inset: -10px 15px 15px -10px; }
[data-design="technical-grid"] .portrait-index { display: block; right: 5px; }
[data-design="technical-grid"] .portrait-image { left: 15px; right: 65px; }
[data-design="technical-grid"] .background-line { background: var(--lp-accent); width: 9px; height: 9px; display: block; top: 50%; right: 43%; }
[data-design="midnight-blue"] .landing-name { color: var(--lp-accent); }
[data-design="midnight-blue"] .portrait-image { border-radius: 180px 180px 0px 0px; inset: 15px 20px 0px; }
[data-design="midnight-blue"] .portrait-outline { border-radius: 190px 190px 0px 0px; inset: -5px 0px -15px; }
[data-design="midnight-blue"] .portrait-backdrop { inset: 150px -10px -15px; }
[data-design="midnight-blue"] figcaption { bottom: -35px; }
[data-design="midnight-blue"] .background-field { border: 1px solid var(--lp-accent); width: 430px; height: 620px; display: block; top: 40px; right: 5%; }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="midnight-blue"] .background-field { border: 1px solid color-mix(in srgb, var(--lp-accent) 65%, transparent); }
}
[data-design="midnight-blue"] .background-field { background: var(--lp-panel); border-radius: 230px 230px 0px 0px; }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="midnight-blue"] .background-field { background: color-mix(in srgb, var(--lp-panel) 65%, transparent); }
}
[data-design="midnight-blue"] .portrait-backdrop { background: none; }
[data-design="soft-rose"] .landing-hero { grid-template-columns: 1fr 1.2fr; }
[data-design="soft-rose"] .hero-copy { order: 1; }
[data-design="soft-rose"] .portrait-composition { order: 2; max-width: 350px; height: 415px; }
[data-design="soft-rose"] .edition-label { order: 3; }
[data-design="soft-rose"] .landing-name { color: var(--lp-accent); font-size: 138px; }
[data-design="soft-rose"] .portrait-backdrop { inset: 60px -10px -10px; }
[data-design="soft-rose"] .portrait-outline { inset: -12px 20px 30px; }
[data-design="soft-rose"] .portrait-image { inset: 0px 10px 30px 35px; }
[data-design="soft-rose"] .background-field { background: var(--lp-accent); width: 480px; height: 480px; display: block; top: 120px; right: 16%; }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="soft-rose"] .background-field { background: color-mix(in srgb, var(--lp-accent) 12%, var(--lp-panel)); }
}
[data-design="soft-rose"] .background-field { clip-path: polygon(0px 20%, 15% 0px, 48% 14%, 80% 4%, 100% 38%, 92% 77%, 70% 100%, 40% 82%, 10% 95%); transform: rotate(-12deg); }
[data-design="soft-rose"] .botanical-background { opacity: 0.35; filter: grayscale(); bottom: 10px; right: 0px; transform: rotate(12deg); }
[data-design="swiss-modern"] .landing-hero { grid-template-columns: 1.5fr 1fr; gap: 0px; padding-top: 45px; }
[data-design="swiss-modern"] .landing-name span { color: var(--lp-accent); }
[data-design="swiss-modern"] .portrait-composition { max-width: none; height: 490px; }
[data-design="swiss-modern"] .portrait-backdrop { clip-path: polygon(45% 0px, 100% 0px, 70% 100%, 0px 100%); background: var(--lp-accent); inset: 0px -20px 0px 25px; }
[data-design="swiss-modern"] .portrait-image { inset: 55px 0px 25px 50px; }
[data-design="swiss-modern"] .portrait-outline { display: none; }
[data-design="swiss-modern"] .landing-name { font-size: 164px; }
[data-design="swiss-modern"] .background-field { border-left: 35px solid var(--lp-panel); border-right: 60px solid var(--lp-panel); background: var(--lp-panel); width: 500px; height: 840px; display: block; top: -90px; right: -80px; transform: skew(-25deg); }
@supports (color: color-mix(in lab, red, red)) {
  [data-design="swiss-modern"] .background-field { background: color-mix(in srgb, var(--lp-panel) 35%, transparent); }
}
[data-design="swiss-modern"] .background-secondary { background: var(--lp-accent); width: 100px; height: 190px; display: block; top: 0px; right: 2%; transform: skew(-25deg); }
[data-design="swiss-modern"] .background-line { background: var(--lp-accent); width: 1px; height: 220px; display: block; bottom: 25px; right: 47%; transform: rotate(29deg); }
.design-picker, .appearance-picker { background: var(--surface); color: var(--fg); border-color: var(--border); }
.design-picker { width: 410px; max-width: calc(-24px + 100vw); max-height: 75vh; padding: 16px; overflow-y: auto; }
.picker-heading { justify-content: space-between; margin-bottom: 12px; font-size: 12px; font-weight: 600; display: flex; }
.picker-heading > span { color: var(--muted); font-family: "DM Mono", monospace; font-size: 10px; }
.picker-grid { grid-template-columns: 1fr 1fr; gap: 8px; display: grid; }
.design-option { white-space: normal; border: 1px solid var(--border); height: auto; color: var(--fg); border-radius: 4px; flex-direction: column; align-items: stretch; gap: 7px; padding: 5px; display: flex; }
.design-option[aria-pressed="true"] { border-color: var(--accent); }
.design-thumbnail { background: var(--lp-bg); height: 55px; color: var(--lp-fg); align-items: center; gap: 10px; padding: 8px; display: flex; position: relative; overflow: hidden; }
.design-thumbnail > span { z-index: 1; font-family: Anton, sans-serif; font-size: 24px; }
.design-thumbnail i { background: var(--lp-panel); border: 1px solid var(--lp-accent); flex-shrink: 0; width: 38px; height: 46px; }
.design-thumbnail[data-design="dark-signature"] i, .design-thumbnail[data-design="midnight-blue"] i { border-radius: 40% 40% 0px 0px; }
.design-thumbnail[data-design="paper-editorial"] i { transform: rotate(8deg); }
.design-thumbnail[data-design="forest-editorial"], .design-thumbnail[data-design="soft-rose"] { flex-direction: row-reverse; }
.design-thumbnail[data-design="warm-organic"] i { border-radius: 40% 10% 25% 0px; transform: rotate(10deg); }
.design-thumbnail[data-design="swiss-modern"] i { background: var(--lp-accent); transform: skew(-15deg); }
.design-thumbnail[data-design="technical-grid"] { background-image: linear-gradient(90deg, var(--lp-panel) 1px, transparent 1px); background-size: 12px; }
.design-caption { text-align: left; justify-content: space-between; align-items: center; gap: 3px; font-size: 10px; display: flex; }
.design-caption svg { width: 12px; height: 12px; }
.appearance-option { width: 100%; color: var(--fg); justify-content: space-between; display: flex; }
.landing-mobile { background: var(--lp-bg); border-bottom: 1px solid var(--lp-line); padding: 12px 24px; position: absolute; top: 100%; left: 0px; right: 0px; }
.landing-mobile a { border-bottom: 1px solid var(--lp-line); justify-content: space-between; padding: 12px 0px; font-size: 14px; display: flex; }
.landing-mobile svg { width: 16px; }
.landing-mobile .pending-nav { padding: 12px 0px; display: block; }
@media (width >= 1440px) {
  .landing-hero { min-height: 700px; }
}
@media (width <= 1199px) {
  .landing-header { gap: 16px; padding: 18px 30px; }
  .landing-desktop { gap: 14px; font-size: 11px; }
  .landing-name { font-size: 126px; }
  [data-design="forest-editorial"] .landing-name, [data-design="soft-rose"] .landing-name { font-size: 115px; }
  [data-design="swiss-modern"] .landing-name { font-size: 135px; }
  .landing-hero { gap: 20px; padding: 55px 35px 40px; }
  .landing-highlights { padding: 24px 30px; }
  .landing-highlight { gap: 8px; padding: 6px 12px; }
}
@media (width <= 1023px) {
  .landing-desktop { display: none; }
  .landing .mobile-menu-toggle { display: inline-flex; }
  .landing-hero { min-height: 600px; }
  .landing-name, [data-design="swiss-modern"] .landing-name { font-size: 108px; }
  [data-design="forest-editorial"] .landing-name, [data-design="soft-rose"] .landing-name { font-size: 96px; }
  .landing-introduction { font-size: 15px; }
  .portrait-composition { height: 370px; }
  [data-design="dark-signature"] .portrait-composition, [data-design="swiss-modern"] .portrait-composition { height: 400px; }
  .portrait-index { display: none !important; }
  .landing-highlights { grid-template-columns: repeat(3, 1fr); gap: 18px 0px; }
  .landing-highlight:nth-child(3) { border: 0px; }
}
@media (width <= 700px) {
  .landing-header { min-height: 72px; padding: 16px 22px; }
  .landing-logo { font-size: 34px; }
  .landing-hero, [data-design] .landing-hero { grid-template-columns: 1fr; gap: 35px; min-height: 0px; padding: 38px 24px 24px; }
  .hero-copy, [data-design] .hero-copy { order: 0; margin-top: 0px; }
  .landing-name, [data-design] .landing-name { margin: 18px 0px; font-size: 104px; }
  .landing-eyebrow { gap: 10px; font-size: 10px; }
  .landing-eyebrow span { width: 25px; }
  .landing-introduction { max-width: 440px; font-size: 15px; }
  .landing-actions { gap: 8px; margin-top: 22px; }
  .landing .work-button { padding: 0px 17px; font-size: 11px; }
  .portrait-composition, [data-design] .portrait-composition { order: 1; max-width: 350px; height: 340px; margin: 4px auto 15px; }
  .edition-label, [data-design] .edition-label { order: 2; gap: 12px; margin-top: 0px; font-size: 8px; }
  .landing-highlights { grid-template-columns: repeat(2, 1fr); padding: 24px; }
  .landing-highlight { padding: 8px 10px; }
  .landing-highlight:nth-child(3) { border-right: 1px solid var(--lp-line); }
  .landing-highlight:nth-child(2n) { border: 0px; }
  .landing-highlight:nth-child(2n+1) { padding-left: 0px; }
  .landing-highlight:last-child { grid-column: 1 / -1; }
  .paper-background { object-position: center center; opacity: 0.65; width: 100%; }
  [data-design="paper-editorial"] .landing-background { top: 390px; }
  [data-design="forest-editorial"] .botanical-background, [data-design="soft-rose"] .botanical-background { width: 145px; height: 310px; bottom: 50px; left: 0px; }
  [data-design="editorial-classic"] .background-field, [data-design="soft-lavender"] .background-field, [data-design="dark-signature"] .background-field, [data-design="midnight-blue"] .background-field { top: 420px; right: -70px; }
  [data-design="forest-editorial"] .background-line { width: 350px; height: 450px; top: 440px; }
  [data-design="swiss-modern"] .background-field { height: 430px; top: 460px; right: -200px; }
  .background-secondary { width: 260px !important; height: 320px !important; top: 460px !important; right: -40px !important; }
  [data-design="dark-signature"] .background-line, [data-design="warm-organic"] .background-line { width: 350px; height: 450px; top: 440px; right: -50px; }
}
@media (width <= 374px) {
  .landing-name, [data-design] .landing-name { font-size: 90px; }
  .landing-controls { gap: 0px; }
  .landing-hero { padding-inline: 18px; }
}
.reference-background { object-fit: cover; object-position: center center; width: 100%; height: 100%; }
.landing[data-design="technical-grid"] .landing-hero { background-image: none; }
.landing[data-appearance]:not([data-appearance="design"]) .reference-background { opacity: 0.18; mix-blend-mode: luminosity; }
.landing[data-design="paper-editorial"] .landing-background { top: 0px; }
@media (width <= 700px) {
  .reference-background { object-fit: cover; object-position: 72% center; }
  .landing-background { mask-image: linear-gradient(to bottom, transparent, var(--lp-fg) 38%); }
}
@media (prefers-reduced-motion: reduce) {
  .landing *, .design-picker * { transition: none; }
}
.portfolio-overview, .portfolio-page, .portfolio-footer { max-width: 1248px; margin: auto; }
.portfolio-section { border-bottom: 1px solid var(--lp-line); min-width: 0px; padding: 72px 40px; }
.section-eyebrow { letter-spacing: 0.22em; text-transform: uppercase; color: var(--lp-muted); align-items: center; gap: 12px; margin-bottom: 14px; font-size: 12px; font-weight: 700; display: flex; }
.section-eyebrow::before { content: ""; background: var(--lp-accent); flex-shrink: 0; width: 34px; height: 2px; }
.portfolio-section h2 { font-family: var(--font-display); letter-spacing: -0.01em; max-width: 620px; font-size: clamp(32px, 4vw, 46px); font-weight: 600; line-height: 1.12; }
.title-dot { color: var(--lp-accent); }
.section-heading { justify-content: space-between; align-items: flex-end; gap: 32px; margin-bottom: 40px; display: flex; }
.section-side { flex-shrink: 0; align-items: center; gap: 32px; display: flex; }
.section-side > p { max-width: 300px; color: var(--lp-muted); border-left: 1px solid var(--lp-line); padding-left: 20px; font-size: 14px; line-height: 1.65; }
.section-intro, .about-copy > p:not(.section-eyebrow) { color: var(--lp-muted); max-width: 560px; margin: 18px 0px 28px; font-size: 16px; line-height: 1.75; }
.landing .portfolio-link { height: 46px; color: var(--lp-fg); border-color: var(--lp-line); box-shadow: none; white-space: nowrap; background: none; border-radius: 999px; padding: 0px 24px; font-size: 13px; font-weight: 600; }
.landing .portfolio-link:hover { background: var(--lp-panel); border-color: var(--lp-fg); }
.landing .portfolio-cta { background: var(--lp-accent); height: 46px; color: var(--lp-on-accent); box-shadow: none; border-radius: 999px; gap: 10px; padding: 0px 26px; font-size: 13px; font-weight: 600; }
.landing .portfolio-cta:hover { opacity: 0.9; }
.about-section { grid-template-columns: 1.15fr 0.7fr 0.85fr; align-items: center; gap: 48px; display: grid; }
.about-portrait { aspect-ratio: 4 / 5; background: var(--lp-panel); border-radius: 14px; overflow: hidden; }
.about-portrait img { object-fit: cover; width: 100%; height: 100%; }
.profile-facts { border-left: 1px solid var(--lp-line); gap: 26px; padding-left: 28px; display: grid; position: relative; }
.profile-facts > div { gap: 14px; display: flex; position: relative; }
.profile-facts > div::before { content: ""; background: var(--lp-accent); border-radius: 50%; width: 9px; height: 9px; position: absolute; top: 8px; left: -33px; }
.profile-facts svg { color: var(--lp-accent); flex-shrink: 0; margin-top: 2px; }
.profile-facts h3 { font-size: 14px; font-weight: 700; }
.profile-facts p { color: var(--lp-muted); margin-top: 4px; font-size: 13px; line-height: 1.6; }
.skills-preview { grid-template-columns: repeat(4, 1fr); gap: 18px; display: grid; }
.skill-card { border: 1px solid var(--lp-line); background: var(--lp-panel); border-radius: 14px; padding: 24px; }
@supports (color: color-mix(in lab, red, red)) {
  .skill-card { background: color-mix(in srgb, var(--lp-panel) 22%, transparent); }
}
.skill-card { min-width: 0px; }
.skill-card-head { align-items: flex-start; gap: 14px; display: flex; }
.skill-card-head > svg { color: var(--lp-accent); flex-shrink: 0; margin-top: 3px; }
.skill-card h3 { font-size: 15px; font-weight: 700; }
.skill-card-head p { color: var(--lp-muted); margin-top: 4px; font-size: 12px; line-height: 1.55; }
.skill-chips { flex-wrap: wrap; gap: 8px; margin-top: 18px; display: flex; }
.skill-chips span { border: 1px solid var(--lp-line); background: var(--lp-bg); border-radius: 999px; padding: 6px 13px; font-size: 12px; font-weight: 600; }
.skill-item { border: 1px solid var(--lp-line); background: var(--lp-panel); border-radius: 10px; flex-direction: column; justify-content: center; align-items: center; gap: 12px; min-width: 0px; padding: 22px 8px; display: flex; }
@supports (color: color-mix(in lab, red, red)) {
  .skill-item { background: color-mix(in srgb, var(--lp-panel) 18%, transparent); }
}
.skill-item svg { color: var(--lp-accent); }
.skill-item span { text-align: center; overflow-wrap: anywhere; font-size: 12px; font-weight: 600; }
.skill-groups { grid-template-columns: repeat(2, 1fr); gap: 30px; display: grid; }
.skill-group { min-width: 0px; }
.skill-group h3 { margin-bottom: 14px; font-size: 16px; font-weight: 700; }
.skill-group > div { grid-template-columns: repeat(4, 1fr); gap: 10px; display: grid; }
.project-grid { grid-template-columns: repeat(3, 1fr); gap: 22px; display: grid; }
.featured-grid { grid-template-columns: repeat(4, 1fr); }
.project-card { border: 1px solid var(--lp-line); background: var(--lp-panel); border-radius: 14px; min-width: 0px; overflow: hidden; }
@supports (color: color-mix(in lab, red, red)) {
  .project-card { background: color-mix(in srgb, var(--lp-panel) 18%, var(--lp-bg)); }
}
.project-card { transition: transform 0.3s, box-shadow 0.3s; }
.project-card:hover { box-shadow: 0 18px 40px -22px var(--lp-fg); transform: translateY(-4px); }
@supports (color: color-mix(in lab, red, red)) {
  .project-card:hover { box-shadow: 0 18px 40px -22px color-mix(in srgb, var(--lp-fg) 35%, transparent); }
}
.project-card figure { position: relative; }
.project-card img { aspect-ratio: 8 / 5; object-fit: cover; width: 100%; }
.project-card figcaption { color: var(--lp-on-accent); background: var(--lp-accent); border-radius: 999px; padding: 3px 7px; font-size: 9px; position: absolute; bottom: 8px; right: 9px; }
.project-symbol { aspect-ratio: 8 / 5; color: var(--lp-accent); background: var(--lp-panel); place-items: center; display: grid; }
.project-details { padding: 20px; }
.project-details h3 { font-family: var(--font-display); margin-bottom: 6px; font-size: 21px; font-weight: 600; }
.project-details p { color: var(--lp-muted); font-size: 13px; line-height: 1.6; }
.project-meta { justify-content: space-between; align-items: center; gap: 10px; margin-top: 16px; display: flex; }
.project-meta .project-arrow { color: var(--lp-fg); flex-shrink: 0; margin-left: auto; }
.technology-tags { flex-wrap: wrap; gap: 6px; display: flex; }
.technology-tags span { background: var(--lp-panel); border-radius: 999px; padding: 5px 11px; font-size: 11px; font-weight: 600; }
.project-filters { flex-wrap: wrap; gap: 8px; margin: 24px 0px; display: flex; }
.landing .filter-button { border-color: var(--lp-line); color: var(--lp-fg); height: 34px; box-shadow: none; background: none; border-radius: 999px; font-size: 12px; }
.landing .filter-button[aria-pressed="true"] { background: var(--lp-accent); color: var(--lp-on-accent); border-color: var(--lp-accent); }
.cert-timeline { grid-template-columns: repeat(4, 1fr); gap: 26px; display: grid; }
.cert-timeline article { border-top: 1px solid var(--lp-line); grid-template-columns: auto 1fr; align-items: start; gap: 14px; min-width: 0px; padding-top: 22px; display: grid; position: relative; }
.cert-timeline article + article::before { content: ""; background: var(--lp-line); width: 1px; position: absolute; top: 0px; bottom: 0px; left: -13px; }
.cert-timeline article > i { background: var(--lp-accent); border-radius: 50%; width: 11px; height: 11px; position: absolute; top: -6px; left: 0px; }
.cert-timeline article > time { letter-spacing: 0.14em; text-transform: uppercase; color: var(--lp-muted); grid-column: 1 / -1; font-size: 11px; font-weight: 700; }
.cert-timeline article > svg { color: var(--lp-accent); margin-bottom: 12px; }
.cert-timeline .cert-body { min-width: 0px; }
.cert-timeline h3 { font-family: var(--font-display); font-size: 18px; font-weight: 600; line-height: 1.3; }
.cert-timeline p { color: var(--lp-muted); margin-top: 6px; font-size: 13px; line-height: 1.6; }
.cert-timeline .cert-body > span { background: var(--lp-panel); border-radius: 999px; margin-top: 12px; padding: 5px 12px; font-size: 11px; font-weight: 600; display: inline-block; }
.cert-timeline .cert-arrow { color: var(--lp-muted); position: absolute; bottom: 0px; right: 0px; }
.certification-list { gap: 12px; display: grid; }
.certification-list article { border: 1px solid var(--lp-line); border-radius: 12px; align-items: center; gap: 16px; padding: 20px; display: flex; }
.certification-list article svg { color: var(--lp-accent); flex-shrink: 0; }
.certification-list h3 { font-size: 15px; font-weight: 700; }
.certification-list p { color: var(--lp-muted); margin-top: 4px; font-size: 12px; }
.certification-list article > span { color: var(--lp-muted); background: var(--lp-panel); border-radius: 999px; margin-left: auto; padding: 4px 11px; font-size: 11px; }
.blog-empty { color: var(--lp-muted); gap: 18px; padding: 28px 0px; display: flex; }
.blog-empty svg { color: var(--lp-accent); flex-shrink: 0; }
.blog-empty h3 { color: var(--lp-fg); font-size: 16px; font-weight: 700; }
.blog-empty p { margin-top: 8px; font-size: 13px; line-height: 1.6; }
.contact-section { grid-template-columns: 1fr 1fr; align-items: start; gap: 64px; display: grid; }
.contact-links { gap: 20px; margin: 8px 0px; display: grid; }
.contact-links a, .contact-links .contact-place { align-items: center; gap: 16px; display: flex; }
.contact-links a > svg, .contact-links .contact-place > svg { background: var(--lp-accent); border-radius: 50%; width: 44px; height: 44px; padding: 12px; }
@supports (color: color-mix(in lab, red, red)) {
  .contact-links a > svg, .contact-links .contact-place > svg { background: color-mix(in srgb, var(--lp-accent) 12%, transparent); }
}
.contact-links a > svg, .contact-links .contact-place > svg { color: var(--lp-accent); flex-shrink: 0; }
.contact-links a > svg:last-child { width: 18px; height: 18px; color: var(--lp-fg); background: none; margin-left: auto; padding: 0px; }
.contact-links strong { font-size: 15px; display: block; }
.contact-links span { color: var(--lp-muted); overflow-wrap: anywhere; margin-top: 2px; font-size: 13px; display: block; }
.contact-form { border: 1px solid var(--lp-line); border-radius: 14px; padding: 30px; }
.contact-form h3 { font-family: var(--font-display); font-size: 22px; font-weight: 600; }
.form-note { color: var(--lp-muted); margin: 12px 0px 20px; font-size: 12px; line-height: 1.6; }
.contact-form label { margin: 14px 0px 6px; font-size: 12px; font-weight: 700; display: block; }
.contact-form input, .contact-form textarea { border: 1px solid var(--lp-line); background: var(--lp-bg); width: 100%; color: var(--lp-fg); font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; border-radius: 8px; padding: 11px 12px; font-size: 14px; }
.contact-form input:focus, .contact-form textarea:focus { outline: 2px solid var(--lp-accent); outline-offset: 2px; }
.landing .contact-submit { background: var(--lp-accent); color: var(--lp-on-accent); box-shadow: none; border-radius: 999px; margin-top: 18px; }
.form-feedback { color: var(--lp-accent); margin-top: 16px; font-size: 13px; line-height: 1.6; }
.portfolio-footer { grid-template-columns: 1fr 2fr; gap: 30px; padding: 44px 40px; display: grid; }
.portfolio-footer .landing-logo { font-family: var(--font-display); font-size: 26px; }
.portfolio-footer p { color: var(--lp-muted); margin-top: 12px; font-size: 12px; }
.portfolio-footer nav { flex-wrap: wrap; place-content: center end; gap: 16px 26px; font-size: 13px; display: flex; }
.footer-bottom { border-top: 1px solid var(--lp-line); color: var(--lp-muted); grid-column: 1 / -1; align-items: center; gap: 18px; padding-top: 24px; font-size: 12px; display: flex; }
.footer-bottom > span { margin-right: auto; }
.portfolio-page { min-height: 65vh; padding-top: 30px; }
.portfolio-page .about-section { grid-template-columns: 1.15fr 0.8fr; }
.portfolio-page .profile-facts { border-left: 0px; border-top: 1px solid var(--lp-line); grid-column: 1 / -1; grid-template-columns: repeat(4, 1fr); padding-top: 32px; padding-left: 0px; }
.portfolio-page .profile-facts > div::before { display: none; }
.portfolio-page .about-portrait { justify-self: end; width: 100%; max-width: 360px; }
@media (width <= 1199px) {
  .skills-preview { grid-template-columns: repeat(2, 1fr); }
  .cert-timeline { grid-template-columns: repeat(2, 1fr); row-gap: 36px; }
  .about-section { grid-template-columns: 1fr 0.65fr; }
  .about-section .profile-facts { border-left: 0px; border-top: 1px solid var(--lp-line); grid-column: 1 / -1; grid-template-columns: repeat(2, 1fr); padding-top: 28px; padding-left: 0px; }
  .about-section .profile-facts > div::before { display: none; }
  .landing-desktop { gap: 12px; }
  .landing-header { gap: 16px; }
}
@media (width <= 800px) {
  .featured-grid, .project-grid { grid-template-columns: repeat(2, 1fr); }
  .portfolio-section { padding: 48px 24px; }
  .portfolio-section h2 { font-size: 30px; }
  .section-heading { flex-direction: column; align-items: flex-start; gap: 20px; }
  .section-side { flex-direction: column; align-items: flex-start; gap: 16px; }
  .section-side > p { border-left: 0px; padding-left: 0px; }
  .skills-preview, .cert-timeline, .profile-facts, .about-section .profile-facts, .portfolio-page .profile-facts, .skill-groups { grid-template-columns: 1fr; }
  .contact-section { grid-template-columns: 1fr; gap: 36px; }
  .portfolio-footer { grid-template-columns: 1fr; padding: 36px 24px; }
  .portfolio-footer nav { justify-content: start; }
}
@media (width <= 500px) {
  .about-section, .portfolio-page .about-section { grid-template-columns: 1fr; }
  .about-portrait, .portfolio-page .about-portrait { justify-self: center; width: 100%; max-width: 260px; }
  .section-heading { flex-direction: column; align-items: start; gap: 16px; }
  .skills-preview { grid-template-columns: repeat(3, 1fr); }
  .featured-grid, .project-grid { grid-template-columns: 1fr; }
  .skill-group > div { grid-template-columns: repeat(2, 1fr); }
  .portfolio-footer { grid-template-columns: 1fr; }
  .portfolio-footer nav { justify-content: start; }
  .certification-list article { gap: 10px; padding: 14px; }
  .certification-list article > span { font-size: 9px; }
  .contact-form { padding: 20px; }
}
.home-editorial { --he-bg: var(--lp-bg); --he-panel: var(--lp-panel); --he-fg: var(--lp-fg); --he-muted: var(--lp-muted); --he-accent: var(--lp-accent); --he-on-accent: var(--lp-on-accent); --he-line: var(--lp-fg); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial { --he-line: color-mix(in srgb, var(--lp-fg) 14%, transparent); }
}
.home-editorial { background: var(--he-bg); color: var(--he-fg); }
.home-editorial .portfolio-section { border-bottom-color: var(--he-line); position: relative; overflow: hidden; }
.home-editorial .section-eyebrow { color: var(--he-muted); }
.home-editorial .section-eyebrow::before { background: var(--he-accent); }
.home-editorial .portfolio-section h2 { color: var(--he-fg); }
.home-editorial .portfolio-section h2 em { color: var(--he-accent); font-style: normal; }
.home-editorial .section-ghost { font-family: var(--font-display); letter-spacing: 0.02em; white-space: nowrap; pointer-events: none; user-select: none; color: rgba(0, 0, 0, 0); background: linear-gradient(180deg, var(--he-accent), var(--he-accent)); font-size: clamp(90px, 15vw, 210px); font-weight: 700; line-height: 1; position: absolute; top: 8px; left: 50%; transform: translateX(-50%); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .section-ghost { background: linear-gradient(180deg, color-mix(in srgb, var(--he-accent) 45%, transparent), color-mix(in srgb, var(--he-accent) 10%, transparent)); }
}
.home-editorial .section-ghost { background-clip: text; }
.home-editorial .section-arc { width: min(46%, 600px); color: var(--he-accent); position: absolute; top: 60px; right: 40px; }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .section-arc { color: color-mix(in srgb, var(--he-accent) 50%, transparent); }
}
.home-editorial .section-arc { pointer-events: none; }
.home-editorial .section-heading { padding-top: clamp(60px, 9vw, 130px); position: relative; }
.home-editorial .section-side > p { color: var(--he-muted); border-left-color: var(--he-line); }
.home-editorial .section-intro, .home-editorial .about-copy > p:not(.section-eyebrow) { color: var(--he-muted); }
.home-editorial .portfolio-link { color: var(--he-fg); border-color: var(--he-accent); }
.home-editorial .portfolio-link:hover { background: var(--he-panel); border-color: var(--he-accent); }
.home-editorial .portfolio-cta { background: var(--he-accent); color: var(--he-on-accent); box-shadow: 0 10px 30px -10px var(--he-accent); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .portfolio-cta { box-shadow: 0 10px 30px -10px color-mix(in srgb, var(--he-accent) 60%, transparent); }
}
.home-editorial .about-section { padding-top: clamp(90px, 12vw, 170px); }
.home-editorial .about-portrait { background: var(--he-panel); border: 1px solid var(--he-accent); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .about-portrait { border: 1px solid color-mix(in srgb, var(--he-accent) 50%, transparent); }
}
.home-editorial .about-portrait { box-shadow: 0 0 60px -12px var(--he-accent); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .about-portrait { box-shadow: 0 0 60px -12px color-mix(in srgb, var(--he-accent) 55%, transparent); }
}
.home-editorial .profile-facts { border-left: none; padding-left: 0px; }
.home-editorial .profile-facts > div { border-bottom: 1px solid var(--he-line); padding-bottom: 22px; }
.home-editorial .profile-facts > div::before { content: none; }
.home-editorial .profile-facts svg { background: var(--he-accent); border-radius: 50%; width: 46px; height: 46px; padding: 12px; }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .profile-facts svg { background: color-mix(in srgb, var(--he-accent) 14%, transparent); }
}
.home-editorial .profile-facts svg { color: var(--he-accent); margin-top: 0px; }
.home-editorial .profile-facts h3 { color: var(--he-fg); font-size: 15px; }
.home-editorial .profile-facts p { color: var(--he-muted); }
.home-editorial .skill-card, .home-editorial .project-card { background: var(--he-panel); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .skill-card, .home-editorial .project-card { background: color-mix(in srgb, var(--he-panel) 55%, transparent); }
}
.home-editorial .skill-card, .home-editorial .project-card { border-color: var(--he-line); }
.home-editorial .skill-card h3, .home-editorial .project-details h3 { color: var(--he-fg); }
.home-editorial .skill-card-head p, .home-editorial .project-details p { color: var(--he-muted); }
.home-editorial .skill-card-head > svg { background: var(--he-accent); border-radius: 12px; width: 44px; height: 44px; padding: 11px; }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .skill-card-head > svg { background: color-mix(in srgb, var(--he-accent) 16%, transparent); }
}
.home-editorial .skill-card-head > svg { color: var(--he-accent); margin-top: 0px; }
.home-editorial .skill-chips span { border-color: var(--he-line); color: var(--he-fg); background: none; }
.home-editorial .project-card:hover { box-shadow: 0 18px 44px -20px var(--he-accent); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .project-card:hover { box-shadow: 0 18px 44px -20px color-mix(in srgb, var(--he-accent) 50%, transparent); }
}
.home-editorial .technology-tags span { background: var(--he-panel); color: var(--he-fg); }
.home-editorial .project-meta .project-arrow { border: 1px solid var(--he-line); width: 34px; height: 34px; color: var(--he-fg); border-radius: 50%; padding: 8px; }
.home-editorial .cert-timeline article { border-top-color: var(--he-line); }
.home-editorial .cert-timeline article > i { background: var(--he-accent); box-shadow: 0 0 12px 2px var(--he-accent); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .cert-timeline article > i { box-shadow: 0 0 12px 2px color-mix(in srgb, var(--he-accent) 60%, transparent); }
}
.home-editorial .cert-timeline article > svg { color: var(--he-accent); }
.home-editorial .cert-timeline h3 { color: var(--he-fg); }
.home-editorial .cert-timeline p { color: var(--he-muted); }
.home-editorial .cert-timeline .cert-body > span { background: var(--he-panel); color: var(--he-fg); }
.home-editorial .cert-timeline article > time, .home-editorial .cert-timeline .cert-arrow, .home-editorial .blog-empty { color: var(--he-muted); }
.home-editorial .blog-empty h3 { color: var(--he-fg); }
.home-editorial .contact-section { padding-top: clamp(90px, 12vw, 170px); }
.home-editorial .contact-links a, .home-editorial .contact-links .contact-place { border-bottom: 1px solid var(--he-line); padding-bottom: 18px; }
.home-editorial .contact-links a > svg:first-child, .home-editorial .contact-links .contact-place > svg { background: var(--he-accent); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .contact-links a > svg:first-child, .home-editorial .contact-links .contact-place > svg { background: color-mix(in srgb, var(--he-accent) 14%, transparent); }
}
.home-editorial .contact-links a > svg:first-child, .home-editorial .contact-links .contact-place > svg { color: var(--he-accent); }
.home-editorial .contact-links strong { color: var(--he-fg); }
.home-editorial .contact-links span { color: var(--he-muted); }
.home-editorial .contact-links a > svg:last-child { color: var(--he-fg); }
@media (width <= 800px) {
  .home-editorial .section-arc { display: none; }
  .home-editorial .section-ghost { font-size: clamp(64px, 18vw, 110px); }
}
.home-editorial .project-card figcaption { background: var(--he-accent); color: var(--he-on-accent); }
.home-editorial .blog-empty svg { color: var(--he-accent); }
.home-editorial .section-ghost { background: linear-gradient(180deg, var(--he-accent), var(--he-accent)); font-size: clamp(64px, 9.5vw, 132px); top: 26px; }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .section-ghost { background: linear-gradient(180deg, color-mix(in srgb, var(--he-accent) 30%, transparent), color-mix(in srgb, var(--he-accent) 6%, transparent)); }
}
.home-editorial .section-ghost { opacity: 0; pointer-events: none; background-clip: text; transition: opacity 0.7s, transform 0.7s cubic-bezier(0.22, 1, 0.36, 1); transform: translateX(-50%) scale(0.96); }
.home-editorial .portfolio-section:hover .section-ghost { opacity: 1; transform: translateX(-50%) scale(1); }
.home-editorial .section-heading { padding-top: clamp(46px, 6.5vw, 92px); }
.reveal { opacity: 1; transform: none; }
.reveal.reveal-pending { opacity: 0; transition: opacity 0.8s cubic-bezier(0.22, 1, 0.36, 1), transform 0.8s cubic-bezier(0.22, 1, 0.36, 1); transform: translateY(24px); }
.reveal.reveal-pending.in { opacity: 1; transform: none; }
.home-editorial .skill-card, .home-editorial .project-card, .home-editorial .cert-timeline article, .home-editorial .blog-card { transition: transform 0.35s, box-shadow 0.35s, border-color 0.35s; }
.home-editorial .project-grid { grid-template-columns: repeat(4, 1fr); gap: 18px; margin-top: 36px; }
.home-editorial .project-card { transition: transform 0.35s, box-shadow 0.35s, border-color 0.35s; }
.home-editorial .project-card:hover { border-color: var(--he-accent); transform: translateY(-6px); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .project-card:hover { border-color: color-mix(in srgb, var(--he-accent) 45%, transparent); }
}
.home-editorial .project-card:hover { box-shadow: 0 20px 48px -24px var(--he-accent); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .project-card:hover { box-shadow: 0 20px 48px -24px color-mix(in srgb, var(--he-accent) 55%, transparent); }
}
@media (width <= 1100px) {
  .home-editorial .project-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (width <= 500px) {
  .home-editorial .project-grid { grid-template-columns: 1fr; }
}
.home-editorial .skill-card:hover, .home-editorial .blog-card:hover { border-color: var(--he-accent); transform: translateY(-4px); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .skill-card:hover, .home-editorial .blog-card:hover { border-color: color-mix(in srgb, var(--he-accent) 45%, transparent); }
}
.home-editorial .skill-card:hover, .home-editorial .blog-card:hover { box-shadow: 0 16px 40px -22px var(--he-accent); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .skill-card:hover, .home-editorial .blog-card:hover { box-shadow: 0 16px 40px -22px color-mix(in srgb, var(--he-accent) 55%, transparent); }
}
.home-editorial .cert-visual { border: 1px solid var(--he-accent); align-content: center; gap: 6px; width: 132px; min-height: 150px; margin-bottom: 0px; display: grid; }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .cert-visual { border: 1px solid color-mix(in srgb, var(--he-accent) 35%, transparent); }
}
.home-editorial .cert-visual { background: linear-gradient(150deg, var(--he-accent), var(--he-panel)); border-radius: 12px; padding: 18px; }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .cert-visual { background: linear-gradient(150deg, color-mix(in srgb, var(--he-accent) 14%, var(--he-panel)), var(--he-panel)); }
}
.home-editorial .cert-visual { box-shadow: inset 0 0 0 4px var(--he-bg), inset 0 0 0 5px var(--he-accent); }
@supports (color: color-mix(in lab, red, red)) {
  .home-editorial .cert-visual { box-shadow: inset 0 0 0 4px var(--he-bg), inset 0 0 0 5px color-mix(in srgb, var(--he-accent) 25%, transparent); }
}
.home-editorial .cert-visual svg { color: var(--he-accent); }
.home-editorial .cert-visual strong { font-family: var(--font-display); color: var(--he-fg); font-size: 14px; line-height: 1.3; }
.home-editorial .cert-visual small { color: var(--he-muted); font-size: 11px; }
.home-editorial .cert-tone-blue { background: linear-gradient(160deg, oklch(0.35 0.12 285), oklch(0.2 0.08 300)); }
.home-editorial .cert-tone-blue strong, .home-editorial .cert-tone-blue small { color: oklch(0.95 0.02 290); }
.home-editorial .cert-tone-light { background: linear-gradient(160deg, oklch(0.96 0.01 280), oklch(0.88 0.03 290)); }
.home-editorial .cert-tone-light strong { color: oklch(0.3 0.05 290); }
.home-editorial .cert-tone-light small { color: oklch(0.5 0.04 290); }
.home-editorial .cert-tone-rose { background: linear-gradient(160deg, oklch(0.9 0.05 20), oklch(0.78 0.08 15)); }
.home-editorial .cert-tone-rose strong { color: oklch(0.35 0.08 20); }
.home-editorial .cert-tone-rose small { color: oklch(0.48 0.06 20); }
.home-editorial .cert-tone-dark { background: linear-gradient(160deg, oklch(0.22 0.04 300), oklch(0.14 0.03 300)); }
.home-editorial .cert-tone-dark strong, .home-editorial .cert-tone-dark small { color: oklch(0.92 0.02 300); }
.blog-grid { grid-template-columns: repeat(4, 1fr); gap: 18px; display: grid; }
.blog-card { border: 1px solid var(--he-line); background: var(--he-panel); border-radius: 14px; padding: 18px; }
@supports (color: color-mix(in lab, red, red)) {
  .blog-card { background: color-mix(in srgb, var(--he-panel) 55%, transparent); }
}
.blog-card { min-width: 0px; }
.blog-cover { aspect-ratio: 16 / 9; color: var(--he-accent); background: linear-gradient(140deg, var(--he-accent), var(--he-panel)); border-radius: 10px; place-items: center; margin-bottom: 14px; display: grid; }
@supports (color: color-mix(in lab, red, red)) {
  .blog-cover { background: linear-gradient(140deg, color-mix(in srgb, var(--he-accent) 18%, var(--he-panel)), var(--he-panel)); }
}
.blog-card h3 { font-family: var(--font-display); color: var(--he-fg); font-size: 17px; font-weight: 600; line-height: 1.35; }
.blog-card p { color: var(--he-muted); margin-top: 8px; font-size: 12.5px; line-height: 1.6; }
.blog-meta { justify-content: space-between; align-items: center; gap: 10px; margin-top: 14px; display: flex; }
.blog-meta span { background: var(--he-panel); color: var(--he-fg); border-radius: 999px; padding: 5px 12px; font-size: 11px; font-weight: 600; }
.blog-meta em { color: var(--he-muted); font-size: 11px; font-style: italic; }
@media (width <= 1199px) {
  .blog-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (width <= 800px) {
  .blog-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .reveal.reveal-pending { opacity: 1; transition: none; transform: none; }
  .home-editorial .section-ghost { transition: none; }
}
.cert-visual-photo { padding: 0px; display: block; overflow: hidden; }
.cert-visual-photo img { object-fit: cover; object-position: center top; border-radius: inherit; width: 100%; height: 100%; display: block; }
.home-editorial .skill-card { position: relative; overflow: hidden; }
.home-editorial .skill-card::before { content: ""; background: var(--he-accent); opacity: 0.55; width: 3px; display: block; position: absolute; inset: 0px auto 0px 0px; }
.home-editorial .skill-card-head > svg { transition: rotate 0.3s, transform 0.3s; }
.home-editorial .skill-card:hover .skill-card-head > svg { transform: scale(1.1); }
.home-editorial .skill-chips span { transition: background 0.22s, color 0.22s, translate 0.22s; }
.home-editorial .skill-chips span:hover { background: var(--he-accent); color: var(--he-on-accent); translate: 0px -2px; }
:root, [data-theme="red"] { --bg: oklch(13% .012 20); --surface: oklch(17% .015 20); --surface-2: oklch(21% .018 20); --fg: oklch(96% .005 20); --muted: oklch(68% .01 20); --accent: oklch(62% .22 25); --accent-soft: oklch(62% .22 25 / .14); --accent-fg: oklch(98% .01 20); --border: oklch(96% .005 20 / .1); --glow: oklch(62% .22 25 / .35); --lightningcss-light: ; --lightningcss-dark: initial; color-scheme: dark; }
[data-theme="purple"] { --bg: oklch(14% .02 300); --surface: oklch(18% .025 300); --surface-2: oklch(22% .03 300); --fg: oklch(96% .008 300); --muted: oklch(70% .02 300); --accent: oklch(68% .19 295); --accent-soft: oklch(68% .19 295 / .16); --accent-fg: oklch(14% .02 300); --border: oklch(96% .008 300 / .1); --glow: oklch(68% .19 295 / .35); --lightningcss-light: ; --lightningcss-dark: initial; color-scheme: dark; }
[data-theme="ocean"] { --bg: oklch(14% .02 230); --surface: oklch(18% .025 230); --surface-2: oklch(22% .03 230); --fg: oklch(96% .008 230); --muted: oklch(70% .02 230); --accent: oklch(72% .14 220); --accent-soft: oklch(72% .14 220 / .16); --accent-fg: oklch(13% .02 230); --border: oklch(96% .008 230 / .1); --glow: oklch(72% .14 220 / .35); --lightningcss-light: ; --lightningcss-dark: initial; color-scheme: dark; }
[data-theme="forest"] { --bg: oklch(14% .02 155); --surface: oklch(18% .025 155); --surface-2: oklch(22% .03 155); --fg: oklch(96% .008 155); --muted: oklch(70% .02 155); --accent: oklch(75% .17 150); --accent-soft: oklch(75% .17 150 / .16); --accent-fg: oklch(13% .02 155); --border: oklch(96% .008 155 / .1); --glow: oklch(75% .17 150 / .35); --lightningcss-light: ; --lightningcss-dark: initial; color-scheme: dark; }
[data-theme="light"] { --bg: oklch(98% .005 40); --surface: oklch(100% 0 0); --surface-2: oklch(95% .008 40); --fg: oklch(18% .01 20); --muted: oklch(45% .01 20); --accent: oklch(58% .22 25); --accent-soft: oklch(58% .22 25 / .1); --accent-fg: oklch(99% .005 20); --border: oklch(18% .01 20 / .1); --glow: oklch(58% .22 25 / .25); --lightningcss-light: initial; --lightningcss-dark: ; color-scheme: light; }
[data-theme="system"] { --bg: oklch(13% .012 20); --surface: oklch(17% .015 20); --surface-2: oklch(21% .018 20); --fg: oklch(96% .005 20); --muted: oklch(68% .01 20); --accent: oklch(62% .22 25); --accent-soft: oklch(62% .22 25 / .14); --accent-fg: oklch(98% .01 20); --border: oklch(96% .005 20 / .1); --glow: oklch(62% .22 25 / .35); --lightningcss-light: ; --lightningcss-dark: initial; color-scheme: dark; }
@media (prefers-color-scheme: light) {
  [data-theme="system"] { --bg: oklch(98% .005 40); --surface: oklch(100% 0 0); --surface-2: oklch(95% .008 40); --fg: oklch(18% .01 20); --muted: oklch(45% .01 20); --accent: oklch(58% .22 25); --accent-soft: oklch(58% .22 25 / .1); --accent-fg: oklch(99% .005 20); --border: oklch(18% .01 20 / .1); --glow: oklch(58% .22 25 / .25); --lightningcss-light: initial; --lightningcss-dark: ; color-scheme: light; }
}
html { scroll-behavior: smooth; overflow-x: clip; }
body { background: var(--bg); color: var(--fg); }
body, button, a, div, span, p, h1, h2, h3, section, header, footer, nav { transition: background-color 0.35s, color 0.35s, border-color 0.35s; }
::selection { background: var(--accent); color: var(--accent-fg); }
@keyframes rise { 
  0% { opacity: 0; transform: translateY(18px); }
  100% { opacity: 1; transform: none; }
}
@keyframes floaty { 
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-12px); }
}
@keyframes pulse-dot { 
  0%, 100% { opacity: 1; }
  50% { opacity: 0.35; }
}
.rise { animation: 0.7s cubic-bezier(0.22, 1, 0.36, 1) 0s 1 normal both running rise; }
.floaty { animation: 6s ease-in-out 0s infinite normal none running floaty; }
.pulse-dot { animation: 2s ease-in-out 0s infinite normal none running pulse-dot; }
@media (prefers-reduced-motion: reduce) {
  .rise, .floaty, .pulse-dot { animation: auto ease 0s 1 normal none running none; }
  html { scroll-behavior: auto; }
}
@property --tw-translate-x { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-translate-y { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-translate-z { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-rotate-x { syntax: "*"; inherits: false; }
@property --tw-rotate-y { syntax: "*"; inherits: false; }
@property --tw-rotate-z { syntax: "*"; inherits: false; }
@property --tw-skew-x { syntax: "*"; inherits: false; }
@property --tw-skew-y { syntax: "*"; inherits: false; }
@property --tw-space-y-reverse { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-space-x-reverse { syntax: "*"; inherits: false; initial-value: 0; }
@property --tw-border-style { syntax: "*"; inherits: false; initial-value: solid; }
@property --tw-leading { syntax: "*"; inherits: false; }
@property --tw-font-weight { syntax: "*"; inherits: false; }
@property --tw-tracking { syntax: "*"; inherits: false; }
@property --tw-ordinal { syntax: "*"; inherits: false; }
@property --tw-slashed-zero { syntax: "*"; inherits: false; }
@property --tw-numeric-figure { syntax: "*"; inherits: false; }
@property --tw-numeric-spacing { syntax: "*"; inherits: false; }
@property --tw-numeric-fraction { syntax: "*"; inherits: false; }
@property --tw-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-shadow-color { syntax: "*"; inherits: false; }
@property --tw-shadow-alpha { syntax: "<percentage>"; inherits: false; initial-value: 100%; }
@property --tw-inset-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-inset-shadow-color { syntax: "*"; inherits: false; }
@property --tw-inset-shadow-alpha { syntax: "<percentage>"; inherits: false; initial-value: 100%; }
@property --tw-ring-color { syntax: "*"; inherits: false; }
@property --tw-ring-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-inset-ring-color { syntax: "*"; inherits: false; }
@property --tw-inset-ring-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-ring-inset { syntax: "*"; inherits: false; }
@property --tw-ring-offset-width { syntax: "<length>"; inherits: false; initial-value: 0; }
@property --tw-ring-offset-color { syntax: "*"; inherits: false; initial-value: #fff; }
@property --tw-ring-offset-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-outline-style { syntax: "*"; inherits: false; initial-value: solid; }
@property --tw-blur { syntax: "*"; inherits: false; }
@property --tw-brightness { syntax: "*"; inherits: false; }
@property --tw-contrast { syntax: "*"; inherits: false; }
@property --tw-grayscale { syntax: "*"; inherits: false; }
@property --tw-hue-rotate { syntax: "*"; inherits: false; }
@property --tw-invert { syntax: "*"; inherits: false; }
@property --tw-opacity { syntax: "*"; inherits: false; }
@property --tw-saturate { syntax: "*"; inherits: false; }
@property --tw-sepia { syntax: "*"; inherits: false; }
@property --tw-drop-shadow { syntax: "*"; inherits: false; }
@property --tw-drop-shadow-color { syntax: "*"; inherits: false; }
@property --tw-drop-shadow-alpha { syntax: "<percentage>"; inherits: false; initial-value: 100%; }
@property --tw-drop-shadow-size { syntax: "*"; inherits: false; }
@property --tw-duration { syntax: "*"; inherits: false; }
@property --tw-ease { syntax: "*"; inherits: false; }
@property --tw-content { syntax: "*"; inherits: false; initial-value: ""; }
@keyframes pulse { 
  50% { opacity: 0.5; }
}
.about-experience { padding-bottom: clamp(30px, 5vw, 60px); }
.about-band { border-bottom: 1px solid var(--lp-line); max-width: 1248px; margin: auto; padding: clamp(44px, 6vw, 76px) 40px; }
.about-band > .section-eyebrow { margin-bottom: 14px; }
.about-band h2 { font-family: var(--font-display); font-size: clamp(26px, 3.2vw, 38px); font-weight: 500; line-height: 1.22; }
.about-band em { color: var(--lp-accent); font-style: normal; }
.about-narrative > p:not(.section-eyebrow) { color: var(--lp-muted); font-size: 14px; }
.about-narrative .portfolio-cta { margin-top: 24px; }
.about-intro { grid-template-columns: minmax(0px, 1fr) minmax(0px, 0.85fr); align-items: center; gap: clamp(32px, 5vw, 64px); display: grid; }
.about-intro h1 { font-family: var(--font-display); font-size: clamp(30px, 4.4vw, 52px); font-weight: 500; line-height: 1.14; }
.about-journey { gap: 26px; margin: 0px; padding: 6px 0px 6px 46px; list-style: none; display: grid; position: relative; }
.about-journey::before { content: ""; background: linear-gradient(180deg, transparent, color-mix(in srgb, var(--lp-accent) 50%, var(--lp-line)) 14%, color-mix(in srgb, var(--lp-accent) 50%, var(--lp-line)) 86%, transparent); width: 1px; position: absolute; top: 14px; bottom: 14px; left: 16px; }
.about-journey li { position: relative; }
.about-journey-node { border: 1px solid color-mix(in srgb, var(--lp-accent) 55%, var(--lp-line)); background: var(--lp-bg); width: 34px; height: 34px; color: var(--lp-accent); box-shadow: 0 0 20px -8px color-mix(in srgb, var(--lp-accent) 65%, transparent); border-radius: 50%; place-items: center; display: grid; position: absolute; top: -2px; left: -46px; }
.about-journey h3 { font-size: 15px; font-weight: 600; }
.about-journey p { color: var(--lp-muted); margin-top: 5px; font-size: 13px; line-height: 1.7; }
.about-little { grid-template-columns: minmax(0px, 0.9fr) minmax(0px, 1.1fr); align-items: start; gap: clamp(32px, 5vw, 60px); display: grid; }
.about-photo { max-width: 300px; margin: 28px 0px 0px; }
.about-photo img { border: 1px solid var(--lp-line); object-fit: cover; border-radius: 18px; width: 100%; }
.about-photo figcaption { color: var(--lp-muted); margin-top: 10px; font-size: 12px; }
.about-little-copy > p { color: var(--lp-muted); font-size: 14px; line-height: 1.8; }
.about-little-copy > p + p { margin-top: 16px; }
.about-mini-facts { border-top: 1px solid var(--lp-line); flex-wrap: wrap; gap: 20px; margin-top: 28px; padding-top: 22px; display: flex; }
.about-mini-facts > div { align-items: center; gap: 10px; min-width: 0px; display: flex; }
.about-mini-facts svg { color: var(--lp-accent); flex-shrink: 0; }
.about-mini-facts strong { font-size: 12px; display: block; }
.about-mini-facts span { color: var(--lp-muted); margin-top: 3px; font-size: 11px; line-height: 1.6; display: block; }
.about-shapes-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 18px; margin-top: 34px; display: grid; }
.about-shape { border: 1px solid var(--lp-line); background: color-mix(in srgb, var(--lp-panel) 40%, transparent); border-radius: 18px; flex-direction: column; gap: 12px; min-width: 0px; padding: 26px 22px; transition: transform 0.25s, border-color 0.25s; display: flex; }
.about-shape-icon { border: 1px solid color-mix(in srgb, var(--lp-accent) 45%, var(--lp-line)); background: color-mix(in srgb, var(--lp-accent) 11%, transparent); width: 46px; height: 46px; color: var(--lp-accent); border-radius: 50%; place-items: center; display: grid; }
.about-shape h3 { font-size: 16px; font-weight: 600; }
.about-shape p { color: var(--lp-muted); font-size: 13px; line-height: 1.75; }
.about-areas-grid { grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 18px; margin-top: 34px; display: grid; }
.about-area { border: 1px solid var(--lp-line); background: color-mix(in srgb, var(--lp-panel) 40%, transparent); border-radius: 18px; flex-direction: column; gap: 12px; min-width: 0px; padding: 16px; transition: transform 0.25s, border-color 0.25s; display: flex; }
.about-area img { aspect-ratio: 4 / 3; object-fit: cover; border: 1px solid var(--lp-line); border-radius: 12px; width: 100%; transition: transform 0.4s; }
.about-area h3 { font-size: 15px; font-weight: 600; }
.about-area p { color: var(--lp-muted); font-size: 12.5px; line-height: 1.7; }
.about-focus-grid { grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 16px; margin-top: 34px; display: grid; }
.about-focus-card { border: 1px solid var(--lp-line); background: color-mix(in srgb, var(--lp-panel) 30%, transparent); border-radius: 16px; align-items: flex-start; gap: 14px; min-width: 0px; padding: 20px; transition: border-color 0.25s; display: flex; }
.about-focus-icon { background: color-mix(in srgb, var(--lp-accent) 12%, transparent); width: 40px; height: 40px; color: var(--lp-accent); border-radius: 12px; flex-shrink: 0; place-items: center; display: grid; }
.about-focus-card h3 { font-size: 14px; font-weight: 600; line-height: 1.4; }
.about-focus-card p { color: var(--lp-muted); margin-top: 6px; font-size: 12.5px; line-height: 1.7; }
.about-cta { border-bottom: 0px; grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr); align-items: center; gap: clamp(28px, 4vw, 48px); display: grid; }
.about-cta h2 { font-family: var(--font-display); font-size: clamp(28px, 3.6vw, 44px); }
.about-cta-action { border-left: 1px solid var(--lp-line); padding-left: clamp(20px, 3vw, 40px); }
.about-cta-action > p { color: var(--lp-muted); font-size: 14px; line-height: 1.8; }
.about-cta-action .portfolio-cta { margin-top: 20px; }
@media (hover: hover) and (pointer: fine) {
  .about-shape:hover, .about-area:hover { border-color: color-mix(in srgb, var(--lp-accent) 45%, var(--lp-line)); transform: translateY(-3px); }
  .about-area:hover img { transform: scale(1.02); }
  .about-focus-card:hover { border-color: color-mix(in srgb, var(--lp-accent) 45%, var(--lp-line)); }
}
@media (width <= 1100px) {
  .about-intro, .about-little, .about-cta { grid-template-columns: minmax(0px, 1fr); }
  .about-cta-action { border-left: 0px; border-top: 1px solid var(--lp-line); padding-top: 24px; padding-left: 0px; }
  .about-shapes-grid { grid-template-columns: minmax(0px, 1fr); }
  .about-areas-grid, .about-focus-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .about-photo { max-width: 260px; }
}
@media (width <= 760px) {
  .about-band { padding-inline: 22px; }
  .about-areas-grid, .about-focus-grid { grid-template-columns: minmax(0px, 1fr); }
  .about-mini-facts { gap: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .about-shape, .about-area, .about-area img, .about-focus-card { transition: none; }
  .about-shape:hover, .about-area:hover { transform: none; }
}
.skills-experience { --skills-surface: color-mix(in oklab, var(--lp-panel) 45%, var(--lp-bg)); --skills-glow: color-mix(in srgb, var(--lp-accent) 45%, transparent); padding-bottom: clamp(40px, 6vw, 72px); }
.skills-hero { border-bottom: 1px solid var(--lp-line); grid-template-columns: minmax(0px, 1fr) minmax(0px, 1.05fr); align-items: center; gap: clamp(28px, 4vw, 56px); max-width: 1248px; margin: auto; padding: clamp(44px, 6vw, 78px) 40px clamp(30px, 4vw, 46px); display: grid; position: relative; overflow: hidden; }
.skills-watermark { font-family: var(--font-display); letter-spacing: 0.05em; white-space: nowrap; color: color-mix(in srgb, var(--lp-accent) 12%, var(--lp-bg)); pointer-events: none; z-index: 0; font-size: clamp(52px, 10vw, 132px); font-weight: 400; line-height: 0.95; position: absolute; top: 8px; left: 50%; transform: translateX(-50%); }
.skills-hero > :not(.skills-watermark) { z-index: 1; min-width: 0px; position: relative; }
.skills-hero h1 { font-family: var(--font-display); font-size: clamp(32px, 4.6vw, 54px); font-weight: 500; line-height: 1.12; }
.skills-hero em { color: var(--lp-accent); font-style: normal; }
.skills-hero-copy > p:not(.section-eyebrow) { max-width: 42ch; color: var(--lp-muted); margin: 18px 0px 26px; font-size: 14px; line-height: 1.8; }
.skills-hero-art { margin: 0px; position: relative; }
.skills-hero-art img { border: 1px solid var(--lp-line); object-fit: cover; border-radius: 20px; width: 100%; }
.skills-badge { border: 1px solid color-mix(in srgb, var(--lp-accent) 35%, var(--lp-line)); background: color-mix(in srgb, var(--lp-panel) 80%, transparent); color: var(--lp-fg); backdrop-filter: blur(8px); box-shadow: 0 14px 30px -22px color-mix(in srgb, var(--lp-accent) 60%, transparent); border-radius: 999px; align-items: center; gap: 7px; padding: 8px 15px; font-size: 12px; display: inline-flex; position: absolute; }
.skills-badge svg { color: var(--lp-accent); }
.skills-badge-build { top: 32%; left: 2%; }
.skills-badge-learn { top: 4%; right: 8%; }
.skills-badge-create { bottom: 22%; left: 2%; }
.skills-badge-experiment { bottom: 6%; right: 4%; }
.skills-note { letter-spacing: 0.14em; text-transform: uppercase; color: color-mix(in srgb, var(--lp-accent) 75%, var(--lp-fg)); gap: 3px; font-size: 11px; display: grid; position: absolute; top: 6px; left: 12px; }
.skills-note-arrow { width: 104px; height: 68px; color: color-mix(in srgb, var(--lp-accent) 55%, transparent); position: absolute; top: 80px; left: 30px; }
.skills-note-arrow path { fill: none; stroke: currentcolor; stroke-width: 1.6px; stroke-dasharray: 6, 6; stroke-linecap: round; }
.skills-stepper { grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 14px; max-width: 1248px; margin: auto; padding: clamp(38px, 6vw, 68px) 40px 0px; display: grid; position: relative; }
.skills-stepper::before { content: ""; background: linear-gradient(90deg, transparent, var(--lp-line) 14%, var(--lp-line) 86%, transparent); height: 1px; position: absolute; top: calc(32px + clamp(38px, 6vw, 68px)); left: 9%; right: 9%; }
.skills-step { z-index: 1; border: 1px solid var(--lp-line); background: var(--skills-surface); width: 100%; min-height: 66px; color: var(--lp-muted); text-align: left; white-space: normal; border-radius: 16px; justify-content: flex-start; align-items: center; gap: 12px; padding: 14px 18px; transition: border-color 0.25s, color 0.25s, box-shadow 0.25s, transform 0.25s; display: flex; position: relative; }
.skills-step svg { color: var(--lp-accent); flex-shrink: 0; }
.skills-step span { font-family: var(--font-mono); color: var(--lp-accent); font-size: 11px; }
.skills-step strong { color: inherit; font-size: 13px; font-weight: 600; line-height: 1.35; }
.skills-step[aria-pressed="true"] { border-color: color-mix(in srgb, var(--lp-accent) 70%, transparent); color: var(--lp-fg); box-shadow: 0 0 0 1px color-mix(in srgb, var(--lp-accent) 35%, transparent), 0 20px 44px -30px var(--skills-glow); }
.skills-showcase { border: 1px solid var(--lp-line); background: radial-gradient(120% 140% at 12% 0%, color-mix(in srgb, var(--lp-accent) 9%, transparent), transparent 58%), var(--skills-surface); border-radius: 22px; max-width: 1248px; margin: clamp(22px, 3.5vw, 38px) auto 0px; padding: clamp(20px, 3vw, 32px); }
.skills-showcase-head { border-bottom: 1px solid var(--lp-line); flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 18px; padding-bottom: 20px; display: flex; }
.skills-showcase-title { align-items: center; gap: 16px; min-width: 0px; display: flex; }
.skills-showcase-icon { border: 1px solid color-mix(in srgb, var(--lp-accent) 45%, var(--lp-line)); background: color-mix(in srgb, var(--lp-accent) 11%, transparent); width: 46px; height: 46px; color: var(--lp-accent); border-radius: 14px; flex-shrink: 0; place-items: center; display: grid; }
.skills-showcase-title h2 { font-family: var(--font-display); font-size: clamp(22px, 2.6vw, 30px); font-weight: 500; line-height: 1.2; }
.skills-showcase-title p { color: var(--lp-muted); margin-top: 4px; font-size: 13px; line-height: 1.6; }
.skills-showcase-nav { align-items: center; gap: 10px; display: flex; }
.skills-showcase-nav > span { font-family: var(--font-mono); letter-spacing: 0.04em; color: var(--lp-accent); margin-right: 6px; font-size: 12px; }
.skills-showcase-nav button { border-color: var(--lp-line); color: var(--lp-fg); background: none; border-radius: 50%; transition: border-color 0.22s, background 0.22s, transform 0.22s; }
.skills-showcase-grid { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 16px; margin-top: 26px; display: grid; }
.skills-tech { border: 1px solid var(--lp-line); background: color-mix(in srgb, var(--lp-panel) 38%, transparent); border-radius: 18px; flex-direction: column; align-items: flex-start; gap: 10px; min-width: 0px; padding: 22px 20px 18px; transition: border-color 0.25s, box-shadow 0.25s, transform 0.25s; display: flex; }
.skills-tech[data-active="true"] { border-color: color-mix(in srgb, var(--lp-accent) 75%, transparent); box-shadow: 0 0 0 1px color-mix(in srgb, var(--lp-accent) 40%, transparent), 0 24px 48px -32px var(--skills-glow); }
.skills-tech-logo { background: color-mix(in srgb, var(--lp-accent) 12%, transparent); width: 44px; height: 44px; color: var(--lp-accent); border-radius: 12px; place-items: center; display: grid; }
.skills-tech-logo svg { width: 24px; height: 24px; }
.skills-tech h2 { font-size: 16px; font-weight: 600; }
.skills-tech p { color: var(--lp-muted); font-size: 12.5px; line-height: 1.7; }
.skills-tech-pick { border-color: var(--lp-line); color: var(--lp-accent); background: none; border-radius: 50%; margin-top: auto; transition: background 0.22s, color 0.22s, border-color 0.22s; }
.skills-tech-pick[aria-pressed="true"] { background: var(--lp-accent); border-color: var(--lp-accent); color: var(--lp-on-accent); }
.skills-other { max-width: 1248px; margin: clamp(26px, 4vw, 42px) auto 0px; padding-inline: 40px; }
.skills-other-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 18px; display: grid; }
.skills-other-card { border: 1px solid var(--lp-line); background: var(--skills-surface); border-radius: 20px; flex-direction: column; gap: 12px; min-width: 0px; padding: 18px; transition: transform 0.25s, border-color 0.25s, box-shadow 0.25s; display: flex; position: relative; }
.skills-other-card img { aspect-ratio: 16 / 10; object-fit: cover; border: 1px solid var(--lp-line); border-radius: 14px; width: 100%; }
.skills-other-open { border-color: var(--lp-line); background: color-mix(in srgb, var(--lp-bg) 72%, transparent); color: var(--lp-fg); border-radius: 50%; transition: border-color 0.22s, transform 0.22s; position: absolute; top: 30px; right: 30px; }
.skills-other-num { background: var(--lp-accent); color: var(--lp-on-accent); font-family: var(--font-mono); border-radius: 999px; align-self: flex-start; padding: 4px 12px; font-size: 11px; }
.skills-other-card h2 { font-size: 17px; font-weight: 600; }
.skills-other-card p { color: var(--lp-muted); font-size: 13px; line-height: 1.7; }
.skills-other-icons { border-top: 1px solid var(--lp-line); flex-wrap: wrap; gap: 10px; margin-top: auto; padding-top: 14px; display: flex; }
.skills-other-icons span { border: 1px solid var(--lp-line); width: 34px; height: 34px; color: var(--lp-accent); border-radius: 10px; place-items: center; display: grid; }
.skills-other-icons svg { width: 17px; height: 17px; }
.skills-closing { border-top: 1px solid var(--lp-line); border-bottom: 1px solid var(--lp-line); grid-template-columns: minmax(0px, 1.1fr) minmax(0px, 1fr); align-items: center; gap: 32px; max-width: 1248px; margin: clamp(32px, 5vw, 54px) auto 0px; padding: clamp(28px, 4vw, 44px) 40px; display: grid; }
.skills-closing h2 { font-family: var(--font-display); font-size: clamp(26px, 3.4vw, 40px); font-weight: 500; line-height: 1.22; }
.skills-closing em { color: var(--lp-accent); font-style: normal; }
.skills-closing-action > p { color: var(--lp-muted); margin-bottom: 18px; font-size: 14px; line-height: 1.8; }
@media (hover: hover) and (pointer: fine) {
  .skills-step:hover { border-color: color-mix(in srgb, var(--lp-accent) 55%, var(--lp-line)); color: var(--lp-fg); }
  .skills-showcase-nav button:hover { border-color: var(--lp-accent); background: color-mix(in srgb, var(--lp-accent) 12%, transparent); }
  .skills-tech:hover { border-color: color-mix(in srgb, var(--lp-accent) 50%, var(--lp-line)); transform: translateY(-3px); }
  .skills-other-card:hover { border-color: color-mix(in srgb, var(--lp-accent) 45%, var(--lp-line)); box-shadow: 0 22px 44px -30px var(--skills-glow); transform: translateY(-4px); }
  .skills-other-card:hover img { transform: scale(1.02); }
  .skills-other-card img { transition: transform 0.4s; }
  .skills-other-open:hover { border-color: var(--lp-accent); transform: translate(2px, -2px); }
}
@media (width <= 1100px) {
  .skills-hero { grid-template-columns: minmax(0px, 1fr); }
  .skills-stepper { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .skills-stepper::before { display: none; }
  .skills-other-grid, .skills-closing { grid-template-columns: minmax(0px, 1fr); }
}
@media (width <= 760px) {
  .skills-hero { padding-inline: 22px; }
  .skills-watermark, .skills-note, .skills-note-arrow { display: none; }
  .skills-badge { gap: 5px; padding: 6px 11px; font-size: 10.5px; }
  .skills-badge svg { width: 12px; height: 12px; }
  .skills-badge-learn { right: 3%; }
  .skills-badge-create { left: 3%; }
  .skills-stepper { padding-inline: 22px; }
  .skills-showcase { margin-inline: 22px; }
  .skills-other, .skills-closing { padding-inline: 22px; }
  .skills-showcase-head { align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  .skills-step, .skills-tech, .skills-other-card, .skills-other-card img, .skills-other-open, .skills-showcase-nav button, .skills-tech-pick { transition: none; }
  .skills-step:hover, .skills-tech:hover, .skills-other-card:hover, .skills-other-open:hover { transform: none; }
}
.project-showcase { border-bottom: 1px solid var(--lp-line); grid-template-columns: 1.5fr 1fr; align-items: center; gap: 44px; padding: 48px 40px; display: grid; }
.project-showcase-visual { min-width: 0px; margin: 0px; position: relative; }
.project-showcase-visual > img { aspect-ratio: 16 / 9; object-fit: cover; border-radius: 8px; width: 100%; display: block; }
.project-showcase-visual figcaption { color: var(--lp-muted); padding-top: 10px; font-size: 11px; }
.project-showcase-visual .showcase-arrow { background: var(--lp-accent); width: 34px; height: 34px; color: var(--lp-on-accent); border: 1px solid var(--lp-line); border-radius: 50%; padding: 0px; position: absolute; top: calc(50% - 24px); }
.showcase-prev { left: 12px; }
.showcase-next { right: 12px; }
.project-showcase-copy { min-width: 0px; }
.project-showcase-copy > .section-eyebrow { margin-bottom: 18px; }
.project-showcase-copy h1 { font-family: var(--font-display); letter-spacing: 0px; font-size: 36px; font-weight: 600; line-height: 1.2; }
.project-showcase-copy > p:not(.section-eyebrow) { color: var(--lp-muted); margin: 18px 0px 24px; font-size: 15px; line-height: 1.8; }
.showcase-actions { flex-wrap: wrap; align-items: center; gap: 12px; display: flex; }
.project-showcase-copy .showcase-blog { color: var(--lp-fg); border-color: var(--lp-line); background: none; }
.showcase-count { color: var(--lp-muted); margin-top: 22px; font-size: 12px; display: block; }
@media (width <= 800px) {
  .project-showcase { grid-template-columns: 1fr; gap: 24px; padding: 36px 24px; }
  .project-showcase-copy h1 { font-size: 32px; }
}
.certifications-experience { --achievement-surface: color-mix(in oklab, var(--lp-panel) 40%, var(--lp-bg)); --achievement-accent-soft: color-mix(in oklab, var(--lp-accent) 15%, transparent); }
.achievement-feature { border-bottom: 1px solid var(--lp-line); grid-template-columns: 1fr 1.15fr 0.85fr; align-items: center; gap: 28px; padding: 52px 40px; display: grid; }
.achievement-feature > *, .achievement-journey > *, .achievement-row > * { min-width: 0px; }
.achievement-feature h1, .achievement-journey h2 { font-family: var(--font-display); letter-spacing: 0px; font-size: 34px; font-weight: 600; line-height: 1.15; }
.achievement-feature .section-eyebrow, .achievement-journey .section-eyebrow { margin-bottom: 22px; }
.achievement-feature-copy > p:not(.section-eyebrow), .achievement-journey-intro > p:not(.section-eyebrow) { color: var(--lp-muted); margin: 20px 0px; font-size: 14px; line-height: 1.8; }
.achievement-feature-meta { color: var(--lp-muted); flex-wrap: wrap; align-items: center; gap: 12px; font-size: 12px; display: flex; }
.achievement-feature-meta span { background: var(--achievement-accent-soft); color: var(--lp-accent); border-radius: 999px; padding: 6px 12px; }
.achievement-feature-meta time { align-items: center; gap: 6px; display: inline-flex; }
.achievement-feature .achievement-image-button { border: 1px solid var(--lp-line); background: none; border-radius: 8px; width: 100%; height: auto; padding: 0px; display: block; overflow: hidden; }
.achievement-image-button img { aspect-ratio: 4 / 3; object-fit: contain; background: var(--achievement-surface); width: 100%; }
.achievement-details { border-left: 1px solid var(--lp-line); padding: 24px 18px; }
.achievement-details h2 { margin-bottom: 20px; font-size: 15px; font-weight: 600; }
.achievement-details dl { gap: 20px; display: grid; }
.achievement-details dl > div { grid-template-columns: 38px minmax(0px, 1fr); gap: 4px 12px; display: grid; }
.achievement-details svg { border: 1px solid var(--lp-line); background: var(--achievement-accent-soft); width: 38px; height: 38px; color: var(--lp-accent); border-radius: 50%; grid-row: 1 / 3; padding: 9px; }
.achievement-details dt { color: var(--lp-muted); font-size: 11px; }
.achievement-details dd { font-size: 12px; line-height: 1.6; }
.achievement-journey { grid-template-columns: 250px minmax(0px, 1fr); gap: 44px; padding: 52px 40px; display: grid; }
.achievement-journey h2 em { color: var(--lp-accent); font-style: normal; }
.achievement-filters { flex-wrap: wrap; gap: 8px; margin-bottom: 28px; display: flex; }
.achievement-filters .achievement-filter { border-color: var(--lp-line); height: 34px; color: var(--lp-fg); background: none; border-radius: 999px; font-size: 12px; }
.achievement-filters .achievement-filter[aria-pressed="true"] { background: var(--lp-accent); border-color: var(--lp-accent); color: var(--lp-on-accent); }
.achievement-timeline { margin: 0px; padding: 0px; list-style: none; }
.achievement-row { grid-template-columns: 72px 42px minmax(0px, 1fr) 100px; gap: 18px; padding: 0px 0px 24px; display: grid; position: relative; }
.achievement-row::before { content: ""; background: var(--lp-line); width: 1px; position: absolute; top: 0px; bottom: 0px; left: 80px; }
.achievement-row:last-child::before { bottom: 28px; }
.achievement-row::after { content: ""; border: 1px solid var(--lp-accent); background: var(--lp-bg); border-radius: 50%; width: 7px; height: 7px; position: absolute; top: 20px; left: 77px; }
.achievement-row time { color: var(--lp-accent); text-align: right; padding-top: 16px; font-size: 11px; }
.achievement-row-icon { border: 1px solid var(--lp-line); background: var(--achievement-accent-soft); width: 42px; height: 42px; color: var(--lp-accent); border-radius: 50%; padding: 10px; }
.achievement-row-copy { border-bottom: 1px solid var(--lp-line); padding-bottom: 18px; }
.achievement-row-copy h3 { margin-bottom: 6px; font-size: 15px; font-weight: 600; }
.achievement-row-copy p { color: var(--lp-muted); font-size: 12px; line-height: 1.7; }
.achievement-row .achievement-thumb { border: 1px solid var(--lp-line); background: none; border-radius: 5px; width: 100px; height: 74px; padding: 0px; overflow: hidden; }
.achievement-thumb img { object-fit: contain; background: var(--achievement-surface); width: 100%; height: 100%; }
.achievement-no-image { height: 74px; color: var(--lp-muted); text-align: center; border: 1px dashed var(--lp-line); border-radius: 5px; align-content: center; place-items: center; gap: 4px; font-size: 10px; display: grid; }
.certificate-viewer { max-width: min(1000px, 94vw); max-height: 92dvh; overflow-y: auto; }
.certificate-viewer img { object-fit: contain; width: 100%; max-height: 65dvh; }
@media (width <= 1100px) {
  .achievement-feature { grid-template-columns: 1fr 1.2fr; }
  .achievement-details { border-left: 0px; border-top: 1px solid var(--lp-line); grid-column: 1 / -1; padding: 24px 0px 0px; }
  .achievement-details dl { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
  .achievement-journey { grid-template-columns: 200px minmax(0px, 1fr); gap: 24px; }
  .achievement-row { grid-template-columns: 64px 36px minmax(0px, 1fr) 80px; gap: 12px; }
  .achievement-row::before { left: 70px; }
  .achievement-row::after { left: 67px; }
  .achievement-row .achievement-thumb { width: 80px; }
  .achievement-row-icon { width: 36px; height: 36px; padding: 8px; }
}
@media (width <= 700px) {
  .achievement-feature, .achievement-journey { grid-template-columns: 1fr; gap: 28px; padding: 40px 24px; }
  .achievement-feature h1, .achievement-journey h2 { font-size: 30px; }
  .achievement-details dl { grid-template-columns: 1fr; }
  .achievement-row { grid-template-columns: 58px 30px minmax(0px, 1fr); gap: 12px; }
  .achievement-row-icon { width: 30px; height: 30px; padding: 6px; }
  .achievement-row::before { left: 64px; }
  .achievement-row::after { left: 61px; }
  .achievement-row-copy h3 { font-size: 14px; }
  .achievement-row .achievement-thumb, .achievement-no-image { grid-column: 3; width: 100px; }
  .achievement-row-copy { padding-bottom: 10px; }
}
.achievement-feature-controls { flex-direction: column; gap: 16px; margin-bottom: 24px; display: flex; }
.achievement-feature-controls .section-eyebrow { margin: 0px; }
.achievement-feature-controls > div { align-items: center; gap: 10px; display: flex; }
.achievement-feature-controls button { border-color: var(--lp-line); width: 30px; height: 30px; color: var(--lp-accent); background: none; border-radius: 50%; }
.achievement-count { color: var(--lp-muted); text-align: center; min-width: 48px; font-size: 12px; }
.achievement-feature-pending { aspect-ratio: 4 / 3; border: 1px dashed var(--lp-line); text-align: center; background: var(--achievement-surface); border-radius: 8px; place-content: center; justify-items: center; gap: 12px; padding: 24px; display: grid; }
.achievement-feature-pending svg { width: 42px; height: 42px; color: var(--lp-accent); }
.achievement-feature-pending span { color: var(--lp-muted); font-size: 12px; }
.achievement-row-copy .achievement-select { white-space: normal; text-align: left; height: auto; font: inherit; color: inherit; background: none; padding: 0px; display: block; }
.achievement-select:hover { color: var(--lp-accent); }
.achievement-feature { scroll-margin-top: 90px; }
.timeline-experience .achievement-journey { grid-template-columns: 270px minmax(0px, 1fr); padding-top: 64px; }
.timeline-experience h1 { font: 600 40px/1.15 var(--font-display); }
.timeline-experience h1 em { color: var(--lp-accent); font-style: normal; }
.timeline-experience .achievement-row { padding: 0px 0px 8px; display: block; }
.timeline-experience .achievement-row::before { background: color-mix(in oklab,var(--lp-accent) 50%,var(--lp-line)); top: 20px; bottom: -20px; left: 21px; }
.timeline-experience .achievement-row::after { display: none; }
.timeline-experience .achievement-row:last-child::before { bottom: 38px; }
.timeline-experience .achievement-toggle { white-space: normal; width: 100%; height: auto; min-height: 104px; color: var(--lp-fg); text-align: left; border-bottom: 1px solid var(--lp-line); background: none; border-radius: 0px; align-items: center; gap: 18px; padding: 22px 0px; display: flex; }
.achievement-node { border: 1px solid var(--lp-line); background: var(--lp-bg); width: 42px; height: 42px; color: var(--lp-accent); border-radius: 50%; flex-shrink: 0; place-items: center; transition: box-shadow 0.25s, background 0.25s; display: grid; position: relative; }
.achievement-node svg { width: 20px; height: 20px; }
.achievement-open .achievement-node, .achievement-toggle:hover .achievement-node { background: var(--achievement-accent-soft); border-color: var(--lp-accent); }
.achievement-label { flex: 1 1 0%; gap: 6px; min-width: 0px; display: grid; }
.achievement-label strong { font-size: 15px; font-weight: 600; }
.achievement-label > span { color: var(--lp-muted); font-size: 12px; }
.timeline-experience .achievement-toggle time { font-family: var(--font-mono); flex-shrink: 0; padding: 0px; font-size: 13px; }
.achievement-expand svg { width: 17px; color: var(--lp-accent); }
.achievement-expanded { grid-template-columns: 1fr 1.2fr; gap: 24px; padding: 24px 0px 32px 60px; animation: 0.42s cubic-bezier(0.22, 1, 0.36, 1) 0s 1 normal both running achievement-unfold; display: grid; position: relative; }
.achievement-expanded h2 { font: 600 23px/1.25 var(--font-display); }
.achievement-expanded-copy > p { color: var(--lp-muted); margin: 14px 0px 22px; font-size: 13px; line-height: 1.8; }
.achievement-expanded dl { gap: 16px; display: grid; }
.achievement-expanded dl > div { grid-template-columns: 22px 1fr; gap: 4px 10px; display: grid; }
.achievement-expanded dl svg { width: 18px; height: 18px; color: var(--lp-accent); grid-row: 1 / 3; }
.achievement-expanded dt { color: var(--lp-muted); font-size: 11px; }
.achievement-expanded dd { font-size: 12px; line-height: 1.6; }
.achievement-expanded .achievement-image-button { border: 1px solid var(--lp-line); background: none; border-radius: 8px; align-self: start; width: 100%; height: auto; padding: 0px; display: block; overflow: hidden; }
@keyframes achievement-unfold { 
  0% { opacity: 0; translate: 0px -8px; }
  100% { opacity: 1; translate: 0px; }
}
@media (width <= 1000px) {
  .timeline-experience .achievement-journey { grid-template-columns: 200px minmax(0px, 1fr); }
  .achievement-expanded { grid-template-columns: 1fr; }
}
@media (width <= 700px) {
  .timeline-experience .achievement-journey { grid-template-columns: 1fr; }
  .timeline-experience h1 { font-size: 34px; }
  .timeline-experience .achievement-toggle { grid-template-columns: 34px minmax(0px, 1fr) 18px; gap: 12px; display: grid; }
  .achievement-node { grid-row: 1 / 3; width: 34px; height: 34px; }
  .timeline-experience .achievement-toggle time { text-align: left; grid-column: 2; font-size: 11px; }
  .achievement-expand { grid-area: 1 / 3 / 3; }
  .timeline-experience .achievement-row::before { left: 17px; }
  .achievement-expanded { padding-left: 46px; }
}
.contact-experience { --contact-soft: color-mix(in oklab, var(--lp-accent) 12%, transparent); grid-template-columns: 0.88fr 1.12fr; align-items: start; gap: 64px; padding: 68px 40px; display: grid; }
.contact-experience > * { min-width: 0px; }
.contact-experience h1 { font: 600 54px/1.1 var(--font-display); margin: 24px 0px; }
.contact-experience em { color: var(--lp-accent); font-style: normal; }
.contact-introduction > p:not(.section-eyebrow) { color: var(--lp-muted); max-width: 480px; font-size: 16px; line-height: 1.8; }
.contact-facts { gap: 28px; margin: 36px 0px; display: grid; }
.contact-facts > div { align-items: center; gap: 22px; display: flex; }
.contact-facts > div > svg { width: 60px; height: 60px; color: var(--lp-accent); background: var(--contact-soft); border-radius: 50%; flex-shrink: 0; padding: 17px; }
.contact-facts dt { margin-bottom: 5px; font-size: 15px; font-weight: 600; }
.contact-facts dd { color: var(--lp-muted); font-size: 14px; line-height: 1.7; }
.contact-social-strip { border-top: 1px solid var(--lp-line); padding-top: 26px; }
.contact-social-strip h2 { margin-bottom: 16px; font-size: 15px; }
.contact-social-icons { gap: 14px; display: flex; }
.contact-social-icons a { border-color: var(--lp-line); width: 52px; height: 52px; color: var(--lp-accent); background: none; border-radius: 8px; }
.contact-social-icons svg { width: 23px; height: 23px; }
.contact-experience .contact-form { border: 1px solid var(--lp-line); background: color-mix(in oklab, var(--lp-panel) 20%, transparent); border-radius: 8px; padding: 32px; display: block; }
.contact-form .contact-form-title { font: 600 30px/1.2 var(--font-display); margin: 14px 0px 30px; }
.contact-input-pair { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 14px; display: grid; }
.contact-experience .contact-field { margin-bottom: 16px; display: block; position: relative; }
.contact-field > svg { width: 20px; height: 20px; color: var(--lp-accent); pointer-events: none; position: absolute; top: 19px; left: 16px; }
.contact-experience .contact-field :is(input, textarea) { border: 1px solid var(--lp-line); width: 100%; font: inherit; color: var(--lp-fg); background: none; border-radius: 8px; margin: 0px; padding: 18px 16px 18px 48px; }
.contact-experience .contact-field :is(input, textarea):focus { outline: 2px solid var(--lp-accent); outline-offset: 2px; }
.contact-experience .contact-field textarea { resize: vertical; min-height: 190px; padding-bottom: 32px; }
.contact-counter { color: var(--lp-muted); font-size: 12px; position: absolute; bottom: 14px; right: 14px; }
.contact-experience .contact-submit { background: var(--lp-accent); color: var(--lp-on-accent); border-radius: 999px; height: 46px; margin-top: 8px; padding: 0px 24px; }
.contact-experience .form-note { color: var(--lp-muted); margin: 12px 0px 0px; font-size: 12px; line-height: 1.65; }
@media (width <= 1000px) {
  .contact-experience { gap: 30px; padding: 48px 24px; }
  .contact-experience h1 { font-size: 44px; }
  .contact-experience .contact-form { padding: 24px; }
  .contact-input-pair { grid-template-columns: 1fr; gap: 0px; }
}
@media (width <= 700px) {
  .contact-experience { grid-template-columns: 1fr; }
  .contact-experience h1 { font-size: 40px; }
  .contact-form .contact-form-title { font-size: 26px; }
}
.blogs-experience { padding: 64px 40px; }
.blogs-introduction h1 { font: 600 42px/1.15 var(--font-display); margin: 20px 0px 36px; }
.blogs-introduction em { color: var(--lp-accent); font-style: normal; }
.blogs-empty-state { border-top: 1px solid var(--lp-line); align-items: flex-start; gap: 18px; max-width: 760px; padding: 28px 0px; display: flex; }
.blogs-empty-state > svg { color: var(--lp-accent); flex-shrink: 0; }
.blogs-empty-state h2 { margin-bottom: 10px; font-size: 17px; font-weight: 600; }
.blogs-empty-state p { color: var(--lp-muted); font-size: 14px; line-height: 1.7; }
.blogs-demo-note { color: var(--lp-muted); margin-bottom: 24px; font-size: 14px; }
.blogs-toolbar { grid-template-columns: minmax(0px, 1fr); gap: 20px; margin-bottom: 28px; display: grid; }
.blogs-filters { flex-wrap: wrap; gap: 8px; display: flex; }
.blogs-search { border: 1px solid var(--lp-line); color: var(--lp-muted); border-radius: 6px; grid-template-columns: auto minmax(0px, 1fr); align-items: center; gap: 10px; padding: 0px 14px; display: grid; }
.blogs-search input { width: 100%; min-width: 0px; min-height: 44px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: var(--lp-fg); background: none; outline: none; font-size: 16px; }
.blogs-search:focus-within { outline: 2px solid var(--lp-accent); outline-offset: 3px; }
.blogs-grid { grid-template-columns: minmax(0px, 1fr); gap: 22px; display: grid; }
.blogs-card { border: 1px solid var(--lp-line); background: var(--lp-bg); border-radius: 8px; flex-direction: column; min-width: 0px; display: flex; overflow: hidden; }
.blogs-card > img { aspect-ratio: 2.5 / 1; object-fit: cover; width: 100%; }
.blogs-card-copy { flex-direction: column; flex: 1 1 0%; align-items: flex-start; gap: 12px; padding: 20px; display: flex; }
.landing .blogs-card h3 { font-family: var(--font-sans); font-size: 19px; font-weight: 600; line-height: 1.4; }
.blogs-card-copy > p { color: var(--lp-muted); font-size: 14px; line-height: 1.65; }
.blogs-card-copy .blogs-card-label { color: var(--lp-accent); font-size: 11px; font-weight: 600; }
.blogs-card-copy button { min-height: 44px; color: var(--lp-accent); margin-top: auto; padding-left: 0px; }
.blogs-no-results { color: var(--lp-muted); padding: 40px 0px; }
.blogs-reader { max-height: 85dvh; font-family: var(--font-sans); overflow-y: auto; }
.blogs-reader p { line-height: 1.75; }
@media (width >= 650px) {
  .blogs-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}
@media (width >= 1100px) {
  .blogs-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
  .blogs-toolbar { grid-template-columns: minmax(0px, 1fr) 280px; align-items: start; }
}
@media (width <= 700px) {
  .blogs-experience { padding: 44px 24px; }
  .blogs-introduction h1 { font-size: 34px; }
}
.blogs-introduction { grid-template-columns: minmax(0px, 1.15fr) minmax(0px, 1fr); align-items: center; gap: 48px; margin-bottom: 32px; display: grid; }
.blogs-introduction-copy { min-width: 0px; }
.blogs-introduction-copy > p:not(.section-eyebrow) { color: var(--lp-muted); margin: 20px 0px; font-size: 15px; line-height: 1.75; }
.blogs-introduction h1, .blogs-introduction h2 { margin: 20px 0px; }
.blogs-workspace { min-width: 0px; margin: 0px; }
.blogs-workspace img { aspect-ratio: 1.65 / 1; object-fit: cover; border: 1px solid var(--lp-line); border-radius: 8px; width: 100%; }
.blogs-tags { flex-wrap: wrap; gap: 8px; margin-bottom: 8px; display: flex; }
.blogs-tags span { color: var(--lp-muted); border: 1px solid var(--lp-line); border-radius: 4px; padding: 3px 7px; font-size: 11px; }
.blogs-card { transition: opacity 0.35s, translate 0.35s, transform 0.22s, border-color 0.22s; }
@media (hover: hover) and (pointer: fine) {
  .blogs-card:hover { border-color: var(--lp-accent); transform: translateY(-3px); }
}
@media (width <= 700px) {
  .blogs-introduction { grid-template-columns: minmax(0px, 1fr); gap: 24px; }
}
.landing .motion-enter { opacity: 0; transition: opacity 0.3s, translate 0.3s; translate: 0px 6px; }
.landing .motion-enter[data-motion-step] { transition-delay: 0s; }
.landing .motion-enter.motion-visible { opacity: 1; translate: 0px; }
.project-showcase-visual > img, .project-showcase-copy > h1 { animation: 0.42s ease 0s 1 normal both running portfolio-change; }
.landing .portfolio-page :is(a, button):not(:disabled) svg { transition: translate 0.22s; }
.landing .portfolio-page :is(a, button):not(:disabled):hover svg { translate: 2px; }
.landing .contact-form :is(input, textarea) { transition: border-color 0.2s, box-shadow 0.2s; }
@keyframes portfolio-change { 
  0% { opacity: 0.35; translate: 0px 6px; }
  100% { opacity: 1; translate: 0px; }
}
.landing .home-editorial .home-skills { --skills-hover-line: color-mix(in srgb, var(--he-accent) 36%, var(--he-line)); --skills-hover-shadow: 0 8px 20px -12px color-mix(in srgb, var(--he-fg) 22%, transparent); --skills-tag-hover: color-mix(in srgb, var(--he-accent) 8%, var(--he-bg)); }
.landing .home-editorial .home-skills .motion-enter { transition-duration: 0.4s; }
.landing .home-editorial .home-skills .skill-card { transition: opacity 0.4s, translate 0.4s, transform 0.22s, border-color 0.22s, box-shadow 0.22s; }
.landing .home-editorial .home-skills .skill-card.motion-enter[data-motion-step="1"] { transition-delay: 70ms, 70ms, 0s, 0s, 0s; }
.landing .home-editorial .home-skills .skill-card.motion-enter[data-motion-step="2"] { transition-delay: 0.14s, 0.14s, 0s, 0s, 0s; }
.landing .home-editorial .home-skills .skill-card.motion-enter[data-motion-step="3"] { transition-delay: 0.21s, 0.21s, 0s, 0s, 0s; }
.landing .home-editorial .home-skills .skill-card-head > svg { transition: transform 0.22s; }
.landing .home-editorial .home-skills .skill-chips span { transition: background-color 0.22s, border-color 0.22s; }
.landing .home-editorial .home-skills .skill-chips span:hover { color: var(--he-fg); background: none; translate: none; }
.landing .home-editorial .home-skills .portfolio-link { transition: opacity 0.4s, translate 0.4s, background-color 0.22s, border-color 0.22s; }
.landing .home-editorial .home-skills .portfolio-link svg { transition: transform 0.22s; }
.landing .home-editorial .home-skills .section-ghost { opacity: 0; transition: opacity 0.45s, transform 0.45s; display: block; }
.landing .home-editorial .home-skills:hover .section-ghost { opacity: 1; }
@media (hover: hover) and (pointer: fine) {
  .landing .home-editorial .home-skills .skill-card:hover { box-shadow: var(--skills-hover-shadow); border-color: var(--skills-hover-line); transform: translateY(-3px); }
  .landing .home-editorial .home-skills .skill-card:hover .skill-card-head > svg { transform: scale(1.04); }
  .landing .home-editorial .home-skills .skill-chips span:hover { background: var(--skills-tag-hover); border-color: var(--skills-hover-line); }
  .landing .home-editorial .home-skills .portfolio-link:hover svg { transform: translateX(3px); }
}
@media (hover: none), (pointer: coarse) {
  .landing .home-editorial .home-skills:hover .section-ghost { opacity: 0; }
  .landing .home-editorial .home-skills .skill-card:hover { box-shadow: none; border-color: var(--he-line); transform: none; }
  .landing .home-editorial .home-skills .skill-card:hover .skill-card-head > svg { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .landing .home-editorial .home-skills .skill-card:hover, .landing .home-editorial .home-skills .skill-card:hover .skill-card-head > svg, .landing .home-editorial .home-skills .portfolio-link:hover svg { transform: none; }
  .landing .motion-enter { opacity: 1; transition: none; translate: none; }
  .landing *, .landing ::before, .landing ::after { scroll-behavior: auto !important; transition-duration: 0s !important; transition-delay: 0s !important; animation: auto ease 0s 1 normal none running none !important; }
}
.landing .home-editorial .section-ghost, .landing .skills-category::after { display: none; }
.landing .home-editorial .portfolio-cta, .landing .home-editorial .about-portrait, .landing .home-editorial .cert-timeline article > i { box-shadow: none; }
.landing .home-editorial :is(.skill-card, .project-card, .blog-card):hover { box-shadow: none; border-color: var(--lp-line); transform: none; }
.landing .home-editorial .skill-card::before { display: none; }
.landing .home-editorial .skill-card:hover .skill-card-head > svg { transform: none; }
.landing .home-editorial .skill-card, .landing .home-editorial .project-card { border-radius: 8px; }
.landing .home-editorial .reveal { transition-duration: 0.3s; }
.landing .home-editorial .reveal.reveal-pending:not(.in) { transform: translateY(6px); }
.landing .skills-category { border-right: 0px; border-bottom: 0px; border-left: 0px; border-image: initial; border-top: 1px solid var(--lp-line); background: none; border-radius: 0px; padding: 24px 0px; }
.landing .skills-category-grid { gap: 24px 32px; }
.landing .skills-category-heading > svg { background: none; border-radius: 0px; width: 24px; height: 24px; padding: 0px; }
.landing .skills-category-heading > span { display: none; }
.landing .skills-logo-grid .skill-explore { background: none; border-radius: 4px; height: 88px; }
.landing .skills-logo-grid .skill-explore[aria-pressed="true"] { background: var(--skills-surface); }
.landing .skills-band { align-items: start; }
.landing .skills-band:last-child { border-bottom: 0px; }
.landing .achievement-expanded { animation-duration: 0.22s; }
.landing .blog-empty { background: none; border: 0px; padding: 24px 0px; }
.landing .blog-empty h3 { font-size: 17px; }
.landing .home-editorial .cert-visual:not(.cert-visual-photo) { background: var(--lp-panel); color: var(--lp-fg); box-shadow: none; }
.landing :is(.portfolio-page, .portfolio-overview) :is(a, button, input, textarea):focus-visible { outline: 2px solid var(--lp-accent); outline-offset: 4px; }
.landing { font-family: var(--font-sans); letter-spacing: 0px; font-weight: 400; line-height: 1.65; }
.landing :is(button, input, textarea, select, nav, .edition-label, .picker-heading > span) { font-family: var(--font-sans); letter-spacing: 0px; }
.landing :is(h1, h2, h3, h4, p, span, a, strong, em) { letter-spacing: 0px; }
.landing .landing-logo, .landing .portrait-signature, .landing .design-thumbnail > span { font-family: var(--font-display); font-weight: 400; }
.landing .landing-name { font-family: var(--font-display); white-space: normal; overflow-wrap: normal; max-width: 100%; font-size: 5rem; font-weight: 400; line-height: 1.06; }
.landing .portfolio-page h1 { font-family: var(--font-display); font-size: 2.75rem; font-weight: 400; line-height: 1.15; }
.landing .portfolio-section h2, .landing .about-band h2, .landing .skills-band h2, .landing .contact-form-title { font-family: var(--font-display); font-size: 2.25rem; font-weight: 400; line-height: 1.2; }
.landing .achievement-expanded h2 { font-family: var(--font-display); font-size: 26px; font-weight: 400; line-height: 1.25; }
.landing .skills-band h1 { font-size: 2rem; }
.landing :is(.project-details h3, .cert-timeline h3, .skills-category h3, .about-purpose h3, .about-interest h3, .blog-empty h3, .blogs-empty-state h2) { font-family: var(--font-sans); font-weight: 600; line-height: 1.45; }
.landing p { max-width: 65ch; }
.landing :is(.landing-introduction, .section-intro, .about-copy > p, .about-narrative > p, .contact-introduction > p) { line-height: 1.75; }
.landing :is(.section-eyebrow, .landing-eyebrow) { font-family: var(--font-sans); letter-spacing: 0px; font-size: 11px; font-weight: 600; line-height: 1.5; }
.landing :is(.landing-desktop, .portfolio-cta, .portfolio-link, .work-button, .filter-button) { font-weight: 600; }
.landing :is(h1, h2, h3) { overflow-wrap: break-word; }
@media (width <= 1050px) {
  .landing .landing-name { font-size: 4rem; }
  .landing .portfolio-page h1 { font-size: 2.5rem; }
}
@media (width <= 700px) {
  .landing .landing-name { font-size: 3.25rem; }
  .landing .portfolio-page h1 { font-size: 2.125rem; }
  .landing .portfolio-section h2, .landing .about-band h2, .landing .skills-band h2, .landing .contact-form-title { font-size: 1.875rem; }
}
@media (width <= 374px) {
  .landing .landing-name { font-size: 2.75rem; }
}
.landing .portfolio-page h1, .landing .portfolio-section h2, .landing .about-band h2, .landing .skills-band h2, .landing .contact-form-title { font-family: var(--font-sans); font-weight: 500; line-height: 1.25; }
.landing { --finish-border: color-mix(in srgb, var(--lp-accent) 35%, var(--lp-line)); --finish-shadow: 0 8px 20px -12px color-mix(in srgb, var(--lp-fg) 22%, transparent); }
.landing .home-editorial .section-ghost { opacity: 0; z-index: 0; white-space: normal; text-align: center; max-width: calc(100% - 24px); font-size: 64px; line-height: 1.1; transition: opacity 0.45s; display: block; transform: translateX(-50%); }
.landing .home-editorial .portfolio-section { isolation: isolate; }
.landing .home-editorial .portfolio-section > :not(.section-ghost), .landing .home-editorial .section-heading > :not(.section-ghost) { z-index: 1; position: relative; }
.landing .home-editorial .section-heading .section-ghost { top: 0px; }
.landing .home-editorial .home-blogs { padding-top: 96px; }
.landing .home-editorial .home-blogs .section-ghost { top: 22px; }
.landing .home-editorial .about-section { grid-template-columns: minmax(0px, 1.2fr) minmax(0px, 0.8fr) minmax(0px, 1fr); gap: 40px; }
.landing .home-editorial .about-section .profile-facts { border: 0px; grid-column: auto; grid-template-columns: minmax(0px, 1fr); padding: 0px; }
.landing .home-editorial .about-portrait { aspect-ratio: 4 / 5; background: var(--lp-panel); border-color: var(--finish-border); width: 100%; box-shadow: 0 12px 32px -20px color-mix(in srgb, var(--lp-accent) 28%, transparent); border-radius: 8px; padding: 8px; }
.landing .home-editorial .about-portrait img { object-fit: cover; border: 3px solid var(--lp-bg); border-radius: 50%; }
.landing .home-editorial .profile-facts > div { gap: 16px; min-width: 0px; }
.landing .achievement-preview-grid { grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 18px; display: grid; }
.landing .achievement-preview-card { border: 1px solid var(--lp-line); background: color-mix(in srgb,var(--lp-panel) 45%,var(--lp-bg)); border-radius: 8px; flex-direction: column; min-width: 0px; transition: opacity 0.4s, translate 0.4s, transform 0.22s, border-color 0.22s, box-shadow 0.22s; display: flex; overflow: hidden; }
.landing .achievement-preview-evidence { border-bottom: 1px solid var(--lp-line); background: var(--lp-bg); height: 180px; padding: 18px; }
.landing .achievement-preview-evidence img { object-fit: contain; width: 100%; height: 100%; transition: transform 0.22s; }
.landing .achievement-preview-evidence > div { height: 100%; color: var(--lp-muted); text-align: center; align-content: center; justify-items: center; gap: 12px; font-size: 12px; display: grid; }
.landing .achievement-preview-evidence svg { color: var(--lp-accent); }
.landing .achievement-preview-copy { flex-direction: column; flex: 1 1 0%; gap: 10px; padding: 20px; display: flex; }
.landing .achievement-preview-copy h3 { font-size: 16px; font-weight: 600; line-height: 1.45; }
.landing .achievement-preview-copy p { color: var(--lp-muted); font-size: 12px; line-height: 1.7; }
.landing .achievement-preview-copy time { color: var(--lp-accent); font-size: 11px; }
.landing .achievement-preview-copy a { min-height: 44px; color: var(--lp-accent); margin-top: auto; padding-left: 0px; }
.landing :is(.achievement-preview-card, .home-blogs .blogs-card).motion-enter[data-motion-step="1"] { transition-delay: 70ms, 70ms, 0s, 0s, 0s; }
.landing :is(.achievement-preview-card, .home-blogs .blogs-card).motion-enter[data-motion-step="2"] { transition-delay: 0.14s, 0.14s, 0s, 0s, 0s; }
.landing :is(.achievement-preview-card, .home-blogs .blogs-card).motion-enter[data-motion-step="3"] { transition-delay: 0.21s, 0.21s, 0s, 0s, 0s; }
.landing .portfolio-link svg, .landing .editorial-footer a svg { transition: transform 0.22s; }
.landing .editorial-footer { border-top: 1px solid var(--lp-line); background: var(--lp-bg); width: 100%; color: var(--lp-fg); position: relative; overflow: hidden; }
.landing .editorial-footer-waves { opacity: 0.55; pointer-events: none; width: 100%; height: 300px; position: absolute; bottom: 0px; left: 0px; right: 0px; }
.landing .editorial-footer-waves path { fill: none; stroke: color-mix(in srgb, var(--lp-accent) 34%, transparent); stroke-width: 1.4px; }
.landing .editorial-footer-waves path + path { stroke: color-mix(in srgb, var(--lp-accent) 17%, transparent); }
.landing .editorial-footer-inner { z-index: 1; max-width: 1248px; margin: auto; padding: 64px 40px 28px; position: relative; }
.landing .editorial-footer-columns { grid-template-columns: minmax(0px, 1.3fr) minmax(0px, 0.8fr) minmax(0px, 1fr); gap: 40px; display: grid; }
.landing .editorial-footer-columns > * { min-width: 0px; position: relative; }
.landing .editorial-footer-columns > :not(:first-child) { border-left: 1px solid var(--lp-line); padding-left: 36px; }
.landing .editorial-footer-columns > :not(:first-child)::before { content: ""; background: var(--lp-accent); width: 7px; height: 7px; box-shadow: 0 0 12px color-mix(in srgb, var(--lp-accent) 70%, transparent); position: absolute; top: 50%; left: -4px; rotate: 45deg; }
.landing .editorial-footer .landing-logo { color: var(--lp-accent); font-size: 40px; display: inline-block; }
.landing .editorial-footer h2 { font-family: var(--font-sans); margin: 12px 0px; font-size: 16px; font-weight: 600; line-height: 1.5; }
.landing .editorial-footer nav h2, .landing .footer-contact h2 { border-bottom: 2px solid color-mix(in srgb, var(--lp-accent) 70%, transparent); padding-bottom: 10px; display: inline-block; }
.landing .footer-brand h2 { font-size: 23px; }
.landing .footer-brand h2 em { color: var(--lp-accent); font-style: normal; }
.landing .editorial-footer p { color: var(--lp-muted); margin: 16px 0px; font-size: 13px; line-height: 1.8; }
.landing .footer-socials { gap: 10px; margin-top: 22px; display: flex; }
.landing .footer-socials a { color: var(--lp-accent); border-color: var(--lp-line); width: 44px; height: 44px; }
.landing .footer-link-rows { gap: 14px; margin-top: 22px; display: grid; }
.landing .footer-link-row { flex-wrap: wrap; gap: 10px 26px; display: flex; }
.landing .footer-link-row + .footer-link-row { border-top: 1px solid var(--lp-line); padding-top: 14px; }
.landing .editorial-footer nav a { min-height: 36px; color: var(--lp-muted); align-items: center; gap: 8px; font-size: 13px; display: flex; }
.landing .footer-cta { border: 1px solid var(--lp-accent); background: var(--lp-accent); color: var(--lp-on-accent); box-shadow: 0 16px 32px -18px color-mix(in srgb, var(--lp-accent) 85%, transparent); border-radius: 999px; margin-top: 10px; }
.landing .editorial-footer-bottom { border-top: 1px solid var(--lp-line); color: var(--lp-muted); justify-content: center; margin-top: 44px; padding-top: 24px; font-size: 11px; display: flex; }
.landing .editorial-footer a:focus-visible { outline: 2px solid var(--lp-accent); outline-offset: 4px; }
@media (hover: hover) and (pointer: fine) {
  .landing .home-editorial .portfolio-section:hover .section-ghost { opacity: 1; transform: translateX(-50%); }
  .landing .achievement-preview-card:hover { border-color: var(--finish-border); box-shadow: var(--finish-shadow); transform: translateY(-3px); }
  .landing .achievement-preview-card:hover img { transform: scale(1.02); }
  .landing .portfolio-link:hover svg, .landing .editorial-footer a:hover svg { transform: translateX(3px); }
  .landing .editorial-footer a:hover { color: var(--lp-accent); }
}
@media (hover: none), (pointer: coarse) {
  .landing .home-editorial .portfolio-section:hover .section-ghost { opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .landing .achievement-preview-card:hover, .landing .achievement-preview-card:hover img, .landing .blogs-card:hover, .landing .portfolio-link:hover svg, .landing .editorial-footer a:hover svg { transform: none; }
}
.landing .home-editorial .about-section { grid-template-columns: minmax(0px, 1fr) minmax(0px, 0.85fr) minmax(0px, 1fr); align-items: center; gap: 48px; }
.landing .home-editorial .about-section .about-copy { grid-column: auto; }
.landing .home-editorial .about-portrait { aspect-ratio: 1 / 1; background: var(--lp-panel); border: 1px solid var(--lp-line); width: 100%; max-width: 340px; box-shadow: 0 18px 40px -26px color-mix(in srgb, var(--lp-accent) 40%, transparent); border-radius: 18px; justify-self: center; padding: 22px; position: relative; overflow: visible; }
.landing .home-editorial .about-portrait::after { content: ""; border: 1.5px solid color-mix(in srgb, var(--lp-accent) 60%, transparent); z-index: -1; pointer-events: none; border-radius: 18px; position: absolute; inset: 14px -12px -12px 14px; }
.landing .home-editorial .about-portrait img { object-fit: cover; border: 0px; border-radius: 50%; width: 100%; height: 100%; }
.landing .home-editorial .about-section .about-copy .portfolio-cta { color: var(--lp-accent); border: 1.5px solid var(--lp-accent); background: none; border-radius: 999px; }
.landing .home-editorial .about-section .about-copy .portfolio-cta:hover { background: var(--lp-accent); color: var(--lp-on-accent); }
@media (width <= 1100px) {
  .landing .home-editorial .about-section { grid-template-columns: minmax(0px, 1fr) minmax(0px, 0.8fr); }
  .landing .home-editorial .about-section .profile-facts { grid-column: 1 / -1; }
}
@media (width <= 700px) {
  .landing .home-editorial .about-section { grid-template-columns: minmax(0px, 1fr); }
  .landing .home-editorial .about-portrait { max-width: 260px; }
}
.landing .home-editorial .portfolio-section .section-ghost { z-index: 0; width: max-content; max-width: none; font-family: var(--font-display); letter-spacing: 0px; white-space: nowrap; pointer-events: none; color: color-mix(in srgb, var(--lp-accent) 11%, var(--lp-bg)); opacity: 0; background: none border-box; font-size: clamp(46px, 8.5vw, 118px); font-weight: 400; line-height: 0.95; transition: opacity 0.6s, transform 0.6s; position: absolute; top: 4px; left: 50%; transform: translate(-50%, 14px); }
.landing .home-editorial .home-achievements .section-ghost { font-size: clamp(40px, 7.5vw, 104px); }
.landing .home-editorial .portfolio-section.ghost-active .section-ghost { opacity: 1; transform: translate(-50%); }
@media (hover: hover) and (pointer: fine) {
  .landing .home-editorial .portfolio-section:hover .section-ghost { opacity: 1; transform: translate(-50%); }
}
@media (hover: none), (pointer: coarse) {
  .landing .home-editorial .portfolio-section.ghost-active .section-ghost { opacity: 1; }
}
.landing .home-editorial .section-heading, .landing .home-editorial .home-blogs, .landing .home-editorial .contact-section { padding-top: clamp(66px, 9vw, 150px); }
.landing .home-editorial .about-section { gap: clamp(32px, 4vw, 64px); padding-top: clamp(84px, 10vw, 170px); padding-bottom: clamp(72px, 8vw, 120px); }
.landing .home-editorial .about-section .about-copy > p:not(.section-eyebrow) { font-size: 15px; line-height: 1.85; }
.landing .home-editorial .about-portrait { max-width: 400px; }
.landing .home-editorial .profile-facts { gap: 26px; }
.landing .home-editorial .profile-facts h3 { font-size: 16px; }
.landing .home-editorial .profile-facts p { font-size: 13px; }
.landing .home-editorial .home-skill-card { border: 1px solid var(--lp-line); background: color-mix(in srgb, var(--lp-panel) 40%, transparent); border-radius: 18px; flex-direction: column; gap: 12px; min-width: 0px; padding: 18px; transition: transform 0.25s, border-color 0.25s, box-shadow 0.25s; display: flex; }
.landing .home-editorial .home-skill-head { color: var(--lp-accent); font-family: var(--font-mono); justify-content: space-between; align-items: center; font-size: 12px; display: flex; }
.landing .home-editorial .home-skill-art { aspect-ratio: 4 / 3; object-fit: cover; border: 1px solid var(--lp-line); border-radius: 12px; width: 100%; transition: transform 0.4s; }
.landing .home-editorial .home-skill-card h3 { font-size: 16px; font-weight: 600; }
.landing .home-editorial .home-skill-card p { color: var(--lp-muted); font-size: 12.5px; line-height: 1.65; }
.landing .home-editorial .home-skill-badges { flex-wrap: wrap; gap: 8px; display: flex; }
.landing .home-editorial .home-skill-badges span { border: 1px solid var(--lp-line); background: color-mix(in srgb, var(--lp-bg) 55%, transparent); color: var(--lp-fg); border-radius: 999px; align-items: center; gap: 6px; padding: 6px 11px; font-size: 11.5px; transition: border-color 0.2s, background 0.2s; display: inline-flex; }
.landing .home-editorial .home-skill-badges svg { width: 14px; height: 14px; color: var(--lp-accent); }
.landing .home-editorial .home-skill-link { color: var(--lp-accent); align-self: flex-start; margin-top: auto; padding-left: 0px; font-size: 13px; font-weight: 600; }
.landing .home-editorial .home-skill-link svg { transition: transform 0.22s; }
@media (hover: hover) and (pointer: fine) {
  .landing .home-editorial .home-skill-card:hover { border-color: color-mix(in srgb, var(--lp-accent) 45%, var(--lp-line)); box-shadow: 0 22px 44px -30px color-mix(in srgb, var(--lp-accent) 55%, transparent); transform: translateY(-4px); }
  .landing .home-editorial .home-skill-card:hover .home-skill-art { transform: scale(1.03); }
  .landing .home-editorial .home-skill-badges span:hover { border-color: var(--lp-accent); background: color-mix(in srgb, var(--lp-accent) 10%, transparent); }
  .landing .home-editorial .home-skill-link:hover svg { transform: translateX(3px); }
}
@media (prefers-reduced-motion: reduce) {
  .landing .home-editorial .home-skill-card, .landing .home-editorial .home-skill-art, .landing .home-editorial .home-skill-link svg { transition: none; }
  .landing .home-editorial .home-skill-card:hover { transform: none; }
}
.landing .home-blogs .home-blogs-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); margin-top: 36px; }
.landing .home-blogs .blogs-card-copy { position: relative; }
.landing .home-blog-arrow { border: 1px solid var(--lp-line); width: 44px; height: 44px; color: var(--lp-accent); border-radius: 50%; place-items: center; margin-top: 8px; transition: transform 0.22s, border-color 0.22s; display: inline-grid; }
.landing .home-blog-arrow:hover { border-color: var(--lp-accent); transform: translate(2px, -2px); }
@media (width <= 860px) {
  .landing .home-blogs .home-blogs-grid { grid-template-columns: minmax(0px, 1fr); }
}
.landing .rotating-name { animation: 0.65s cubic-bezier(0.2, 0.7, 0.2, 1) 0s 1 normal both running name-swap; display: inline-block; }
.landing .rotating-name[data-long="true"] { white-space: normal; font-size: 0.5em; line-height: 1.15; }
@keyframes name-swap { 
  0% { opacity: 0; filter: blur(4px); transform: translateY(18px); }
  100% { opacity: 1; filter: none; transform: none; }
}
.landing :is(.portfolio-cta, .portfolio-link, .work-button, .filter-button, .home-blog-arrow):active { scale: 0.96; }
.landing :is(.portfolio-cta, .portfolio-link, .work-button, .filter-button) { transition: scale 0.15s, background-color 0.22s, border-color 0.22s, color 0.22s; }
@media (prefers-reduced-motion: reduce) {
  .landing .home-editorial .portfolio-section .section-ghost { transform: translate(-50%); }
  .landing .rotating-name { animation: auto ease 0s 1 normal none running none; }
}
@media (width <= 1100px) {
  .landing .home-editorial .about-section { grid-template-columns: minmax(0px, 1fr) minmax(0px, 0.7fr); gap: 32px; }
  .landing .home-editorial .about-section .profile-facts { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .landing .achievement-preview-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}
@media (width <= 700px) {
  .landing .home-editorial .about-section, .landing .home-editorial .about-section .profile-facts { grid-template-columns: minmax(0px, 1fr); }
  .landing .home-editorial .about-portrait { justify-self: center; max-width: 300px; }
  .landing .editorial-footer-inner { padding: 44px 24px 24px; }
  .landing .editorial-footer-columns { grid-template-columns: minmax(0px, 1fr); gap: 32px; }
  .landing .editorial-footer-columns > :not(:first-child) { border-left: 0px; border-top: 1px solid var(--lp-line); padding: 24px 0px 0px; }
  .landing .editorial-footer nav a { min-height: 44px; }
  .landing .editorial-footer-bottom { gap: 12px; }
  .landing .editorial-footer-columns > :not(:first-child)::before { display: none; }
  .landing .home-editorial .section-ghost { font-size: 48px; }
  .landing .home-editorial .home-achievements .section-ghost { font-size: 26px; }
}
@media (width <= 500px) {
  .landing .achievement-preview-grid, .landing .home-skills .skills-preview { grid-template-columns: minmax(0px, 1fr); }
}
.landing .landing-header { grid-template-columns: minmax(0px, 1fr) auto; display: grid; }
.landing .landing-header > * { min-width: 0px; }
.landing .landing-controls { flex-shrink: 0; }
.landing .landing-controls button { min-width: 44px; min-height: 44px; }
.landing .landing-mobile { overscroll-behavior: contain; max-height: calc(-76px + 100dvh); overflow-y: auto; }
.landing .landing-mobile a { min-height: 48px; }
.landing .landing-mobile svg { flex-shrink: 0; }
.landing .landing-actions { flex-wrap: wrap; }
.landing .landing-socials > * { width: 44px; height: 44px; }
.landing :is(.filter-button, .skills-tab, .achievement-filter, .showcase-arrow) { min-width: 44px; min-height: 44px; }
.landing :is(.contact-form input, .contact-form textarea) { font-size: 16px; }
.landing .skills-category-grid { grid-template-columns: 1fr; }
.landing .page-projects .project-grid { grid-template-columns: minmax(0px, 1fr); }
.landing .cert-visual-photo img { object-fit: contain; }
.landing .contact-links > * { min-width: 0px; }
.landing .contact-links span { overflow-wrap: anywhere; }
@media (width >= 400px) {
  .landing .skills-category-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}
@media (width >= 650px) {
  .landing .page-projects .project-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}
@media (width >= 1024px) {
  .landing .landing-header { display: flex; }
  .landing .page-projects .project-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
}
@media (width >= 1440px) {
  .landing .skills-band:first-child { grid-template-columns: 1fr; }
  .landing .skills-category-grid { grid-template-columns: repeat(4, minmax(0px, 1fr)); }
}
@media (width <= 700px) {
  .landing .landing-header { gap: 8px; padding-inline: 16px; }
  .landing .landing-controls { gap: 0px; }
  .landing .hero-copy, .landing .portrait-composition { width: 100%; min-width: 0px; }
  .landing .portrait-composition { max-width: 320px; }
  .landing .contact-experience { gap: 32px; padding: 40px 20px; }
  .landing .contact-experience .contact-form { padding: 24px 18px; }
  .landing .contact-input-pair { grid-template-columns: 1fr; }
  .landing .achievement-toggle time { white-space: normal; }
  .landing .achievement-expanded { padding-left: 0px; }
  .landing .landing-highlight { min-width: 0px; }
  .landing .landing-highlight > svg { flex-shrink: 0; }
}
@media (width <= 374px) {
  .landing .landing-highlights { grid-template-columns: 1fr; }
  .landing .landing-highlight { border: 0px; padding: 10px 0px; }
  .landing .skills-category-items { grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 12px; }
  .landing .skills-category h3 { margin-bottom: 20px; }
  .landing .skills-category-grid { gap: 28px; }
  .landing .portrait-composition { height: 310px; }
  .landing .landing-actions { align-items: flex-start; }
}
@media (width <= 500px) {
  .landing .home-editorial .home-skills .skills-preview { grid-template-columns: minmax(0px, 1fr); }
}