:root{--paper: #f5f5f6;--paper-raised: #ffffff;--ink: #101215;--ink-soft: #5c6068;--ink-faint: #8e939a;--hairline: rgba(16, 18, 21, .1);--hairline-strong: rgba(16, 18, 21, .18);--glass-radius: 26px;--glass-blur: 24px;--glass-edge: rgba(255, 255, 255, .92);--font-sans: "Onest", "IBM Plex Mono", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--container: 1180px;--gutter: clamp(1.25rem, 5vw, 3.5rem);--section: clamp(5.5rem, 11vh, 9rem);--ease: cubic-bezier(.22, .8, .28, 1);--ease-hover: cubic-bezier(.4, 0, .2, 1);--mx: 50%;--my: 0%}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/onest-var-v1.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plex-mono-400-v1.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/plex-mono-500-v1.woff2) format("woff2")}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:3rem;background:var(--paper)}body{min-height:100vh;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:1.0625rem;line-height:1.65;letter-spacing:-.006em;-webkit-font-smoothing:antialiased;overflow-x:clip}img,svg,canvas{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:6px}::selection{background:#1012151f}h1,h2,h3{font-weight:600;letter-spacing:-.032em;text-wrap:balance}.display{font-size:clamp(2.875rem,7.6vw,6rem);font-weight:640;line-height:1.02;letter-spacing:-.038em;color:var(--ink)}.h2{font-size:clamp(2rem,4.6vw,3.375rem);line-height:1.06}.h3{font-size:1.3125rem;line-height:1.35;letter-spacing:-.018em}.lede{font-size:clamp(1.1875rem,2.1vw,1.625rem);line-height:1.45;letter-spacing:-.016em;color:var(--ink-soft);text-wrap:pretty}p{text-wrap:pretty;max-width:66ch}.muted{color:var(--ink-soft)}.coord{font-family:var(--font-mono);font-size:.8125rem;letter-spacing:.04em;color:var(--ink-soft);font-variant-numeric:tabular-nums}.marker{display:inline-flex;align-items:baseline;gap:.5rem;font-size:.8125rem;font-weight:500;letter-spacing:.01em;color:var(--ink-faint);font-variant-numeric:tabular-nums}a{color:var(--ink);text-decoration-color:#10121552;text-decoration-thickness:1px;text-underline-offset:.22em;transition:color .2s var(--ease-hover),text-decoration-color .2s var(--ease-hover)}a:hover{color:#000;text-decoration-color:#101215d9}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:var(--section)}.section--tight{padding-block:calc(var(--section) * .6)}.stack{display:flex;flex-direction:column;gap:1.25rem;align-items:flex-start}.section-head{display:flex;flex-direction:column;gap:1rem;margin-bottom:3rem;max-width:46ch}.section-title{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:1.5rem}.prose{display:flex;flex-direction:column;gap:1rem;max-width:68ch}.rule{height:1px;border:0;background:linear-gradient(90deg,var(--hairline-strong),rgba(16,18,21,0))}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:absolute;top:.75rem;left:.75rem;z-index:100;padding:.75rem 1.25rem;border-radius:999px;background:var(--paper-raised);color:var(--ink);font-size:.875rem;font-weight:500;text-decoration:none;box-shadow:0 8px 24px -8px #10121559;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.glass{position:relative;isolation:isolate;border-radius:var(--glass-radius);background:linear-gradient(180deg,#ffffffbd,#ffffff85 55%,#fff9);box-shadow:inset 0 1px 0 var(--glass-edge),inset 0 -1px #1012150d,inset 1px 0 #ffffff80,inset -1px 0 #ffffff80,0 0 0 1px #1012150e,0 10px 24px -14px #10121547,0 34px 60px -32px #10121547}@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){.glass{background:linear-gradient(180deg,#fff9,#ffffff5c 55%,#ffffff75);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(160%);backdrop-filter:blur(var(--glass-blur)) saturate(160%)}}.glass:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;opacity:.85;background:radial-gradient(120% 90% at var(--mx) var(--my),rgba(255,255,255,.75) 0%,rgba(255,255,255,.12) 38%,rgba(255,255,255,0) 70%);transition:opacity .4s var(--ease-hover)}.btn{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:3.25rem;padding:0 1.75rem;border:0;border-radius:999px;color:var(--ink);font-size:1rem;font-weight:500;letter-spacing:-.012em;text-decoration:none;cursor:pointer;background:linear-gradient(180deg,#ffffffdb,#fff9);box-shadow:inset 0 1px #fffffff2,inset 0 -1px #10121512,0 0 0 1px #10121514,0 8px 16px -10px #10121547,0 22px 40px -26px #10121552;transition:transform .28s var(--ease),box-shadow .28s var(--ease-hover)}@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){.btn{background:linear-gradient(180deg,#ffffffa8,#ffffff61);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%)}}.btn:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:radial-gradient(130% 110% at var(--mx, 50%) var(--my, 0%),rgba(255,255,255,.95) 0%,rgba(255,255,255,.2) 42%,rgba(255,255,255,0) 74%);transition:opacity .32s var(--ease-hover)}.btn:hover{color:var(--ink);transform:translateY(-1px);box-shadow:inset 0 1px #fff,inset 0 -1px #10121514,0 0 0 1px #1012151f,0 12px 22px -10px #10121552,0 30px 54px -28px #10121566}.btn:active{transform:translateY(0) scale(.99)}.btn:disabled{cursor:progress;opacity:.7}.btn--primary{color:#fff;background:linear-gradient(180deg,#1c1f24f0,#0c0e11e0);box-shadow:inset 0 1px #ffffff42,inset 0 -1px #0006,0 0 0 1px #1012158c,0 10px 20px -10px #10121573,0 26px 46px -26px #10121580}@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){.btn--primary{background:linear-gradient(180deg,#1c1f24db,#0c0e11c7);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%)}}.btn--primary:before{background:radial-gradient(130% 110% at var(--mx, 50%) var(--my, 0%),rgba(255,255,255,.36) 0%,rgba(255,255,255,.07) 44%,rgba(255,255,255,0) 76%)}.btn--primary:hover{color:#fff;box-shadow:inset 0 1px #ffffff52,inset 0 -1px #0000006b,0 0 0 1px #1012159e,0 14px 24px -10px #10121580,0 34px 58px -28px #1012158c}.btn--small{min-height:2.5rem;padding:0 1.125rem;font-size:.9375rem}.btn__chev{width:.5rem;height:.75rem;flex:none;opacity:.55;transition:transform .26s var(--ease)}.btn:hover .btn__chev{transform:translate(2px)}.btn:hover .btn__chev--back{transform:translate(-2px)}.back{margin-bottom:1.75rem}.hero{position:relative;z-index:0;display:grid;place-items:center;min-height:min(100svh,60rem);padding-block:clamp(9rem,22vh,15rem) clamp(3rem,6vh,5rem);overflow:hidden;text-align:center}.hero:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(72% 58% at 50% 42%,#fff,#fff0 72%)}.hero__inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:1.5rem;max-width:52rem}.hero__mark{position:relative;z-index:1;display:grid;place-items:center}.hero__mark .rose{z-index:0}.hero__mark .display{position:relative;z-index:2}.hero__inner>.coord,.hero__inner>.lede,.hero__inner>.hero__actions{position:relative;z-index:2}.hero .coord{font-size:clamp(.9375rem,1.35vw,1.1875rem);letter-spacing:.05em;color:var(--ink-soft);font-variant-numeric:tabular-nums}.hero__wash{position:absolute;top:50%;left:50%;z-index:1;width:190%;height:720%;translate:-50% -50%;pointer-events:none;background:radial-gradient(46% 44% at 50% 44%,#fafafbfa,#fafafbf2 42%,#f8f8f9d1 60%,#f5f5f600 84%)}.hero__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:.75rem}.page-hero{position:relative;z-index:0;padding-block:clamp(4.5rem,10vh,7rem) 2rem}.page-hero:before{content:"";position:absolute;inset:-30% 0 -60%;z-index:0;pointer-events:none;background:radial-gradient(58% 46% at 68% 22%,#fff,#fff0 72%)}.page-hero .container{position:relative;z-index:2}.page-hero .marker{margin-bottom:.75rem}.page-hero .display{font-size:clamp(2.5rem,6vw,4.5rem);margin-bottom:1.25rem}.page-hero .lede{max-width:60ch}.rose{position:absolute;top:50%;left:50%;z-index:0;width:min(126vmin,60rem);aspect-ratio:1;translate:calc(-50% + var(--px, 0px)) calc(-50% + var(--py, 0px));pointer-events:none;will-change:transform}.rose svg{width:100%;height:100%;overflow:visible}.rose:after{content:"";position:absolute;inset:0;background:radial-gradient(42% 34% at 50% 50%,#f5f5f6f0,#f5f5f6b8 45%,#f5f5f600 72%)}.rose--hero{top:50%;width:min(92svh,56rem);opacity:.85}.rose--hero:after{background:radial-gradient(40% 26% at 50% 50%,#f5f5f6e6,#f5f5f6a8 46%,#f5f5f600 76%)}.rose--corner{top:-24%;left:calc(50% + min(34vw,30rem));right:auto;width:min(92vmin,46rem);translate:calc(-50% + var(--px, 0px)) var(--py, 0px);opacity:.9}.rose--corner:after{background:radial-gradient(58% 58% at 46% 46%,#f5f5f69e,#f5f5f647 52%,#f5f5f600 78%)}@media(max-width:760px){.rose--corner{top:-14%;left:calc(50% + 34vw);width:34rem;opacity:.7}}.rose__ring{fill:none;stroke:#10121557;stroke-width:1.1}.rose__ring--inner{stroke:#10121538}.rose__ring--hair{stroke:#10121529;stroke-dasharray:2 6}.rose__tick{fill:none;stroke:#1012156b;stroke-width:1}.rose__tick--minor{stroke:#10121538;stroke-width:.9}.rose__tick--medium{stroke-width:1.3}.rose__tick--major{stroke:#10121599;stroke-width:2}.rose__bearing{fill:#10121580;font-family:var(--font-mono);font-size:17px;letter-spacing:1.5px}.rose__rhumb{fill:none;stroke:#10121524;stroke-width:.9}.rose__facet--light{fill:url(#rose-light);stroke:#1012156b;stroke-width:.9;stroke-linejoin:round}.rose__facet--dark{fill:url(#rose-dark);stroke:#ffffff38;stroke-width:.6;stroke-linejoin:round}.rose__facet--north{fill:url(#rose-north);stroke:#ffffff4d;stroke-width:.8;stroke-linejoin:round}.rose__hub{fill:none;stroke:#10121566;stroke-width:1.2}.rose__hub--mid{stroke:#10121547}.rose__hub--pin{fill:var(--ink);stroke:none}.rose__bezel{transform-box:view-box;transform-origin:center}.cards{display:grid;gap:1rem}@media(min-width:860px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}.card{display:flex;flex-direction:column;gap:.625rem;padding:1.75rem;transition:transform .3s var(--ease),box-shadow .3s var(--ease-hover)}.card:hover{transform:translateY(-4px)}.card__label{font-size:.8125rem;font-weight:600;letter-spacing:.02em;color:var(--ink-soft)}.card p{color:var(--ink-soft);font-size:1rem;max-width:none}.principles{display:grid;gap:1rem;list-style:none;padding:0}@media(min-width:720px){.principles{grid-template-columns:repeat(2,minmax(0,1fr))}}.principles li{display:flex;flex-direction:column;gap:.5rem;padding:1.75rem}.principles__index{font-family:var(--font-mono);font-size:.75rem;color:var(--ink-faint)}.principles p{color:var(--ink-soft);font-size:1rem;max-width:none}.notice{padding:1.5rem 1.75rem;border-radius:20px;background:#ffffff8c;box-shadow:inset 0 1px #ffffffe6,0 0 0 1px #1012150d}.notice p{color:var(--ink-soft);font-size:.9375rem;line-height:1.7;max-width:76ch}.notice--spaced{margin-top:1.5rem}.callout{padding:clamp(1.5rem,3vw,2.25rem);border-radius:22px;background:#ffffff9e;box-shadow:inset 0 1px #fffffff2,0 0 0 1px #1012150f,0 20px 44px -30px #1012154d}.callout__lead{font-size:clamp(1.375rem,3vw,1.875rem);font-weight:600;letter-spacing:-.028em;line-height:1.2;margin-bottom:.75rem}.callout p+p{margin-top:.75rem}.panel{padding:clamp(1.5rem,3vw,2.5rem)}.data{width:100%;border-collapse:collapse;text-align:left}.data tr+tr{border-top:1px solid var(--hairline)}.data th,.data td{padding-block:.875rem;vertical-align:baseline;font-weight:400}.data th{width:34%;padding-right:1.5rem;color:var(--ink-soft);font-size:.9375rem}.data td{font-family:var(--font-mono);font-size:.9375rem;color:var(--ink);overflow-wrap:break-word}.data__note{display:block;margin-top:.25rem;font-family:var(--font-sans);font-size:.8125rem;color:var(--ink-faint)}@media(max-width:620px){.data th,.data td{display:block;width:auto;padding-right:0}.data th{padding-bottom:.125rem}.data td{padding-top:0}}.legal h2{font-size:clamp(1.375rem,2.4vw,1.75rem);line-height:1.2;margin-top:3rem;margin-bottom:.75rem}.legal p,.legal li{color:var(--ink-soft)}.legal p+p{margin-top:.75rem}.legal ul,.legal ol{padding-left:1.25rem;max-width:68ch}.legal li+li{margin-top:.375rem}.legal strong{color:var(--ink);font-weight:600}.legal-meta{font-family:var(--font-mono);font-size:.8125rem;letter-spacing:.04em;color:var(--ink-faint)}.form-shell{display:grid;gap:2.5rem;align-items:start}@media(min-width:960px){.form-shell{grid-template-columns:minmax(0,1fr) minmax(0,22rem);gap:4rem}}.form{display:flex;flex-direction:column;gap:1.5rem;max-width:40rem}.field{display:flex;flex-direction:column;gap:.5rem}.field>label{font-size:.9375rem;font-weight:500;color:var(--ink)}.field__optional{font-weight:400;color:var(--ink-faint)}.input,.select,.textarea{width:100%;min-height:3.25rem;padding:.875rem 1.125rem;border:0;border-radius:14px;background:#ffffffb8;color:var(--ink);font-size:1rem;line-height:1.5;box-shadow:inset 0 1px #ffffffe6,0 0 0 1px #10121521;transition:box-shadow .2s var(--ease-hover)}.textarea{min-height:11rem;resize:vertical}.select{appearance:none;padding-right:2.75rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%23101215' stroke-width='1.4' stroke-linecap='square'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1.125rem center;background-size:12px 8px;cursor:pointer}.input::placeholder,.textarea::placeholder{color:var(--ink-faint);opacity:1}.input:hover,.select:hover,.textarea:hover{box-shadow:inset 0 1px #fffffff2,0 0 0 1px #10121538}.input:focus,.select:focus,.textarea:focus{outline:none;background:#fff;box-shadow:inset 0 1px #fff,0 0 0 1px #1012158c,0 0 0 5px #10121514}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{box-shadow:inset 0 1px #ffffffe6,0 0 0 2px var(--ink)}.field__error{display:none;font-size:.875rem;font-weight:500;color:var(--ink)}.field__error.is-visible{display:flex;gap:.4rem;align-items:baseline}.field__error.is-visible:before{content:"!";display:inline-flex;align-items:center;justify-content:center;flex:none;width:1.125rem;height:1.125rem;border-radius:50%;background:var(--ink);color:#fff;font-size:.75rem;font-weight:700;transform:translateY(.1rem)}.field--consent{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.75rem;align-items:start}.field--consent .field__error{grid-column:1 / -1}.checkbox{width:1.25rem;height:1.25rem;margin:.2rem 0 0;accent-color:var(--ink);cursor:pointer}.field--consent label{font-size:.9375rem;font-weight:400;line-height:1.6;color:var(--ink-soft);cursor:pointer}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.btn--submit{min-width:12.5rem}.btn__icon{display:none;width:1.125rem;height:1.125rem}.btn.is-busy .btn__label,.btn.is-done .btn__label{visibility:hidden}.btn.is-busy .btn__spinner,.btn.is-done .btn__check{display:block;position:absolute;left:50%;top:50%;margin:-.5625rem 0 0 -.5625rem}.btn__spinner circle,.btn__spinner path{fill:none;stroke:currentColor;stroke-width:1.4}.btn.is-busy .btn__spinner{animation:spin .9s linear infinite}.btn__check path{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24}.btn.is-done .btn__check path{animation:check-draw .4s var(--ease) forwards}.form-status:empty{display:none}.form-status{margin-top:2.25rem;padding:1.5rem 1.75rem;border-radius:20px;background:#ffffffb3;box-shadow:inset 0 1px #fffffff2,0 0 0 1px #1012151a}.form-status p{color:var(--ink);max-width:60ch}.form.is-collapsing{overflow:hidden;transition:max-height .42s var(--ease),opacity .26s var(--ease-hover);max-height:0;opacity:0}.aside-card{padding:1.75rem}.aside-card dt{font-size:.8125rem;font-weight:500;color:var(--ink-faint)}.aside-card dd{margin:.25rem 0 1.25rem;font-family:var(--font-mono);font-size:.9375rem;line-height:1.5;color:var(--ink)}.aside-card dd:last-child{margin-bottom:0}.notfound{display:flex;flex-direction:column;align-items:center;gap:1.25rem;text-align:center;padding-block:clamp(7rem,18vh,12rem) var(--section)}.foot{margin-top:var(--section);padding-block:3rem 2rem;border-top:1px solid var(--hairline);background:linear-gradient(180deg,#fff0,#ffffffb3)}.foot__grid{display:grid;gap:2rem;font-size:.9375rem;color:var(--ink-soft)}@media(min-width:760px){.foot__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.foot h2{margin-bottom:.375rem;font-size:.8125rem;font-weight:600;color:var(--ink-faint);letter-spacing:0}.foot address{font-style:normal;line-height:1.7}.foot__links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.foot__bar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid var(--hairline);font-size:.8125rem;color:var(--ink-faint)}@media(prefers-reduced-motion:no-preference){.rose__bezel{will-change:transform;animation:bezel 300s linear infinite}.rose svg{animation:rose-in 1.6s var(--ease) both}.hero__inner>.coord,.hero__mark .display,.hero__inner>.lede,.hero__inner>.hero__actions{animation:settle .9s var(--ease) both}.hero__inner>.coord{animation-delay:.12s}.hero__mark .display{animation-delay:.24s}.hero__inner>.lede{animation-delay:.38s}.hero__inner>.hero__actions{animation-delay:.5s}@supports (animation-timeline: scroll()){.rose--hero{animation:rose-drift linear both;animation-timeline:scroll(root block);animation-range:0 90vh}.rose--corner{animation:rose-drift-corner linear both;animation-timeline:scroll(root block);animation-range:0 120vh}.rose__bezel-scroll{transform-box:view-box;transform-origin:center;animation:bezel-swing linear both;animation-timeline:scroll(root block)}}}@keyframes settle{0%{opacity:0;filter:blur(14px);transform:translateY(18px) scale(.988)}70%{filter:blur(0)}to{opacity:1;filter:blur(0);transform:none}}@keyframes rose-in{0%{opacity:0;transform:scale(1.08) rotate(-7deg)}to{opacity:1;transform:none}}@keyframes bezel{to{rotate:360deg}}@keyframes bezel-swing{to{rotate:82deg}}@keyframes rose-drift{to{transform:scale(1.14) rotate(6deg);opacity:.35}}@keyframes rose-drift-corner{to{transform:translateY(-6%) rotate(-5deg);opacity:.42}}@keyframes spin{to{rotate:360deg}}@keyframes check-draw{to{stroke-dashoffset:0}}@media(prefers-reduced-motion:no-preference){::view-transition-old(root){animation:vt-out .18s var(--ease-hover) both}::view-transition-new(root){animation:vt-in .36s var(--ease) both}}@keyframes vt-out{to{opacity:0}}@keyframes vt-in{0%{opacity:0;transform:translateY(10px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}@media print{.rose,.hero:before,.page-hero:before,.skip-link,.back,.form-shell aside,form{display:none!important}body{background:#fff;color:#000}.hero{min-height:0;padding-block:0 1rem}.glass,.notice,.callout,.form-status{background:none!important;box-shadow:none!important;border:1px solid #999!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.section{padding-block:12pt;break-inside:avoid}a{color:#000}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}
