@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@layer rwc.reset{*,:before,:after{box-sizing:border-box}body{background:var(--surface-page);color:var(--text-body);font-family:var(--font-body);font-weight:var(--weight-body);font-size:var(--text-body-md);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--weight-heading);color:var(--text-heading);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading);margin:0}p{text-wrap:pretty;margin:0}a{color:var(--text-link);border-bottom:1px solid var(--border-strong);transition:var(--transition-ui);text-decoration:none}a:hover{color:var(--text-link-hover);border-bottom-color:var(--ink-900)}::selection{background:var(--ice-melt);color:var(--ink-900)}:focus-visible{outline:2px solid var(--text-link);outline-offset:4px;box-shadow:var(--shadow-focus)}.eyebrow{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted);font-weight:600}.prose{max-width:var(--measure-prose)}.rule{background:var(--border-hairline);border:0;height:1px}}@layer rwc.tokens{:root{--cloud-dancer:#f0eee9;--cloud-cover:#9a9393;--nimbus-cloud:#d5d5d8;--baltic-sea:#7ab6d9;--golden-mist:#d5cd94;--peach-dust:#f0d8cc;--almost-aqua:#cad3c1;--ice-melt:#d3e4f1;--ink-900:#2b2726;--ink-700:#4a4443;--ink-500:#6e6766;--paper-000:#fbfaf8;--paper-100:#f0eee9;--paper-200:#e6e3dc;--line-100:#dfdcd5;--line-200:#c9c5bd;--surface-page:var(--paper-100);--surface-card:var(--paper-000);--surface-card-crisp:#fff;--surface-sunken:var(--paper-200);--surface-inverse:var(--ink-900);--surface-accent:var(--ice-melt);--text-heading:var(--ink-900);--text-body:var(--ink-700);--text-muted:var(--ink-500);--text-inverse:var(--paper-100);--text-link:#3d7fa6;--text-link-hover:var(--ink-900);--border-hairline:var(--line-100);--border-strong:var(--line-200);--border-focus:var(--baltic-sea);--action-primary:var(--ink-900);--action-primary-hover:var(--ink-700);--action-primary-text:var(--paper-100);--action-secondary-border:var(--line-200);--action-secondary-hover:var(--paper-200);--accent-1:var(--baltic-sea);--accent-2:var(--golden-mist);--accent-3:var(--peach-dust);--accent-4:var(--almost-aqua);--accent-5:var(--ice-melt);--accent-6:var(--nimbus-cloud);--status-info-bg:var(--ice-melt);--status-note-bg:var(--golden-mist);--status-ok-bg:var(--almost-aqua);--status-alert-bg:var(--peach-dust);--status-text:var(--ink-900);--font-display:"Raleway",-apple-system,"Segoe UI",sans-serif;--font-body:"Open Sans",-apple-system,"Segoe UI",sans-serif;--weight-body:300;--weight-body-strong:600;--weight-heading:500;--weight-logo:600;--text-display:clamp(2.75rem,5vw,4rem);--text-h1:2.5rem;--text-h2:1.875rem;--text-h3:1.375rem;--text-h4:1.125rem;--text-lead:1.1875rem;--text-body-md:1rem;--text-body-sm:.875rem;--text-caption:.8125rem;--text-micro:.6875rem;--leading-tight:1.12;--leading-heading:1.24;--leading-body:1.7;--leading-loose:1.85;--tracking-display:-.02em;--tracking-heading:-.01em;--tracking-body:0;--tracking-eyebrow:.16em;--measure-prose:66ch;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--gap-element:var(--space-4);--gap-section:var(--space-12);--pad-card:var(--space-8);--page-max:1200px;--page-gutter:var(--space-6);--radius-input:8px;--radius-sm:12px;--radius-card:24px;--radius-card-lg:32px;--radius-pill:9999px;--lift-0:none;--lift-1:inset 0 1px 0 #fff9,0 1px 1.5px #2b272606,0 10px 24px -18px #2b272621;--lift-2:inset 0 1px 0 #ffffffa6,0 2px 3px #2b272607,0 22px 46px -26px #2b272633;--lift-3:inset 0 1px 0 #ffffff80,0 34px 74px -28px #2b272642;--lift-inset:inset 0 1px 2px #2b27260b;--shadow-none:var(--lift-0);--shadow-hairline:0 0 0 1px var(--border-hairline);--shadow-raised:var(--lift-2);--shadow-overlay:var(--lift-3);--shadow-focus:0 0 0 3px #7ab6d973;--blur-veil:blur(10px);--ease-standard:cubic-bezier(.4,0,.2,1);--ease-out-soft:cubic-bezier(.16,.84,.44,1);--dur-fast:.12s;--dur-base:.2s;--dur-slow:.4s;--transition-ui:color var(--dur-fast) var(--ease-standard),background-color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),opacity var(--dur-fast) var(--ease-standard);--wash-dawn:linear-gradient(168deg,#fbfaf8 0%,#f4f2ee 42%,var(--ice-melt) 100%);--wash-daybreak:linear-gradient(160deg,#fbfaf8 0%,#f6f1e6 55%,var(--peach-dust) 100%);--wash-clearing:linear-gradient(172deg,var(--ice-melt) 0%,#f1f4f2 48%,var(--almost-aqua) 100%);--wash-horizon:linear-gradient(180deg,var(--paper-000) 0%,var(--paper-000) 58%,var(--ice-melt) 100%);--wash-aperture:radial-gradient(120% 90% at 18% -10%,#d3e4f1d9 0%,#fbfaf800 62%);--wash-aperture-warm:radial-gradient(120% 90% at 82% -14%,#f0d8ccb3 0%,#fbfaf800 60%);--axis-line:linear-gradient(90deg,var(--line-200) 0%,var(--line-100) 46%,#dfdcd500 100%);--axis-line-lit:linear-gradient(90deg,var(--baltic-sea) 0%,#7ab6d959 55%,#7ab6d900 100%);--axis-line-vertical:linear-gradient(180deg,var(--line-200) 0%,#dfdcd500 100%);--glow-cool:0 1px 0 #ffffffe6 inset,0 18px 40px -24px #3d7fa659;--glow-warm:0 1px 0 #ffffffe6 inset,0 18px 40px -24px #9a939366;--vector-stroke:1.25px;--vector-stroke-lead:2px;--vector-opacity:.5;--vector-opacity-lead:1;--ease-lift:cubic-bezier(.22,1,.36,1);--dur-reveal:.64s;--rise-distance:14px}.horizon{background:var(--wash-horizon);position:relative;overflow:hidden}.horizon:after{content:"";background:var(--axis-line);height:1px;position:absolute;bottom:0;left:0;right:0}.aperture{position:relative}.aperture:before{content:"";background:var(--wash-aperture);pointer-events:none;position:absolute;inset:0}.aperture>*{position:relative}.axis{background:var(--axis-line);border:0;width:100%;height:1px}.axis--lit{background:var(--axis-line-lit)}.rise{animation:rwc-rise var(--dur-reveal) var(--ease-lift) both}@keyframes rwc-rise{0%{opacity:0;transform:translateY(var(--rise-distance))}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.rise{animation:none}}}@layer rwc.base{html{background:var(--surface-page);color:var(--text-body);font-family:var(--font-body);scroll-behavior:smooth}img,svg{max-width:100%}main{view-transition-name:page-main}::view-transition-old(page-main),::view-transition-new(page-main){animation-duration:.26s;animation-timing-function:var(--ease-standard)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}}@layer rwc.components{.site-shell{background:var(--surface-page);min-height:100vh}.site-header{z-index:20;border-bottom:1px solid color-mix(in srgb, var(--border-hairline) 76%, transparent);backdrop-filter:var(--blur-veil);background:#f0eee9db;position:sticky;top:0}.site-header[data-header-reveal]{opacity:0;visibility:hidden;transition:opacity var(--dur-base) var(--ease-standard), transform var(--dur-base) var(--ease-lift), visibility 0s linear var(--dur-base);position:fixed;inset:0 0 auto;transform:translateY(-100%)}.site-header[data-header-reveal][data-header-visible]{opacity:1;visibility:visible;transition-delay:0s;transform:none}@media (prefers-reduced-motion:reduce){.site-header[data-header-reveal]{transition-delay:0s}}@media print{.site-header[data-header-reveal]{display:none}}.site-header__inner{justify-content:space-between;align-items:center;gap:var(--space-6);width:min(100% - 2 * var(--page-gutter), var(--page-max));padding:var(--space-4) 0;margin:0 auto;display:flex}.brand-link{align-items:center;gap:var(--space-3);color:var(--text-heading);border:0;text-decoration:none;display:inline-flex}.brand-link img{width:132px;height:auto;display:block}.site-nav{align-items:center;gap:var(--space-5);font-family:var(--font-display);font-size:.92rem;display:flex}.site-nav a{color:var(--text-muted);border:0}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--text-heading)}.section{width:min(100% - 2 * var(--page-gutter), var(--page-max));padding:var(--space-24) 0;margin:0 auto}.section--compact{padding:var(--space-16) 0}.eyebrow{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted);font-weight:600}.button{align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);min-height:44px;padding:13px var(--space-6);font-family:var(--font-body);font-weight:var(--weight-body-strong);font-size:var(--text-body-sm);letter-spacing:.01em;color:var(--action-primary-text);background:var(--action-primary);box-shadow:none;cursor:pointer;transition:var(--transition-ui), transform var(--dur-fast) var(--ease-standard);border:1px solid #0000;justify-content:center;line-height:1;text-decoration:none;display:inline-flex}.button:hover{color:var(--action-primary-text);background:var(--action-primary-hover);border-color:#0000}.button--secondary{color:var(--text-heading);border-color:var(--action-secondary-border);background:0 0}.button--secondary:hover{color:var(--text-heading);background:var(--action-secondary-hover);border-color:var(--text-muted)}.button:active{transform:translateY(1px)}.button:focus-visible{box-shadow:var(--shadow-focus)}.button:disabled{opacity:.38;pointer-events:none;transform:none}.button svg{flex:none;width:15px;height:15px}.card-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.card{gap:var(--space-4);min-height:100%;padding:var(--pad-card);border-radius:var(--radius-card);color:var(--text-body);background:var(--surface-card);box-shadow:var(--lift-1);flex-direction:column;display:flex}.card h2,.card h3{font-size:var(--text-h3)}.card p{max-width:62ch}.tag-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.tag{border-radius:var(--radius-pill);padding:2px var(--space-3);color:var(--text-muted);background:color-mix(in srgb, var(--ink-900) 5.5%, transparent);font-size:var(--text-caption);align-items:center;display:inline-flex}.content-list{gap:var(--space-4);margin-top:var(--space-8);display:grid}.content-list a{color:inherit;border:0}.prose{max-width:var(--measure-prose)}.prose>*+*{margin-top:var(--space-5)}.prose h1{font-size:clamp(2.4rem, 6vw, var(--text-display));line-height:var(--leading-tight)}.prose h2{margin-top:var(--space-12);font-size:var(--text-h2)}.prose p,.prose li{font-size:var(--text-body-md);line-height:var(--leading-body)}.article-head{width:min(100% - 2 * var(--page-gutter), var(--page-max));padding:var(--space-20) 0 var(--space-12);margin:0 auto}.article-body{width:min(100% - 2 * var(--page-gutter), var(--measure-prose));padding-bottom:var(--space-24);margin:0 auto}@media (width<=820px){.site-header__inner{align-items:flex-start;gap:var(--space-3);flex-direction:column}.site-nav{width:100%;padding-bottom:var(--space-1);overflow-x:auto}.card-grid{grid-template-columns:1fr}}}@layer rwc.prose;@font-face{font-family:Raleway;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/fonts/raleway-latin.woff2)format("woff2")}@font-face{font-family:Open Sans;font-style:normal;font-weight:300 600;font-display:swap;src:url(/assets/fonts/open-sans-latin.woff2)format("woff2")}

@layer rwc.reset, rwc.tokens, rwc.base, stylex.priority1;

@layer stylex.priority2 {
  .x10a8y8t {
    inset: 0;
  }
}

@layer stylex.priority3 {
  .xb3r6kr {
    overflow: hidden;
  }

  .x1rea2x4 {
    overflow: visible;
  }
}

@layer stylex.priority4 {
  .x1ubysej {
    animation-duration: 30s;
  }

  .xa4qsjk {
    animation-iteration-count: infinite;
  }

  .x1jefvga {
    animation-name: x1qhn1ik-B;
  }

  .xaw986m {
    animation-name: xbchxdj-B;
  }

  .xo2ovi0 {
    animation-name: xvt784y-B;
  }

  .x5kwdq1 {
    animation-play-state: var(--scene-play-state, running);
  }

  .x4hg4is {
    animation-timing-function: ease-in-out;
  }

  .x1esw782 {
    animation-timing-function: linear;
  }

  .x1w3jsh0 {
    background-repeat: repeat-x;
  }

  .x1qj836p {
    background-size: 50% 100%;
  }

  .x1lliihq {
    display: block;
  }

  .xbh8q5q {
    fill: none;
  }

  .xg9d6ml {
    fill: var(--surface-card);
  }

  .xrdbm4y {
    -webkit-mask-image: linear-gradient(#0000, #000 26% 64%, #0000);
    mask-image: linear-gradient(#0000, #000 26% 64%, #0000);
  }

  .x3onkmb {
    opacity: .35;
  }

  .x1ks1olk {
    opacity: .7;
  }

  .xg01cxk {
    opacity: 0;
  }

  .xwybcar {
    opacity: calc(1 - var(--scene-clear, 0));
  }

  .x1wqixrd {
    opacity: var(--scene-detail-opacity, 1);
  }

  .x47corl {
    pointer-events: none;
  }

  .x10l6tqk {
    position: absolute;
  }

  .xnea33w {
    stroke-dasharray: .06 1;
  }

  .x1owpc8m {
    stroke-linecap: round;
  }

  .x1r6sdyr {
    stroke-width: 1.25px;
  }

  .x1k315e8 {
    stroke-width: 1.4px;
  }

  .xvlca1e {
    stroke-width: 2px;
  }

  .xqjr0vm {
    stroke-width: 3px;
  }

  .x157ipaw {
    stroke: var(--baltic-sea);
  }

  .x13dc8z6 {
    stroke: var(--text-muted);
  }

  .x13efnbd {
    vector-effect: non-scaling-stroke;
  }

  @media (prefers-reduced-motion: reduce) {
    .x1aquc0h.x1aquc0h {
      animation-name: none;
    }
  }

  @media (width <= 1099px) {
    .x9e5oc1.x9e5oc1 {
      display: none;
    }
  }

  @media (width <= 719px) {
    .xr4thkj.xr4thkj {
      display: none;
    }
  }
}

@layer stylex.priority5 {
  .x5yr21d {
    height: 100%;
  }

  .xt7dq6l {
    height: auto;
  }

  .xf0d13v {
    left: -12%;
  }

  .xh8yej3 {
    width: 100%;
  }

  .x75ztot {
    width: 200%;
  }
}

@keyframes x1qhn1ik-B {
  0%, 100% {
    opacity: .2;
  }

  50% {
    opacity: .6;
  }
}

@keyframes xbchxdj-B {
  0%, 10% {
    stroke-dashoffset: .1px;
    opacity: 0;
  }

  18% {
    opacity: .8;
  }

  80% {
    opacity: .8;
  }

  95%, 100% {
    stroke-dashoffset: -1px;
    opacity: 0;
  }
}

@keyframes xvt784y-B {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-50%, 0, 0);
  }
}
