:root{--color-void: #0a0e1a;--color-deep-space: #12182b;--color-nebula: #1e2a4a;--color-hull: #2a3555;--color-gilt: #c9a962;--color-gilt-bright: #e8d5a3;--color-pearl: #f5f0e8;--color-pearl-muted: #b8b0a0;--color-accent-ruby: #8b2942;--color-accent-cosmic: #6b4c9a;--color-star: #fff8e7;--gradient-void-depth: radial-gradient( ellipse 120% 80% at 50% -20%, var(--color-nebula) 0%, var(--color-deep-space) 45%, var(--color-void) 100% );--gradient-gilt-shimmer: linear-gradient( 90deg, transparent, color-mix(in srgb, var(--color-gilt) 50%, transparent), transparent );--gradient-chiaroscuro: linear-gradient( 90deg, color-mix(in srgb, #000 40%, transparent) 0%, transparent 100% );--space-section: 4rem;--space-section-sm: 2.5rem;--space-gutter: 24px;--space-breath: 8px;--radius-hull: 8px;--radius-pearl: 24px;--content-max-width: 1280px;--prose-max-width: 65ch;--font-display: "Source Han Serif SC", "Noto Serif SC", "Songti SC", serif;--font-body: "Source Han Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono: "JetBrains Mono", "Source Han Mono SC", ui-monospace, monospace;--text-display-xl: 3rem;--text-display-lg: 2.25rem;--text-heading: 1.5rem;--text-body: 1rem;--text-small: .875rem;--text-caption: .75rem;--lh-display-xl: 1.15;--lh-display-lg: 1.2;--lh-heading: 1.3;--lh-body: 1.65;--lh-small: 1.5;--lh-caption: 1.4;--letter-display: .04em;--letter-nav: .02em;--z-bg: 0;--z-ornament: 1;--z-content: 2;--z-nav: 3;--z-overlay: 4;--bp-sm: 640px;--bp-md: 1024px;--bp-lg: 1280px;--ease-dramatic: cubic-bezier(.4, 0, .2, 1);--duration-fast: .2s;--duration-normal: .3s;--duration-slow: .4s;--scroll-margin-section: 5.5rem;--scroll-margin-section-tabs: 7.5rem}@media (max-width: 639px){:root{--space-section: var(--space-section-sm);--text-display-xl: 2.25rem;--text-display-lg: 1.75rem}}.hull-panel{position:relative;z-index:var(--z-content);background:var(--color-nebula);border:1px solid color-mix(in srgb,var(--color-gilt) 35%,transparent);border-radius:var(--radius-hull);box-shadow:inset 0 1px color-mix(in srgb,var(--color-gilt) 12%,transparent),inset 0 -1px color-mix(in srgb,var(--color-void) 40%,transparent),0 4px 24px color-mix(in srgb,var(--color-void) 60%,transparent)}.hull-panel--interactive{transition:border-color var(--duration-fast) var(--ease-dramatic),transform var(--duration-fast) var(--ease-dramatic),box-shadow var(--duration-fast) var(--ease-dramatic)}.hull-panel--interactive:hover{border-color:color-mix(in srgb,var(--color-gilt-bright) 55%,transparent);transform:translateY(-2px);box-shadow:inset 0 1px color-mix(in srgb,var(--color-gilt) 18%,transparent),0 8px 32px color-mix(in srgb,var(--color-gilt) 12%,transparent)}.hull-panel--barocco{border-radius:var(--radius-hull) var(--radius-pearl) var(--radius-hull) var(--radius-hull)}.porthole-frame{border-radius:var(--radius-hull);border:1px solid color-mix(in srgb,var(--color-gilt) 40%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-hull) 80%,transparent),inset 0 2px 8px color-mix(in srgb,var(--color-void) 50%,transparent);overflow:hidden}.gilt-divider{display:block;width:100%;height:1px;margin:0;padding:0;border:none;background:linear-gradient(90deg,transparent,var(--color-gilt) 20%,var(--color-gilt-bright) 50%,var(--color-gilt) 80%,transparent);opacity:.7}.gilt-divider--footer{margin-bottom:var(--space-section-sm)}.gilt-divider--vertical{width:1px;height:100%;min-height:2rem;background:linear-gradient(180deg,transparent,var(--color-gilt) 15%,var(--color-gilt-bright) 50%,var(--color-gilt) 85%,transparent)}.gilt-inscription-band{display:flex;align-items:center;gap:1rem;padding:var(--space-breath) 0;color:var(--color-pearl-muted);font-family:var(--font-mono);font-size:var(--text-caption);letter-spacing:var(--letter-nav);text-transform:uppercase}.gilt-inscription-band:before,.gilt-inscription-band:after{content:"";flex:1;height:1px;background:var(--gradient-gilt-shimmer);opacity:.6}.gilt-corner{position:relative}.gilt-corner:before,.gilt-corner:after{content:"";position:absolute;width:32px;height:32px;pointer-events:none;opacity:.45;border-color:var(--color-gilt);border-style:solid;z-index:var(--z-ornament)}.gilt-corner:before{top:-1px;left:-1px;border-width:1px 0 0 1px;border-radius:var(--radius-hull) 0 0 0}.gilt-corner:after{bottom:-1px;right:-1px;border-width:0 1px 1px 0;border-radius:0 0 var(--radius-hull) 0}.gradient-gilt-shimmer{display:block;width:100%;height:2px;margin-top:1rem;background:var(--gradient-gilt-shimmer)}.ornament-breath{padding:var(--space-breath)}@media (max-width: 639px){.gilt-corner:before,.gilt-corner:after{display:none}}@media (min-width: 640px) and (max-width: 1023px){.gilt-corner:before,.gilt-corner:after{width:20px;height:20px;opacity:.3}}@media (prefers-reduced-motion: reduce){.hull-panel--interactive{transition:none}.hull-panel--interactive:hover{transform:none}}*,*:before,*:after{box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body{display:flex;flex-direction:column;margin:0;min-height:100dvh;font-family:var(--font-body);font-size:var(--text-body);line-height:var(--lh-body);color:var(--color-pearl);background:var(--color-deep-space)}.gradient-void-depth{background:var(--gradient-void-depth);min-height:100dvh}.gradient-void-depth:before{content:"";position:fixed;inset:0;z-index:var(--z-bg);pointer-events:none;opacity:.05;background-image:radial-gradient(1px 1px at 20% 30%,var(--color-star) 50%,transparent 50%),radial-gradient(1px 1px at 60% 70%,var(--color-star) 50%,transparent 50%),radial-gradient(1px 1px at 80% 20%,var(--color-star) 50%,transparent 50%),radial-gradient(1px 1px at 40% 80%,var(--color-star) 50%,transparent 50%),radial-gradient(1px 1px at 10% 60%,var(--color-star) 50%,transparent 50%);background-size:200px 200px}.text-display-xl{font-family:var(--font-display);font-size:var(--text-display-xl);line-height:var(--lh-display-xl);letter-spacing:var(--letter-display)}.text-display-lg{font-family:var(--font-display);font-size:var(--text-display-lg);line-height:var(--lh-display-lg);letter-spacing:var(--letter-display)}.text-heading{font-family:var(--font-display);font-size:var(--text-heading);line-height:var(--lh-heading);letter-spacing:var(--letter-nav)}.text-body{font-size:var(--text-body);line-height:var(--lh-body)}.text-small{font-size:var(--text-small);line-height:var(--lh-small)}.text-caption{font-family:var(--font-mono);font-size:var(--text-caption);line-height:var(--lh-caption)}.text-muted{color:var(--color-pearl-muted)}.text-mono{font-family:var(--font-mono)}.prose{max-width:var(--prose-max-width)}.gradient-chiaroscuro{background:var(--gradient-chiaroscuro)}.quote-block{margin:0;padding:1rem 1.25rem;border-left:2px solid var(--color-gilt);background:color-mix(in srgb,var(--color-nebula) 95%,var(--color-pearl) 5%);font-family:var(--font-display);font-style:italic;color:var(--color-pearl)}a{color:var(--color-gilt-bright);text-decoration:none;transition:color var(--duration-fast) var(--ease-dramatic)}a:hover{color:var(--color-pearl);text-decoration:underline;text-underline-offset:3px}a:focus-visible{outline:2px solid var(--color-gilt-bright);outline-offset:2px;border-radius:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;font-family:var(--font-body);font-size:var(--text-small);line-height:1.25;border-radius:4px;border:1px solid transparent;cursor:pointer;text-decoration:none;transition:background-color var(--duration-fast) var(--ease-dramatic),border-color var(--duration-fast) var(--ease-dramatic),color var(--duration-fast) var(--ease-dramatic)}.btn:hover{text-decoration:none}.btn--primary{background:var(--color-accent-ruby);color:var(--color-pearl);border-color:color-mix(in srgb,var(--color-gilt) 30%,transparent)}.btn--primary:hover{background:color-mix(in srgb,var(--color-accent-ruby) 90%,var(--color-pearl) 10%);color:var(--color-pearl)}.btn--secondary{background:transparent;color:var(--color-gilt-bright);border-color:var(--color-gilt)}.btn--secondary:hover{background:color-mix(in srgb,var(--color-gilt) 10%,transparent);color:var(--color-gilt-bright)}.btn--ghost{background:transparent;color:var(--color-gilt);border-color:transparent;padding-inline:.5rem}.btn--ghost:hover{color:var(--color-gilt-bright);text-decoration:underline;text-underline-offset:3px}.btn:focus-visible{outline:2px solid var(--color-gilt-bright);outline-offset:2px}.skip-link{position:absolute;top:-100%;left:1rem;z-index:100;padding:.5rem 1rem;background:var(--color-accent-ruby);color:var(--color-pearl);border-radius:var(--radius-hull);font-size:var(--text-small);text-decoration:none}.skip-link:focus,.skip-link:focus-visible{top:1rem;outline:2px solid var(--color-gilt-bright);outline-offset:2px}.main-content{position:relative;z-index:var(--z-content);flex:1;width:100%;max-width:var(--content-max-width);margin:0 auto;padding:var(--space-section) var(--space-gutter)}.site-header{position:sticky;top:0;z-index:var(--z-nav);background:color-mix(in srgb,var(--color-deep-space) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid color-mix(in srgb,var(--color-gilt) 40%,transparent)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;max-width:var(--content-max-width);margin:0 auto;padding:1rem var(--space-gutter)}.site-logo{display:inline-flex;align-items:center;text-decoration:none;line-height:0}.site-logo__mark{display:block;height:2.25rem;width:auto;aspect-ratio:10 / 3;object-fit:contain;flex-shrink:0;filter:brightness(0) invert(1);opacity:.92;transition:opacity var(--motion-fast, .15s) ease,filter var(--motion-fast, .15s) ease}.site-logo:hover .site-logo__mark{opacity:1;filter:brightness(0) invert(92%) sepia(22%) saturate(520%) hue-rotate(6deg)}.site-logo:hover{text-decoration:none}.site-nav__list{display:flex;gap:2rem;list-style:none;margin:0;padding:0}.site-nav a{position:relative;font-size:var(--text-small);letter-spacing:var(--letter-nav);color:var(--color-pearl-muted);text-decoration:none;padding-bottom:4px}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--color-gilt-bright);text-decoration:none}.site-nav a[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--color-gilt-bright)}.site-nav--desktop{display:block}.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:2.5rem;height:2.5rem;padding:.5rem;background:transparent;border:1px solid color-mix(in srgb,var(--color-gilt) 40%,transparent);border-radius:var(--radius-hull);cursor:pointer;color:var(--color-gilt-bright);transition:border-color var(--duration-fast) var(--ease-dramatic)}.nav-toggle:hover{border-color:var(--color-gilt-bright)}.nav-toggle:focus-visible{outline:2px solid var(--color-gilt-bright);outline-offset:2px}.nav-toggle__bar{display:block;width:100%;height:1.5px;background:currentColor;border-radius:1px}.nav-drawer{position:fixed;inset:0;z-index:var(--z-overlay);width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:none;background:transparent;overflow:hidden}.nav-drawer::backdrop{background:color-mix(in srgb,var(--color-void) 75%,transparent);backdrop-filter:blur(4px)}.nav-drawer__backdrop{position:absolute;inset:0;cursor:pointer}.nav-drawer__panel{position:absolute;top:0;right:0;width:min(18rem,85vw);height:100%;margin:0;padding:1.5rem;border-radius:0;border-top:none;border-right:none;border-bottom:none;display:flex;flex-direction:column;gap:1.5rem;animation:nav-drawer-in var(--duration-normal) var(--ease-dramatic)}@keyframes nav-drawer-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.nav-drawer__header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.75rem;border-bottom:1px solid color-mix(in srgb,var(--color-gilt) 25%,transparent)}.nav-drawer__title{margin:0;font-size:var(--text-heading);color:var(--color-pearl)}.nav-drawer__close{min-height:2.25rem}.site-nav--drawer .site-nav__list{flex-direction:column;gap:0}.site-nav--drawer .site-nav__item{border-bottom:1px solid color-mix(in srgb,var(--color-hull) 60%,transparent)}.site-nav--drawer a{display:block;padding:1rem .25rem;font-size:var(--text-body)}.site-nav--drawer a[aria-current=page]:after{left:0;right:auto;width:2rem}@media (max-width: 639px){.site-nav--desktop{display:none}.nav-toggle{display:flex}}.site-footer{position:relative;z-index:var(--z-content);margin-top:auto;padding:0 var(--space-gutter) var(--space-section-sm);background:var(--color-void);color:var(--color-pearl-muted);font-size:var(--text-small)}.site-footer__scrollwork{display:block;width:100%;height:1.5rem;margin-bottom:.5rem;color:var(--color-gilt);pointer-events:none}@media (max-width: 639px){.site-footer__scrollwork{display:none}}.site-footer__inner{max-width:var(--content-max-width);margin:0 auto}.site-footer__copy,.site-footer__contact{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.375rem .5rem;margin:0;text-align:center;color:var(--color-pearl-muted)}.site-footer__contact{margin-bottom:.5rem}.site-footer__sep{opacity:.6}.site-footer__icp{color:inherit;text-decoration:none}.site-footer__icp:hover{color:var(--color-gilt-bright);text-decoration:underline}.site-footer__notice{margin:.65rem 0 0;text-align:center;font-size:var(--text-caption);line-height:var(--lh-caption);color:color-mix(in srgb,var(--color-pearl-muted) 82%,transparent)}.hero{text-align:center;padding:var(--space-section) 0}.hero__title{font-family:var(--font-display);font-size:var(--text-display-xl);line-height:var(--lh-display-xl);letter-spacing:var(--letter-display);margin:0 0 1rem;color:var(--color-pearl)}.hero__subtitle{max-width:42ch;margin:0 auto 2rem;color:var(--color-pearl-muted);font-size:var(--text-body)}.hero__panel{display:inline-block;padding:2rem 3rem;text-align:left}.hero__meta{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--color-pearl-muted);margin-top:1rem}.hero__cta{margin-top:1.5rem}@media (max-width: 639px){.main-content{padding-inline:1rem}}@media (min-width: 640px) and (max-width: 1023px){.main-content{padding-inline:var(--space-gutter)}}@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}.nav-drawer__panel{animation:none}}
