:root{--color-white: #ffffff;--color-black: #000000;--color-gray-50: #faf9f7;--color-gray-100: #f5f2ed;--color-gray-200: #e8e4dd;--color-gray-300: #d6d0c8;--color-gray-400: #b5afa6;--color-gray-500: #8a847b;--color-gray-600: #6b6560;--color-gray-700: #4a4540;--color-gray-800: #2d2a26;--color-gray-900: #1a1a1a;--color-gray-950: #0c0c0c;--accent-forest: #2d6a4f;--accent-sage: #686d62;--accent-sand: #b5a28a;--accent-slate: #64748b;--accent-charcoal: #3d3d3d;--color-ink-950: #0b0d0c;--color-ink-900: #121614;--color-ink-1000: #070908;--color-paper-50: #f2f5ef;--color-paper-400: #aab3ac;--color-line-700: #2b332e;--color-line-500: #69736b;--color-signal-400: #e96b50;--color-signal-950: #100b09;--spacing-0: 0;--spacing-px: 1px;--spacing-0-5: .125rem;--spacing-1: .25rem;--spacing-1-5: .375rem;--spacing-2: .5rem;--spacing-2-5: .625rem;--spacing-3: .75rem;--spacing-3-5: .875rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-7: 1.75rem;--spacing-8: 2rem;--spacing-9: 2.25rem;--spacing-10: 2.5rem;--spacing-11: 2.75rem;--spacing-12: 3rem;--spacing-14: 3.5rem;--spacing-16: 4rem;--spacing-20: 5rem;--spacing-24: 6rem;--spacing-28: 7rem;--spacing-32: 8rem;--spacing-36: 9rem;--spacing-40: 10rem;--spacing-44: 11rem;--spacing-48: 12rem;--spacing-52: 13rem;--spacing-56: 14rem;--spacing-60: 15rem;--spacing-64: 16rem;--spacing-72: 18rem;--spacing-80: 20rem;--spacing-96: 24rem;--font-sans: "Figtree", "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Syne", "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", Consolas, Monaco, monospace;--font-body: var(--font-sans);--font-heading: var(--font-display);--font-code: var(--font-mono);--font-serif: var(--font-display);--font-size-xs: .8125rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.75rem;--font-size-4xl: 2.5rem;--font-size-5xl: 3rem;--type-display: clamp(3rem, 9vw, 7.5rem);--type-heading-1: clamp(2.75rem, 7vw, 6rem);--type-heading-2: clamp(2rem, 4.5vw, 4.5rem);--type-heading-3: clamp(1.5rem, 2.5vw, 2.5rem);--type-body: clamp(1rem, .25vw + .94rem, 1.125rem);--type-body-small: .9375rem;--type-label: .75rem;--font-weight-thin: 100;--font-weight-extralight: 200;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-weight-black: 900;--line-height-none: 1;--line-height-tight: 1.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--line-height-display: .92;--line-height-heading: 1.05;--line-height-body: 1.6;--letter-spacing-tighter: -.05em;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-widest: .1em;--letter-spacing-wideish: .075em;--radius-none: 0;--radius-sm: .125rem;--radius-base: .125rem;--radius-md: .125rem;--radius-lg: .25rem;--radius-xl: .25rem;--radius-2xl: .25rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-base: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-md: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-lg: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--shadow-xl: 0 25px 50px -12px rgb(0 0 0 / .25);--shadow-2xl: 0 50px 100px -20px rgb(0 0 0 / .25);--shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / .05);--shadow-neu: 6px 6px 12px rgba(0, 0, 0, .06), -6px -6px 12px rgba(255, 255, 255, .8);--shadow-neu-inset: inset 4px 4px 8px rgba(0, 0, 0, .06), inset -4px -4px 8px rgba(255, 255, 255, .8);--shadow-neu-hover: 8px 8px 16px rgba(0, 0, 0, .08), -8px -8px 16px rgba(255, 255, 255, .9);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--transition-fast: .15s;--transition-base: .2s;--transition-slow: .3s;--transition-slower: .5s;--motion-duration-interaction: .16s;--motion-duration-entry: .48s;--motion-distance-interaction: .125rem;--easing-linear: linear;--easing-ease: ease;--easing-ease-in: ease-in;--easing-ease-out: ease-out;--easing-ease-in-out: ease-in-out;--easing-cubic: cubic-bezier(.4, 0, .2, 1);--easing-bounce: cubic-bezier(.68, -.55, .265, 1.55);--easing-expressive: cubic-bezier(.2, .8, .2, 1);--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1536px;--content-max-width: 90rem;--reading-width: 68ch;--toc-width: 270px;--page-gutter: clamp(1.25rem, 4vw, 4rem);--section-space: clamp(4.5rem, 10vw, 9rem);--hero-top-space: 0rem;--hero-bottom-space: clamp(3.5rem, 7vw, 6rem);--grid-gap: clamp(.75rem, 2vw, 1.5rem);--padding-mobile: var(--page-gutter);--padding-tablet: var(--page-gutter);--padding-desktop: var(--page-gutter);--grid-columns: 12;--grid-gap-legacy: 1rem;--grid-row-height: 18px;--tile-border: none;--tile-border-hover: none;--tile-radius: var(--radius-md);--tile-padding: 1.75rem;--tile-bg: var(--surface);--tile-bg-hover: var(--surface-2);--tile-image-text: #f8fafc;--tile-image-label-text: #ffffff;--tile-image-label-bg: rgba(0, 0, 0, .45);--tile-image-text-shadow: 0 2px 10px rgba(0, 0, 0, .4);--tile-image-label-shadow: 0 2px 12px rgba(0, 0, 0, .6);--tile-span-small: 3;--tile-span-medium: 4;--tile-span-large: 6;--tile-span-wide: 8;--tile-row-span-small: 12;--tile-row-span-medium: 16;--tile-row-span-large: 20;--tile-row-span-wide: 22;--tile-min-height-small: 9.5rem;--tile-min-height-medium: 12.5rem;--tile-min-height-large: 15rem;--tile-min-height-wide: 17rem}html{background:var(--bg);scroll-behavior:auto}body{background-color:var(--bg);color:var(--text);font-family:var(--font-body);font-weight:var(--font-weight-normal);font-size:var(--type-body);line-height:var(--line-height-body);font-feature-settings:"kern" 1,"liga" 1,"calt" 1;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:var(--letter-spacing-normal);margin:0;padding:0}.tile{border:1px solid var(--border);background-color:var(--surface);box-shadow:none}:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.skip-link{position:absolute;top:var(--spacing-3);left:var(--spacing-3);padding:var(--spacing-2) var(--spacing-3);background-color:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md);transform:translateY(-200%);transition:transform var(--motion-duration-interaction) var(--easing-expressive);z-index:var(--z-tooltip)}.skip-link:focus,.skip-link:focus-visible{transform:translateY(0)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-weight-bold);line-height:var(--line-height-heading);letter-spacing:-.025em;color:var(--text);margin-top:var(--spacing-11);margin-bottom:var(--spacing-5)}h1{font-size:var(--type-heading-1);letter-spacing:-.045em;margin-top:0;margin-bottom:var(--spacing-7)}h2{font-size:var(--type-heading-2)}h3{font-size:var(--type-heading-3)}h4{font-size:1.75rem}h5{font-size:1.5rem}h6{font-size:1.125rem;color:var(--text-muted);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin-bottom:var(--spacing-3)}p{margin-top:var(--spacing-6);margin-bottom:var(--spacing-6);line-height:var(--line-height-body)}a{color:var(--accent);text-decoration-color:currentColor;text-decoration-thickness:1px;text-underline-offset:.18em;transition:color var(--motion-duration-interaction) var(--easing-expressive),text-decoration-thickness var(--motion-duration-interaction) var(--easing-expressive)}a:hover{color:var(--accent);text-decoration-thickness:2px}img{border:none;border-radius:var(--radius-md);max-width:100%;height:auto;box-shadow:none}th{padding-top:var(--spacing-4);padding-bottom:var(--spacing-4);text-align:left;font-weight:var(--font-weight-semibold)}td{padding-top:var(--spacing-4);padding-bottom:var(--spacing-6)}a,button,.social-icon,.cta-button{transition:color var(--motion-duration-interaction) var(--easing-expressive),background-color var(--motion-duration-interaction) var(--easing-expressive),border-color var(--motion-duration-interaction) var(--easing-expressive),transform var(--motion-duration-interaction) var(--easing-expressive)}.dark{color-scheme:dark;--color-bg-canvas: var(--color-ink-950);--color-bg-raised: var(--color-ink-900);--color-bg-inset: var(--color-ink-1000);--color-text-primary: var(--color-paper-50);--color-text-secondary: var(--color-paper-400);--color-stroke-subtle: var(--color-line-700);--color-stroke-strong: var(--color-line-500);--color-action: var(--color-signal-400);--color-action-ink: var(--color-signal-950);--color-focus-ring: var(--color-signal-400);--bg: var(--color-bg-canvas);--surface: var(--color-bg-raised);--surface-2: var(--color-bg-inset);--text: var(--color-text-primary);--text-muted: var(--color-text-secondary);--border: var(--color-stroke-subtle);--border-strong: var(--color-stroke-strong);--accent: var(--color-action);--accent-contrast: var(--color-action-ink);--focus: var(--color-focus-ring);--shadow-neu: none;--shadow-neu-inset: none;--shadow-neu-hover: none;--tile-image-text: var(--color-text-primary);--tile-image-label-text: var(--color-text-primary);--tile-image-label-bg: rgb(7 9 8 / .82)}/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */@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-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-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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-serif:var(--font-serif);--font-mono:var(--font-mono);--spacing:.25rem;--container-md:28rem;--container-xl:36rem;--container-4xl:56rem;--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: 1.5 ;--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: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--leading-relaxed:1.625;--radius-sm:var(--radius-sm);--radius-md:var(--radius-md);--radius-lg:var(--radius-lg);--radius-xl:var(--radius-xl);--radius-2xl:var(--radius-2xl);--shadow-xs:var(--shadow-xs);--shadow-sm:var(--shadow-sm);--shadow-md:var(--shadow-md);--shadow-lg:var(--shadow-lg);--shadow-xl:var(--shadow-xl);--shadow-2xl:var(--shadow-2xl);--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--shadow-inner:var(--shadow-inner);--font-display:var(--font-display);--font-body:var(--font-body);--font-heading:var(--font-heading);--font-code:var(--font-code);--radius-full:var(--radius-full);--shadow-neu:var(--shadow-neu);--shadow-neu-inset:var(--shadow-neu-inset);--shadow-neu-hover:var(--shadow-neu-hover)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,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:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}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;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{scroll-behavior:smooth}body{background-color:var(--bg);color:var(--text);font-family:var(--font-body);font-feature-settings:"kern" 1,"liga" 1,"calt" 1;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.01em;font-weight:400;line-height:1.8}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.035em;color:var(--text);font-weight:700;line-height:1.1}h1{letter-spacing:-.04em;font-size:clamp(3.25rem,7vw,5rem);font-weight:700;line-height:1.05}h2{letter-spacing:-.03em;font-size:clamp(2.25rem,5vw,3.5rem)}h3{letter-spacing:-.025em;font-size:clamp(1.75rem,4vw,2.5rem)}a{color:var(--accent);text-decoration:none;transition:all .2s}a:hover{opacity:.8}.prose a{border-bottom:1px solid #0000}.prose a:hover{border-bottom-color:var(--accent)}td{padding-top:1rem;padding-bottom:1.5rem}th{padding-top:1rem;padding-bottom:1rem}img{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:none}:focus{outline:2px solid var(--focus);outline-offset:3px;border-radius:3px}:focus:not(:focus-visible){outline:none}.katex{color:var(--text)!important}.katex-display{text-align:center;margin:1.5em 0}.katex .base{color:var(--text)!important}a.nav-logo{color:var(--text);z-index:1;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex;position:relative;opacity:1!important;border-bottom:none!important;text-decoration:none!important}a.nav-logo:hover{opacity:1!important;border-bottom:none!important;text-decoration:none!important}a.nav-logo:after{display:none!important}a.footer-logo{display:inline-flex;overflow:visible;border-bottom:none!important;text-decoration:none!important}a.footer-logo:hover{border-bottom:none!important;text-decoration:none!important}a.footer-logo:after{display:none!important}a,button{transition:color .2s,background-color .2s,border-color .2s}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}#particle-canvas{will-change:transform;contain:layout style paint}#scroll-progress{will-change:width;contain:layout style paint}.floating-shapes{contain:layout style paint}main{contain:layout}.prose{font-family:var(--font-body);max-width:none}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{font-family:var(--font-heading);color:var(--text);letter-spacing:-.025em;margin-top:2.75em;margin-bottom:1.25em;font-weight:600;line-height:1.3}.prose h1{letter-spacing:-.03em;margin-top:0;margin-bottom:1.75rem;font-size:2.75rem;font-weight:700}.prose h2{border-bottom:1px solid var(--border);margin-bottom:1.5rem;padding-bottom:.5rem;font-size:2.25rem}.prose h3{margin-bottom:1.25rem;font-size:1.875rem}.prose h4{margin-bottom:1rem;font-size:1.5rem}.prose h5{margin-bottom:1rem;font-size:1.375rem}.prose h6{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;font-size:1.125rem;font-weight:600}.prose p{color:var(--text);margin-top:1.5em;margin-bottom:1.5em;font-size:1.0625rem;line-height:1.85}.prose p:first-of-type{color:var(--text-muted);font-size:1.125rem;line-height:1.75}.prose ul,.prose ol{margin-top:1.75em;margin-bottom:1.75em;padding-left:1.75rem;list-style-position:outside}.prose ul{list-style-type:disc}.prose ol{list-style-type:decimal}.prose li{margin-top:.625em;margin-bottom:.625em;line-height:1.75}.prose blockquote{font-family:var(--font-body);border-left:3px solid var(--accent);background-color:var(--surface-2);color:var(--text-muted);border-radius:0 .5rem .5rem 0;margin:2.5rem 0;padding:1.25rem 1.5rem;font-size:1.125rem;font-style:normal}.prose blockquote:before{content:"“";color:var(--accent);font-size:2em;line-height:.5;font-family:var(--font-heading);margin-right:.125em}.prose blockquote:after{content:"”";color:var(--accent);font-size:2em;line-height:.5;font-family:var(--font-heading);margin-left:.125em}.prose code{font-family:var(--font-mono);background-color:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:.25rem;padding:.2rem .4rem;font-size:.9em;font-weight:500}.prose pre{font-family:var(--font-mono);background-color:var(--surface-2);border:1px solid var(--border);border-radius:.5rem;margin:2rem 0;padding:1.25rem;overflow-x:auto;box-shadow:0 2px 4px #0000000d}.prose pre code{background-color:#0000;border:none;padding:0;font-size:.875rem}.prose pre{position:relative}.code-copy-btn{font-size:.75rem;font-family:var(--font-body);color:var(--text-muted);background:var(--surface);border:1px solid var(--border);cursor:pointer;opacity:0;border-radius:.25rem;padding:.25rem .625rem;font-weight:500;transition:opacity .15s,color .15s,border-color .15s;position:absolute;top:.5rem;right:.5rem}.prose pre:hover .code-copy-btn{opacity:1}.code-copy-btn:hover{color:var(--accent);border-color:var(--accent)}.prose table{-webkit-overflow-scrolling:touch;border-collapse:collapse;width:max-content;max-width:100%;margin:2rem 0;font-size:.9375rem;display:block;overflow-x:auto}.prose thead{border-bottom:2px solid var(--border)}.prose th,.prose td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:.625rem 1rem}.prose th{background-color:var(--surface);color:var(--text);font-size:.875rem;font-weight:600}.prose tr:nth-child(2n) td{background-color:var(--surface)}.prose img{max-width:100%;height:auto}.prose hr{background:linear-gradient(to right,transparent,var(--border),transparent);border:none;height:2px;margin:3.5rem 0}.prose strong{color:var(--text);font-weight:600}.prose em{color:var(--text-muted);font-style:italic}@media(max-width:640px){.prose p{font-size:1rem}.prose p:first-of-type{font-size:1.0625rem}.prose li{font-size:1rem}.prose blockquote{padding:1rem 1.25rem;font-size:1.0625rem}}}@layer components{.bento-grid{--tile-span-square:4;--tile-span-wide:8;grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));gap:var(--grid-gap);grid-auto-rows:auto;grid-auto-flow:dense;display:grid}@media(max-width:1024px){.bento-grid{--tile-span-square:4;--tile-span-wide:8;grid-template-columns:repeat(8,minmax(0,1fr))}}@media(max-width:768px){.bento-grid{--tile-span-square:2;--tile-span-wide:4;--grid-gap:.5rem;--tile-padding:1rem;grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:640px){.bento-grid{--tile-span-square:1;--tile-span-wide:1;grid-template-columns:1fr}.tile-wide{--tile-aspect:1 / 1}}.tile{background:var(--tile-bg);border-radius:var(--tile-radius);padding:var(--tile-padding);box-shadow:var(--shadow-neu);grid-column:span var(--tile-span,var(--tile-span-square));aspect-ratio:var(--tile-aspect,1 / 1);border:none;flex-direction:column;min-height:0;transition:box-shadow .3s,transform .3s;display:flex;position:relative;overflow:hidden}.tile:hover{box-shadow:var(--shadow-neu-hover);background:var(--tile-bg);transform:translateY(-2px)}.tile-link{color:inherit;flex-direction:column;height:100%;text-decoration:none;display:flex}.tile-link:hover{text-decoration:none}.tile-link:after{display:none}.tile-arrow{color:var(--accent);flex-shrink:0;transition:transform .2s}.tile:hover .tile-arrow{transform:translate(4px)}.tile-image{overflow:hidden}.tile-image:before,.tile-image:after{content:"";z-index:0;position:absolute;inset:0}.tile-image:before{background-image:var(--tile-image);background-position:50%;background-size:cover;transform:scale(1.03)}.tile-image:after{background:var(--tile-image-overlay,linear-gradient(180deg, #0a0a0a59, #0a0a0ae0))}.tile-image>*{z-index:1;position:relative}.tile-image .tile-title,.tile-image .tile-description,.tile-image .hobby-list{color:var(--tile-image-text);text-shadow:var(--tile-image-text-shadow)}.tile-image .hobby-list .label{color:var(--tile-image-label-text);text-shadow:var(--tile-image-label-shadow);background:var(--tile-image-label-bg);border-radius:999px;margin-right:.2rem;padding:.08rem .45rem;display:inline-block}.tile-square{--tile-span:var(--tile-span-square);--tile-aspect:1 / 1}.tile-wide{--tile-span:var(--tile-span-wide);--tile-aspect:2 / 1}.btn-neu{background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow-neu);color:var(--text);cursor:pointer;border:none;padding:.625rem 1.25rem;font-weight:500;transition:box-shadow .2s,transform .2s}.btn-neu:hover{box-shadow:var(--shadow-neu-hover);transform:translateY(-1px)}.btn-neu:active{box-shadow:var(--shadow-neu-inset);transform:translateY(0)}.filter-tag{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-muted);cursor:pointer;padding:.375rem .875rem;font-size:.8125rem;font-weight:500;transition:color .15s,background-color .15s,border-color .15s}.filter-tag:hover{color:var(--accent);border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.filter-tag:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}}.filter-tag.active{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);font-weight:600}.status-chip{text-transform:uppercase;letter-spacing:.08em;border-radius:999px;align-items:center;padding:.2rem .5rem;font-size:.7rem;font-weight:600;display:inline-flex}.status-chip[data-status=reading]{color:#92400e;background:#fde68a}.status-chip[data-status=read]{color:#166534;background:#bbf7d0}.status-chip[data-status=to-read]{color:#9f1239;background:#fecdd3}.dark .status-chip[data-status=reading]{color:#fde68a;background:#92400e}.dark .status-chip[data-status=read]{color:#bbf7d0;background:#166534}.dark .status-chip[data-status=to-read]{color:#fecdd3;background:#9f1239}.cta-primary:hover{background-color:var(--accent);color:var(--accent-contrast);opacity:1}.skip-link{background-color:var(--surface);color:var(--text);border:1px solid var(--border);z-index:var(--z-tooltip);border-radius:.375rem;padding:.5rem .75rem;transition:transform .2s;position:absolute;top:.75rem;left:.75rem;transform:translateY(-200%)}.skip-link:focus,.skip-link:focus-visible{transform:translateY(0)}.gradient-text{background:linear-gradient(45deg,var(--accent),var(--accent),var(--accent))}@supports (color:color-mix(in lab,red,red)){.gradient-text{background:linear-gradient(45deg,var(--accent),color-mix(in srgb,var(--accent) 80%,white),color-mix(in srgb,var(--accent) 70%,black))}}.gradient-text{color:var(--accent);-webkit-text-fill-color:transparent;background-size:200% 200%;-webkit-background-clip:text;background-clip:text;animation:3s infinite gradient-shift}@supports not ((-webkit-background-clip:text)){.gradient-text{color:var(--accent);-webkit-text-fill-color:unset}}}@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing) * 0)}.mx-auto{margin-inline:auto}.my-8{margin-block:calc(var(--spacing) * 8)}.mt-0{margin-top:calc(var(--spacing) * 0)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mt-\[0\.6rem\]{margin-top:.6rem}.mb-0{margin-bottom:calc(var(--spacing) * 0)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.ml-0{margin-left:calc(var(--spacing) * 0)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-8{margin-left:calc(var(--spacing) * 8)}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.table-cell{display:table-cell}.aspect-square{aspect-ratio:1}.h-4{height:calc(var(--spacing) * 4)}.h-8{height:calc(var(--spacing) * 8)}.h-\[70\%\]{height:70%}.h-full{height:100%}.min-h-64{min-height:calc(var(--spacing) * 64)}.min-h-\[50vh\]{min-height:50vh}.min-h-screen{min-height:100vh}.w-4{width:calc(var(--spacing) * 4)}.w-8{width:calc(var(--spacing) * 8)}.w-\[70\%\]{width:70%}.w-full{width:100%}.max-w-4xl{max-width:var(--container-4xl)}.max-w-\[40rem\]{max-width:40rem}.max-w-\[var\(--container-xl\)\]{max-width:var(--container-xl)}.max-w-\[var\(--content-max-width\)\]{max-width:var(--content-max-width)}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-alias{cursor:alias}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[80px_1fr\]{grid-template-columns:80px 1fr}.grid-cols-\[repeat\(auto-fit\,minmax\(240px\,1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-\[0\.9rem\]{gap:.9rem}: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-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-\[0\.2rem\]{border-radius:.2rem}.rounded-\[0\.35rem\]{border-radius:.35rem}.rounded-\[var\(--radius-lg\)\]{border-radius:var(--radius-lg)}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-\[var\(--tile-radius\)\]{border-radius:var(--tile-radius)}.rounded-full{border-radius:var(--radius-full)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-\[3px\]{border-left-style:var(--tw-border-style);border-left-width:3px}.border-\[var\(--accent\)\]{border-color:var(--accent)}.border-\[var\(--border\)\]{border-color:var(--border)}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.bg-\[var\(--surface-2\)\]{background-color:var(--surface-2)}.bg-\[var\(--tile-bg\)\]{background-color:var(--tile-bg)}.bg-transparent{background-color:#0000}.object-cover{object-fit:cover}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.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:calc(var(--spacing) * 1)}.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-12{padding-block:calc(var(--spacing) * 12)}.py-16{padding-block:calc(var(--spacing) * 16)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.font-display{font-family:var(--font-display)}.font-serif{font-family:var(--font-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-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\.9rem\]{font-size:.9rem}.text-\[8rem\]{font-size:8rem}.text-\[clamp\(3rem\,7vw\,4\.5rem\)\]{font-size:clamp(3rem,7vw,4.5rem)}.leading-\[1\.6\]{--tw-leading:1.6;line-height:1.6}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.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-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.03em\]{--tw-tracking:-.03em;letter-spacing:-.03em}.tracking-\[0\.1em\]{--tw-tracking:.1em;letter-spacing:.1em}.tracking-\[0\.08em\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.text-\[var\(--accent\)\]{color:var(--accent)}.text-\[var\(--border-strong\)\]{color:var(--border-strong)}.text-\[var\(--text\)\]{color:var(--text)}.text-\[var\(--text-muted\)\]{color:var(--text-muted)}.text-inherit{color:inherit}.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,)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.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)}.ring{--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)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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,)}.invert{--tw-invert:invert(100%);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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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-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-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:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;user-select:none}.group-focus-within\:bg-\[var\(--text\)\]:is(:where(.group):focus-within *){background-color:var(--text)}.group-focus-within\:text-\[var\(--bg\)\]:is(:where(.group):focus-within *){color:var(--bg)}@media(hover:hover){.group-hover\:bg-\[var\(--text\)\]:is(:where(.group):hover *){background-color:var(--text)}.group-hover\:text-\[var\(--bg\)\]:is(:where(.group):hover *){color:var(--bg)}.hover\:scale-\[1\.03\]:hover{scale:1.03}.hover\:rotate-\[2deg\]:hover{rotate:2deg}.hover\:border-\[var\(--accent\)\]:hover{border-color:var(--accent)}.hover\:text-\[var\(--accent\)\]:hover{color:var(--accent)}.hover\:text-\[var\(--text-muted\)\]:hover{color:var(--text-muted)}.hover\:text-inherit:hover{color:inherit}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}}.focus-visible\:text-\[var\(--text-muted\)\]:focus-visible{color:var(--text-muted)}.focus-visible\:ring-4:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + 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-\[var\(--focus\)\]:focus-visible{--tw-ring-color:var(--focus)}@media not all and (min-width:40rem){.max-sm\:grid-cols-\[72px_1fr\]{grid-template-columns:72px 1fr}}@media(min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:aspect-\[2\/1\]{aspect-ratio:2}.sm\:grid-flow-row-dense{grid-auto-flow:dense}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:pt-10{padding-top:calc(var(--spacing) * 10)}.sm\:pb-12{padding-bottom:calc(var(--spacing) * 12)}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:text-\[10rem\]{font-size:10rem}}@media(min-width:48rem){.md\:line-clamp-4{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.md\:pt-10{padding-top:calc(var(--spacing) * 10)}.md\:pb-16{padding-bottom:calc(var(--spacing) * 16)}}@media(min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:80rem){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}@keyframes gentle-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes gradient-shift{0%,to{background-position:0%}50%{background-position:100%}}@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-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-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.hb-logo-wrap[data-astro-cid-bt5hbwbt]{display:inline-flex;align-items:center;justify-content:center;overflow:visible;position:relative;transform-origin:center}.logo-svg[data-astro-cid-bt5hbwbt]{display:block;width:100%;height:100%}.logo-glitch[data-astro-cid-bt5hbwbt]{position:absolute;inset:0;opacity:0;pointer-events:none}@media(prefers-reduced-motion:no-preference){.hb-logo-wrap[data-astro-cid-bt5hbwbt]{animation:hb-logo-enter .45s cubic-bezier(.22,1,.36,1) both}a:hover .logo-main[data-astro-cid-bt5hbwbt],a:focus-visible .logo-main[data-astro-cid-bt5hbwbt]{animation:hb-logo-shift .32s ease both}a:hover .glitch-r[data-astro-cid-bt5hbwbt],a:focus-visible .glitch-r[data-astro-cid-bt5hbwbt]{animation:hb-logo-red .32s steps(3) both}a:hover .glitch-c[data-astro-cid-bt5hbwbt],a:focus-visible .glitch-c[data-astro-cid-bt5hbwbt]{animation:hb-logo-cyan .32s steps(3) both}}@keyframes hb-logo-enter{0%{opacity:0;transform:scale(.8) rotate(-4deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes hb-logo-shift{0%,to{transform:translate(0)}35%{transform:translate(2px)}70%{transform:translate(-1px)}}@keyframes hb-logo-red{0%{opacity:.65;transform:translate(-3px,-1px)}to{opacity:0;transform:translate(0)}}@keyframes hb-logo-cyan{0%{opacity:.65;transform:translate(3px,1px)}to{opacity:0;transform:translate(0)}}.site-footer[data-astro-cid-35ed7um5]{border-top:1px solid var(--color-stroke-subtle);margin-block-start:auto;padding-block:2rem}.site-footer__inner[data-astro-cid-35ed7um5]{margin-inline:auto;max-width:var(--content-max-width)}.site-footer__meta[data-astro-cid-35ed7um5]{align-items:start;border-top:1px solid var(--color-stroke-subtle);color:var(--color-text-secondary);display:grid;font-size:var(--type-label);gap:var(--spacing-5);padding-block-start:var(--spacing-6)}.site-footer__meta[data-astro-cid-35ed7um5] p[data-astro-cid-35ed7um5]{line-height:1.5;margin:0}.site-footer[data-astro-cid-35ed7um5] nav[data-astro-cid-35ed7um5],.site-footer__profiles[data-astro-cid-35ed7um5]{display:flex;flex-wrap:wrap;gap:var(--spacing-3) var(--spacing-5)}.site-footer[data-astro-cid-35ed7um5] nav[data-astro-cid-35ed7um5] a[data-astro-cid-35ed7um5],.site-footer__profiles[data-astro-cid-35ed7um5] a[data-astro-cid-35ed7um5]{align-items:center;color:var(--color-text-secondary);display:inline-flex;min-height:2.75rem}.footer-logo[data-astro-cid-35ed7um5]{color:var(--color-text-primary);display:inline-flex;width:fit-content}@media(min-width:48rem){.site-footer__meta[data-astro-cid-35ed7um5]{align-items:center;grid-template-columns:auto minmax(12rem,1fr) auto auto}.site-footer__copyright[data-astro-cid-35ed7um5]{grid-column:2}}.button-link[data-astro-cid-ayslwnz3]{align-items:center;border:1px solid transparent;border-radius:var(--radius-sm);box-sizing:border-box;display:inline-flex;font-family:var(--font-body);font-size:var(--type-body-small);font-weight:var(--font-weight-semibold);gap:var(--spacing-3);justify-content:center;line-height:1;min-block-size:2.75rem;padding:.85rem 1.1rem;text-decoration:none;transition:background-color var(--motion-duration-interaction) var(--easing-expressive),border-color var(--motion-duration-interaction) var(--easing-expressive),color var(--motion-duration-interaction) var(--easing-expressive),transform var(--motion-duration-interaction) var(--easing-expressive)}.button-link[data-astro-cid-ayslwnz3]:after{display:none}.button-link[data-astro-cid-ayslwnz3]:hover{opacity:1;text-decoration:none;transform:translateY(calc(-1 * var(--motion-distance-interaction)))}.button-link[data-astro-cid-ayslwnz3]:active{transform:translateY(0)}.button-link--primary[data-astro-cid-ayslwnz3]{background:var(--color-action);color:var(--color-action-ink)}.button-link--primary[data-astro-cid-ayslwnz3]:hover{background:var(--color-text-primary);color:var(--color-bg-canvas)}.button-link--secondary[data-astro-cid-ayslwnz3]{background:transparent;border-color:var(--color-stroke-strong);color:var(--color-text-primary)}.button-link--secondary[data-astro-cid-ayslwnz3]:hover{border-color:var(--color-action);color:var(--color-action)}.button-link--text[data-astro-cid-ayslwnz3]{border:0;color:var(--color-text-primary);justify-content:flex-start;min-block-size:2.75rem;padding-inline:0;text-decoration:underline;text-decoration-color:var(--color-action);text-underline-offset:.25em}.button-link--text[data-astro-cid-ayslwnz3]:hover{color:var(--color-action);transform:none}.button-link__arrow[data-astro-cid-ayslwnz3]{color:currentColor;font-size:1.05em;transition:transform var(--motion-duration-interaction) var(--easing-expressive)}.button-link[data-astro-cid-ayslwnz3]:hover .button-link__arrow[data-astro-cid-ayslwnz3]{transform:translate(.1rem,-.1rem)}@media(prefers-reduced-motion:reduce){.button-link[data-astro-cid-ayslwnz3]:hover,.button-link[data-astro-cid-ayslwnz3]:hover .button-link__arrow[data-astro-cid-ayslwnz3]{transform:none}}#site-header[data-astro-cid-qlfjksao]{background:var(--color-bg-canvas);border-bottom:1px solid var(--color-stroke-subtle);position:sticky;top:0;z-index:var(--z-sticky)}.site-nav__inner[data-astro-cid-qlfjksao]{align-items:center;display:flex;gap:var(--spacing-4);justify-content:space-between;margin-inline:auto;max-width:var(--content-max-width);min-height:4.25rem;padding-inline:var(--page-gutter)}.site-nav__desktop[data-astro-cid-qlfjksao]{align-items:center;display:none;gap:clamp(1.5rem,3vw,2.5rem);margin-inline-start:auto}.site-nav__link[data-astro-cid-qlfjksao]{color:var(--color-text-secondary);display:inline-flex;font-size:var(--type-label);font-weight:var(--font-weight-semibold);letter-spacing:.1em;min-height:2.75rem;align-items:center;text-decoration:none;text-transform:uppercase}.site-nav__link[data-astro-cid-qlfjksao]:hover,.site-nav__link--active[data-astro-cid-qlfjksao]{color:var(--color-action);opacity:1}.site-nav__actions[data-astro-cid-qlfjksao]{align-items:center;display:flex;gap:var(--spacing-2)}.site-nav__booking-long[data-astro-cid-qlfjksao]{display:none}.site-nav__mobile[data-astro-cid-qlfjksao]{position:relative}.site-nav__mobile[data-astro-cid-qlfjksao] summary[data-astro-cid-qlfjksao]{align-items:center;color:var(--color-text-primary);cursor:pointer;display:flex;height:2.75rem;justify-content:center;list-style:none;width:2.75rem}.site-nav__mobile[data-astro-cid-qlfjksao] summary[data-astro-cid-qlfjksao]::-webkit-details-marker{display:none}.menu-icon-close[data-astro-cid-qlfjksao],.site-nav__mobile[data-astro-cid-qlfjksao][open] .menu-icon-open[data-astro-cid-qlfjksao]{display:none}.site-nav__mobile[data-astro-cid-qlfjksao][open] .menu-icon-close[data-astro-cid-qlfjksao]{display:block}.site-nav__mobile-panel[data-astro-cid-qlfjksao]{background:var(--color-bg-canvas);border:1px solid var(--color-stroke-subtle);display:flex;flex-direction:column;min-width:min(16rem,calc(100vw - 2 * var(--page-gutter)));padding:var(--spacing-3);position:absolute;right:0;top:calc(100% + var(--spacing-3))}@media(min-width:48rem){.site-nav__inner[data-astro-cid-qlfjksao]{min-height:4.5rem}.site-nav__desktop[data-astro-cid-qlfjksao]{display:flex}.site-nav__booking-long[data-astro-cid-qlfjksao]{display:inline}.site-nav__booking-short[data-astro-cid-qlfjksao],.site-nav__mobile[data-astro-cid-qlfjksao]{display:none}}*,*:before,*:after{box-sizing:border-box}.site-shell{padding-inline:var(--page-gutter);width:100%}
