@font-face{font-stretch:75% 100%;font-family:instrumentSans;src:url(../media/instrument_sans_latin_variable-s.p.09r36lua6-1z2.woff2)format("woff2");font-display:swap;font-weight:400 700;font-style:normal}@font-face{font-family:instrumentSans Fallback;src:local(Arial);ascent-override:93.97%;descent-override:24.22%;line-gap-override:0.0%;size-adjust:103.22%}.UOHzSW_className{font-family:instrumentSans,instrumentSans Fallback}.UOHzSW_variable{--font-sans:"instrumentSans", "instrumentSans Fallback"}
@font-face{font-family:plexMono;src:url(../media/ibm_plex_mono_latin_500_normal-s.p.11q3guvgd1r20.woff2)format("woff2");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:plexMono Fallback;src:local(Arial);ascent-override:77.95%;descent-override:20.91%;line-gap-override:0.0%;size-adjust:131.49%}.LuQX5q_className{font-family:plexMono,plexMono Fallback}.LuQX5q_variable{--font-mono:"plexMono", "plexMono Fallback"}
:root{--paper:#f6f4f8;--sheet:#fff;--ink:#16123d;--ink-2:#56526e;--rule:#dcd8e6;--grid:#ece9f3;--dot:#8b45d9;--dot-2:#f2955a;--soft:#e8dafb;--face-l:#ece9f3;--face-r:#dcd8e6;--deep:#1b1660;--deep-2:#2c0846;--deep-3:#0c318f;--glow-1:#a055d8;--glow-2:#fcb075;--glow-3:#d484a6;--on-deep:#f8f5ff;--on-deep-2:#d8c7f4;--deep-accent:#fcb075;--deep-rule:#4a3f8f;--on-ink:#f6f4f8;--btn-light:#f8f5ff;--btn-light-ink:#16123d;--err:#b4234a;--sans:var(--font-sans),"Helvetica Neue",Arial,sans-serif;--mono:var(--font-mono),ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;--ease:cubic-bezier(.22,1,.36,1);--gutter:clamp(16px,4vw,48px)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#0c0a1f;--sheet:#16132e;--ink:#f2effa;--ink-2:#b2acc9;--rule:#2a2646;--grid:#1b1834;--dot:#b98af2;--dot-2:#fcb075;--soft:#3a2a66;--face-l:#1e1a3a;--face-r:#28234a;--deep:#120e48;--deep-2:#220637;--deep-3:#0a2672;--glow-1:#8443bd;--glow-2:#e8975f;--glow-3:#b36a8e;--on-deep:#f8f5ff;--on-deep-2:#d8c7f4;--deep-accent:#fcb075;--deep-rule:#3e3580;--on-ink:#0c0a1f;--btn-light:#f8f5ff;--btn-light-ink:#16123d;--err:#ff8ba0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#0c0a1f;--sheet:#16132e;--ink:#f2effa;--ink-2:#b2acc9;--rule:#2a2646;--grid:#1b1834;--dot:#b98af2;--dot-2:#fcb075;--soft:#3a2a66;--face-l:#1e1a3a;--face-r:#28234a;--deep:#120e48;--deep-2:#220637;--deep-3:#0a2672;--glow-1:#8443bd;--glow-2:#e8975f;--glow-3:#b36a8e;--on-deep:#f8f5ff;--on-deep-2:#d8c7f4;--deep-accent:#fcb075;--deep-rule:#3e3580;--on-ink:#0c0a1f;--btn-light:#f8f5ff;--btn-light-ink:#16123d;--err:#ff8ba0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--sans);letter-spacing:-.005em;-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.6;transition:background-color .3s,color .3s}body:has(.hero):before{content:"";height:env(safe-area-inset-top,0px);z-index:60;background:var(--deep);position:fixed;inset:0 0 auto}a{color:inherit}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--dot);outline-offset:3px;border-radius:4px}h1,h2,h3{text-wrap:balance;margin:0;font-weight:600}p,figure,ol,ul,dl,dd{margin:0}ol,ul{padding:0;list-style:none}section[id],.service{scroll-margin-top:96px}.wrap{max-width:1320px;padding-left:max(var(--gutter),env(safe-area-inset-left,0px));padding-right:max(var(--gutter),env(safe-area-inset-right,0px));margin-inline:auto}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;overflow:hidden;position:absolute!important}.pip{background:linear-gradient(135deg,var(--dot),var(--dot-2));border-radius:50%;flex:none;width:.5em;height:.5em;display:inline-block}.small{color:var(--ink-2);font-size:14px;font-weight:500;line-height:1.4}.num{font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}h1{letter-spacing:-.04em;font-size:clamp(42px,6.2vw,92px);font-stretch:88%;line-height:.98}h2{letter-spacing:-.035em;font-size:clamp(34px,4.4vw,62px);font-stretch:90%;line-height:1.02}h3{letter-spacing:-.02em;font-size:clamp(20px,1.6vw,23px);line-height:1.25}.sel{--sel:var(--dot);white-space:nowrap;padding-inline:.04em;position:relative}.sel:before{content:"";border:1.5px solid var(--sel);pointer-events:none;position:absolute;inset:.2em -.07em .17em}.sel:after{content:"";pointer-events:none;background:linear-gradient(var(--sel),var(--sel)) left top/8px 8px no-repeat, linear-gradient(var(--sel),var(--sel)) right top/8px 8px no-repeat, linear-gradient(var(--sel),var(--sel)) left bottom/8px 8px no-repeat, linear-gradient(var(--sel),var(--sel)) right bottom/8px 8px no-repeat;position:absolute;inset:calc(.2em - 4px) calc(-.07em - 4px) calc(.17em - 4px)}.btn{border:1px solid var(--ink);min-height:50px;color:var(--ink);cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s var(--ease);background:0 0;border-radius:12px;align-items:center;gap:10px;padding:0 22px;font-size:16px;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{background:var(--ink);color:var(--on-ink)}.btn-ink{background:linear-gradient(135deg,var(--ink) 30%,color-mix(in srgb,var(--ink) 70%,var(--dot)));color:var(--on-ink);border-color:#0000}.btn-ink:hover{transform:translateY(-1px)}.btn .pip{width:8px;height:8px}.btn-light{background:var(--btn-light);border-color:var(--btn-light);color:var(--btn-light-ink);padding-right:8px}.btn-light:hover{background:var(--btn-light);color:var(--btn-light-ink);transform:translateY(-1px)}.btn-light .arr{background:var(--btn-light-ink);width:34px;height:34px;color:var(--btn-light);border-radius:8px;place-items:center;display:inline-grid}.btn-light .arr svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px;transition:transform .3s var(--ease)}.btn-light:hover .arr svg{transform:translate(3px)}.btn,.icon-btn,.mailrow button{isolation:isolate;position:relative;overflow:hidden}.icon-btn,.mailrow button{transition:transform .2s var(--ease),background-color .25s ease,border-color .25s ease,color .25s ease}.btn:active,.icon-btn:active,.mailrow button:active{transform:scale(.96)}.ripple{pointer-events:none;opacity:.22;animation:ripple .65s var(--ease) forwards;z-index:-1;background:currentColor;border-radius:50%;position:absolute;transform:scale(0)}@keyframes ripple{to{opacity:0;transform:scale(1)}}.text-link{min-height:50px;color:var(--on-deep);align-items:center;gap:8px;font-weight:500;text-decoration:none;display:inline-flex}.text-link span{transition:background-size .3s var(--ease);background:linear-gradient(currentColor,currentColor) 0 100%/100% 1.5px no-repeat;padding-bottom:3px}.text-link:hover span,.text-link:focus-visible span{background-image:linear-gradient(90deg,var(--on-deep-2),var(--deep-accent));background-size:100% 2.5px}.bar{left:0;right:0;top:calc(env(safe-area-inset-top,0px) + 12px);z-index:50;position:fixed}.pill{height:62px;color:var(--ink);background:color-mix(in srgb,var(--sheet) 64%,transparent);-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);box-shadow:0 12px 32px -18px color-mix(in srgb,var(--ink) 45%,transparent);border:0;border-radius:16px;align-items:center;gap:18px;padding:0 10px 0 20px;transition:background-color .2s,color .2s,box-shadow .2s;display:flex}.bar.on-dark{--dot:var(--deep-accent)}.bar.on-dark .pill{background:color-mix(in srgb,var(--deep) 58%,transparent);color:var(--on-deep);box-shadow:0 12px 32px -20px color-mix(in srgb,var(--deep) 80%,transparent)}.bar.on-dark .brand{color:var(--on-deep)}.bar.on-dark .icon-btn{border-color:color-mix(in srgb,var(--on-deep) 28%,transparent);color:var(--on-deep)}.bar.on-dark .btn-ink{background:var(--btn-light);color:var(--btn-light-ink)}.brand{color:var(--ink);flex:none;align-items:center;text-decoration:none;display:inline-flex}.brand svg{width:auto;height:22px;display:block}.links{isolation:isolate;gap:26px;margin-left:auto;display:flex;position:relative}.links .ind{background:color-mix(in srgb,currentColor 10%,transparent);opacity:0;pointer-events:none;z-index:-1;width:0;height:34px;transition:transform .5s var(--ease),width .5s var(--ease),opacity .3s ease;border-radius:9px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.links a{background:linear-gradient(90deg,var(--dot),var(--dot-2)) left bottom/0 2px no-repeat;transition:background-size .3s var(--ease);padding-bottom:3px;font-size:15px;font-weight:500;text-decoration:none}.links a:hover{background-size:100% 2px}.tools{align-items:center;gap:8px;display:flex}.icon-btn{border:1px solid var(--rule);cursor:pointer;width:42px;height:42px;color:var(--ink);background:0 0;border-radius:10px;place-items:center;padding:0;display:inline-grid}.icon-btn svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.pill .btn{border-radius:10px;min-height:42px;padding:0 16px;font-size:15px}.menu-btn,:root .i-sun{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .i-sun{display:block}:root:not([data-theme=light]) .i-moon{display:none}}:root[data-theme=dark] .i-sun{display:block}:root[data-theme=dark] .i-moon{display:none}@media (max-width:1020px){.links,.pill .btn{display:none}.menu-btn{display:inline-grid}.tools{margin-left:auto}}@media (max-width:420px){.pill{padding-left:16px}}.mobile-menu{z-index:70;background:color-mix(in srgb,var(--paper) 80%,transparent);-webkit-backdrop-filter:blur(24px)saturate(150%);backdrop-filter:blur(24px)saturate(150%);padding:calc(env(safe-area-inset-top,0px) + 100px) max(24px,calc(env(safe-area-inset-right,0px) + 16px)) calc(env(safe-area-inset-bottom,0px) + 32px) max(24px,calc(env(safe-area-inset-left,0px) + 16px));flex-direction:column;gap:22px;display:flex;position:fixed;inset:0}.mobile-menu nav{flex-direction:column;gap:18px;display:flex}.mobile-menu a.big{letter-spacing:-.04em;font-size:40px;font-weight:600;font-stretch:90%;line-height:1;text-decoration:none}.mobile-menu .btn{align-self:flex-start}.menu-close{top:calc(env(safe-area-inset-top,0px) + 22px);right:max(26px,calc(env(safe-area-inset-right,0px) + 26px));position:absolute}.mobile-menu{opacity:0;transition:opacity .4s}.mobile-menu.open{opacity:1}.mobile-menu a.big{opacity:0;transition:transform .7s var(--ease),opacity .45s ease;transition-delay:calc(var(--i,0) * 60ms + 80ms);transform:translateY(32px)}.mobile-menu.open a.big{opacity:1;transform:none}.mobile-menu>.btn{opacity:0;transition:transform .7s var(--ease) .42s,opacity .45s ease .42s;transform:translateY(18px)}.mobile-menu.open>.btn{opacity:1;transform:none}.mobile-menu .menu-close{opacity:0;transition:transform .55s var(--ease) .1s,opacity .3s ease .1s;transform:rotate(-90deg)scale(.6)}.mobile-menu.open .menu-close{opacity:1;transform:none}.hero{isolation:isolate;background:linear-gradient(115deg,var(--deep-3) 0%,var(--deep) 42%,var(--deep-2) 100%);color:var(--on-deep);padding-block:calc(env(safe-area-inset-top,0px) + 132px) clamp(64px,8vw,112px);position:relative;overflow:hidden}.hero .sel{--sel:var(--deep-accent)}.hero:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(40% 46% at 72% 18%,color-mix(in srgb,var(--glow-1) 70%,transparent),transparent 70%), radial-gradient(34% 40% at 94% 92%,color-mix(in srgb,var(--glow-2) 55%,transparent),transparent 70%), radial-gradient(30% 36% at 70% 72%,color-mix(in srgb,var(--glow-3) 30%,transparent),transparent 70%), radial-gradient(34% 50% at 0% 45%,color-mix(in srgb,var(--deep-3) 80%,transparent),transparent 70%);animation:22s ease-in-out infinite alternate drift;position:absolute;inset:-15%}@keyframes drift{to{transform:translate(-5%,4%)scale(1.06)}}.hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(36px,5vw,72px);display:grid}.hero-text{flex-direction:column;gap:28px;min-width:0;display:flex}.kicker{color:var(--on-deep-2);align-items:center;gap:10px;font-size:15px;font-weight:500;display:flex}.kicker .pip{background:linear-gradient(135deg,var(--on-deep-2),var(--deep-accent))}.lead{max-width:50ch;font-size:clamp(18px,1.45vw,21px);line-height:1.5}.actions{flex-wrap:wrap;align-items:center;gap:12px 24px;display:flex}.where{background:linear-gradient(90deg,var(--deep-accent),color-mix(in srgb,var(--on-deep) 25%,transparent) 40%,transparent) top left/100% 1px no-repeat;color:var(--on-deep-2);flex-wrap:wrap;align-items:center;gap:6px 14px;padding-top:22px;font-size:15px;display:flex}.where svg{fill:none;width:18px;height:18px;stroke:var(--deep-accent);stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none}.where strong{color:var(--on-deep);font-weight:500}.where .sep{background:var(--deep-rule);border-radius:50%;width:4px;height:4px}@media (max-width:520px){.where .sep:last-of-type,#where-time{display:none}}.drawing{background-color:color-mix(in srgb,var(--sheet) 84%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid color-mix(in srgb,var(--on-deep) 35%,transparent);box-shadow:0 30px 60px -30px color-mix(in srgb,var(--deep) 85%,transparent);color:var(--ink);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-position:-1px -1px;background-size:20px 20px;border-radius:18px;min-width:0;overflow:hidden;container:drawing/inline-size}.drawing svg{width:100%;height:auto;display:block}@media (max-width:900px){.hero-grid{grid-template-columns:1fr}.drawing{max-width:560px}}#stack{--spread:0}#stack .t{font-family:var(--mono);letter-spacing:.06em;fill:var(--ink);font-size:12px;font-weight:500}#stack .t2{font-family:var(--mono);fill:var(--ink-2);letter-spacing:.07em;font-size:11px;font-weight:500}#stack .v-compact .t{font-size:19px}#stack .v-compact .t2{font-size:17px}#stack .v-compact{display:none}@container drawing (max-width:479.98px){#stack .v-wide{display:none}#stack .v-compact{display:inline}}#stack .lead-line{stroke:var(--ink);stroke-width:1px;fill:none}#stack .top{fill:var(--sheet);stroke:var(--ink);stroke-width:1.4px;stroke-linejoin:round;transition:fill .25s}#stack .left{fill:var(--face-l);stroke:var(--ink);stroke-width:1.4px;stroke-linejoin:round}#stack .right{fill:var(--face-r);stroke:var(--ink);stroke-width:1.4px;stroke-linejoin:round}#stack .spread{transform:translateY(calc(var(--spread) * var(--i) * -18px))}#stack .lift{transition:transform .35s var(--ease)}#stack .laag a{cursor:pointer;text-decoration:none}#stack .laag:hover .lift,#stack .laag:focus-within .lift{transform:translateY(-10px)}#stack .laag:hover .top,#stack .laag:focus-within .top{fill:var(--soft)}#stack .laag:hover .t,#stack .laag:focus-within .t{text-decoration:underline}#stack .person{fill:url(#g-dot)}#stack .shadow{fill:var(--ink);opacity:.14}#stack .node{fill:var(--ink)}#stack .in{animation:assemble 1s var(--ease) both;animation-delay:calc(var(--i) * 90ms + .12s)}#stack .drop{animation:land .8s var(--ease) both;animation-delay:.75s}@keyframes assemble{0%{transform:translateY(calc(var(--i) * 62px))}to{transform:none}}@keyframes land{0%{transform:translateY(-70px)}70%{transform:translateY(3px)}to{transform:none}}.titleblock{border-top:1px solid var(--rule);background:color-mix(in srgb,var(--sheet) 70%,transparent);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.titleblock div{border-right:1px solid var(--rule);flex-direction:column;gap:2px;min-width:0;padding:11px 14px;display:flex}.titleblock div:nth-child(4n){border-right:0}.titleblock .k{color:var(--ink-2);font-size:12.5px;font-weight:500}.titleblock .v{font-size:14px;line-height:1.3}.titleblock .v.status{align-items:center;gap:7px;display:flex}@media (max-width:560px){.titleblock{grid-template-columns:repeat(2,minmax(0,1fr))}.titleblock div:nth-child(2n){border-right:0}.titleblock div:nth-child(-n+2){border-bottom:1px solid var(--rule)}}.sheet{padding-block:clamp(64px,9vw,128px)}.sheet-head{background:linear-gradient(90deg,var(--dot),var(--dot-2) 14%,var(--ink) 32%,var(--ink) 62%,transparent) top left/100% 1.5px no-repeat;align-items:baseline;gap:14px;margin-bottom:clamp(32px,5vw,64px);padding-top:14px;font-size:15px;font-weight:500;display:flex}.sheet-head .no{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap}.sheet-head .hint{color:var(--ink-2);text-align:right;margin-left:auto;font-weight:400}@media (max-width:640px){.sheet-head .hint{display:none}}.sec-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:24px 48px;margin-bottom:clamp(36px,5vw,64px);display:grid}.sec-top p{color:var(--ink-2);max-width:46ch;font-size:18px}@media (max-width:820px){.sec-top{grid-template-columns:1fr}}.services{border-bottom:1px solid var(--rule)}.service{border-top:1px solid var(--rule);background:linear-gradient(90deg,color-mix(in srgb,var(--dot) 12%,transparent),color-mix(in srgb,var(--dot-2) 9%,transparent) 40%,transparent 75%) left/0% 100% no-repeat;transition:background-size .5s var(--ease);grid-template-columns:64px minmax(0,1fr) minmax(0,1.25fr) minmax(0,.85fr);gap:20px 36px;padding-block:30px;display:grid}.service:hover{background-size:100% 100%}.service .ico{width:56px;height:56px}.service .ico .p{fill:var(--sheet);stroke:var(--ink);stroke-width:1.1px}.service .ico .p.on{fill:url(#g-dot)}.service .ico g{transition:transform .3s var(--ease)}.service:hover .ico g.on-g{transform:translateY(-3px)}.service .head{flex-direction:column;gap:6px;min-width:0;display:flex}.service .one{color:var(--ink-2);font-size:17px}.service .body{min-width:0;max-width:52ch}.service .meta{flex-direction:column;gap:14px;min-width:0;display:flex}.service .meta .small{margin-bottom:6px;font-size:13px;display:block}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--rule);background:var(--sheet);border-radius:8px;padding:4px 10px;font-size:14px;line-height:1.3}@media (max-width:980px){.service{grid-template-columns:56px minmax(0,1fr)}.service .body,.service .meta{grid-column:2}}@media (max-width:480px){.service{grid-template-columns:1fr}.service .body,.service .meta{grid-column:1}}.deep-card{background:radial-gradient(60% 80% at 100% 0%,color-mix(in srgb,var(--glow-1) 55%,transparent),transparent 70%),radial-gradient(45% 60% at 100% 100%,color-mix(in srgb,var(--glow-2) 30%,transparent),transparent 70%),radial-gradient(45% 70% at 0% 100%,color-mix(in srgb,var(--deep-3) 70%,transparent),transparent 70%),linear-gradient(135deg,var(--deep),var(--deep-2));color:var(--on-deep);border-radius:24px;padding:clamp(24px,5vw,72px)}.deep-card .sheet-head{background-image:linear-gradient(90deg,var(--on-deep-2),var(--deep-accent) 14%,var(--on-deep) 32%,var(--on-deep) 62%,transparent)}.deep-card .sheet-head .no{color:var(--on-deep-2)}.name-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,5vw,80px);display:grid}.name-text{flex-direction:column;gap:22px;display:flex}.name-text .lbl{color:var(--on-deep-2);font-size:15px;font-weight:500}.name-text p.body{max-width:48ch;font-size:19px;line-height:1.55}.name-text h2 .plus{color:var(--deep-accent)}.construct{border:1px solid color-mix(in srgb,var(--on-deep) 22%,transparent);background-color:color-mix(in srgb,var(--on-deep) 5%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-image:linear-gradient(color-mix(in srgb,var(--on-deep) 8%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--on-deep) 8%,transparent) 1px,transparent 1px);background-position:-1px -1px;background-size:20px 20px;border-radius:16px;overflow:hidden;container:construct/inline-size}.construct svg{width:100%;height:auto;display:block}.construct .c-compact{display:none}.construct .e{fill:var(--on-deep)}.construct .d{fill:url(#g-dot)}.construct .ln{stroke:var(--on-deep-2);stroke-width:1px;fill:none}.construct .ln.dash{stroke-dasharray:3 4}.construct .k{font-family:var(--mono);letter-spacing:.08em;fill:var(--on-deep-2);font-size:12.5px;font-weight:500}.construct .v{font-family:var(--sans);fill:var(--on-deep);font-size:17px}.legend{gap:10px;margin:0;padding:4px 18px 16px;list-style:none;display:none}.legend li{grid-template-columns:auto 1fr;align-items:baseline;gap:2px 12px;display:grid}.legend b{color:var(--on-deep-2);font-size:14px;font-weight:500}.legend span{color:var(--on-deep)}@container construct (max-width:479.98px){.construct .c-wide{display:none}.construct .c-compact{display:block}.legend{display:grid}}.principles-head{margin-top:clamp(56px,7vw,104px);margin-bottom:28px}.principles{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.principle{border-top:1px solid var(--deep-rule);flex-direction:column;gap:12px;min-width:0;padding:24px 28px 4px 0;display:flex}.principle+.principle{border-left:1px solid var(--deep-rule);padding-left:28px}.principle .mark{background:var(--on-deep);border-radius:9px;width:30px;height:9px;margin-block:1.5px}.principle .mark.dot{background:var(--deep-accent);width:12px;height:12px;margin-block:0}.principle p{color:var(--on-deep-2)}@media (max-width:980px){.name-grid{grid-template-columns:1fr}.principles{grid-template-columns:repeat(2,minmax(0,1fr))}.principle:nth-child(3){border-left:0;padding-left:0}}@media (max-width:560px){.principles{grid-template-columns:1fr}.principle,.principle+.principle{border-left:0;padding-left:0}}.steps{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.step{background:linear-gradient(90deg,var(--dot),var(--dot-2) 25%,var(--ink) 60%) top left/100% 1.5px no-repeat;flex-direction:column;gap:12px;min-width:0;padding:34px 28px 0 0;display:flex;position:relative}.step:before{content:"";background:var(--paper);border:1.5px solid var(--ink);border-radius:50%;width:12px;height:12px;position:absolute;top:-7px;left:0}.step:first-child:before{background:linear-gradient(135deg,var(--dot),var(--dot-2));border-color:#0000}.step:last-child:after{content:"";border-top:1.5px solid var(--ink);border-right:1.5px solid var(--ink);width:9px;height:9px;position:absolute;top:-6px;right:0;transform:rotate(45deg)}.step .no{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:14px;font-weight:500}.step p{color:var(--ink-2);max-width:34ch}@media (max-width:900px){.steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:44px}}@media (max-width:520px){.steps{grid-template-columns:1fr}.step{padding-right:0}}.about{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:clamp(32px,6vw,96px);display:grid}.portrait{max-width:380px;margin:14px}.portrait .frame{position:relative}.portrait img{aspect-ratio:1;object-fit:cover;filter:grayscale()contrast(1.05);border-radius:4px;width:100%;max-width:100%;display:block}.portrait .frame:before,.portrait .frame:after{content:"";pointer-events:none;width:26px;height:26px;position:absolute}.portrait .frame:before{border-top:1.5px solid var(--ink);border-left:1.5px solid var(--ink);top:-14px;left:-14px}.portrait .frame:after{border-bottom:1.5px solid var(--ink);border-right:1.5px solid var(--ink);bottom:-14px;right:-14px}.portrait figcaption{margin-top:26px}.about-text{flex-direction:column;gap:20px;min-width:0;display:flex}.about-text p{max-width:56ch;font-size:19px;line-height:1.55}.about-text p+p{color:var(--ink-2)}.specs{border-bottom:1px solid var(--rule);margin-top:16px}.specs div{border-top:1px solid var(--rule);grid-template-columns:minmax(140px,.8fr) minmax(0,1.6fr);gap:16px;padding-block:11px;display:grid}.specs dt{color:var(--ink-2);font-size:15px;font-weight:500}.specs dd{min-width:0;font-size:16px}@media (max-width:820px){.about{grid-template-columns:1fr}.portrait{max-width:300px}}@media (max-width:420px){.specs div{grid-template-columns:1fr;gap:2px}}.contact{isolation:isolate;position:relative}.contact:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(40% 55% at 14% 38%,color-mix(in srgb,var(--glow-1) 20%,transparent),transparent 70%),radial-gradient(34% 48% at 88% 80%,color-mix(in srgb,var(--glow-2) 26%,transparent),transparent 70%);position:absolute;inset:0}.contact h2{letter-spacing:-.045em;max-width:14ch;font-size:clamp(40px,5.6vw,84px);font-stretch:86%;line-height:1}.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:start;gap:40px 72px;display:grid}.contact-intro{flex-direction:column;gap:24px;min-width:0;display:flex}.contact-intro .intro{color:var(--ink-2);max-width:44ch;font-size:19px}.alt{border-top:1px solid var(--rule);flex-direction:column;gap:12px;max-width:460px;padding-top:20px;display:flex}.alt .actions{gap:10px}.mailrow.pop-in{animation:pop .45s var(--ease)}.form-card{background:color-mix(in srgb,var(--sheet) 72%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);min-width:0;box-shadow:0 24px 60px -36px color-mix(in srgb,var(--ink) 60%,transparent);border-radius:20px;flex-direction:column;gap:18px;padding:clamp(20px,3vw,32px);display:flex}.row2{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}@media (max-width:560px){.row2{grid-template-columns:1fr}}.field{border:0;flex-direction:column;gap:7px;min-width:0;margin:0;padding:0;display:flex}.field label,.field legend{color:var(--ink);font-size:14px;font-weight:500}.field legend{margin-bottom:9px;padding:0}.field .opt{color:var(--ink-2);font-weight:400}.field input,.field textarea{font:inherit;color:var(--ink);background:var(--sheet);border:1px solid var(--rule);border-radius:12px;width:100%;min-width:0;padding:12px 14px;font-size:16px;transition:border-color .2s,box-shadow .2s}.field textarea{resize:vertical;min-height:136px;line-height:1.5}.field input::placeholder,.field textarea::placeholder{color:var(--ink-2);opacity:.7}.field input:focus,.field textarea:focus{border-color:var(--dot);box-shadow:0 0 0 4px color-mix(in srgb,var(--dot) 18%,transparent);outline:none}.field [aria-invalid=true]{border-color:var(--err)}.err{color:var(--err);font-size:13.5px;line-height:1.4}.err:empty{display:none}.topic-list{flex-wrap:wrap;gap:8px;display:flex}.topic{display:inline-flex;position:relative}.topic input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.topic span{border:1px solid var(--rule);background:var(--sheet);height:36px;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s var(--ease);border-radius:999px;align-items:center;padding:0 14px;font-size:14px;display:inline-flex}.topic input:hover+span{border-color:var(--ink-2)}.topic input:checked+span{background:linear-gradient(135deg,var(--dot),var(--dot-2));color:var(--on-deep);border-color:#0000}.topic input:focus-visible+span{outline:2px solid var(--dot);outline-offset:2px}.topic input:active+span{transform:scale(.95)}.hp{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.form-foot{flex-wrap:wrap;align-items:center;gap:12px 18px;display:flex}.shield{align-items:center;gap:8px;max-width:34ch;font-weight:400;display:flex}.shield svg{fill:none;width:16px;height:16px;stroke:var(--dot);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none}.form-status{background:color-mix(in srgb,var(--dot) 11%,transparent);border-radius:12px;padding:14px 16px;font-size:15px;line-height:1.5}.form-status.show{animation:pop .45s var(--ease)}.mailrow{border:1px solid color-mix(in srgb,var(--rule) 80%,transparent);background:color-mix(in srgb,var(--sheet) 62%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;padding:9px 9px 9px 16px;display:flex}.mailrow .addr{-webkit-user-select:all;user-select:all;overflow-wrap:anywhere;flex:1;min-width:0;font-size:16px;font-weight:500}.mailrow button{border:1px solid var(--rule);background:var(--paper);cursor:pointer;border-radius:9px;height:36px;padding:0 14px;font-size:14px;font-weight:500}.mailrow button:hover{border-color:var(--ink)}@media (max-width:820px){.contact-grid{grid-template-columns:1fr}}.foot{background:linear-gradient(90deg,var(--dot),var(--dot-2) 14%,var(--ink) 32%,var(--ink) 62%,transparent) top left/100% 1.5px no-repeat,radial-gradient(60% 80% at 85% 100%,color-mix(in srgb,var(--glow-2) 18%,transparent),transparent 70%),radial-gradient(50% 70% at 10% 100%,color-mix(in srgb,var(--glow-1) 12%,transparent),transparent 70%);padding-block:clamp(40px,6vw,72px) calc(env(safe-area-inset-bottom,0px) + 28px)}.foot-logo{width:100%;height:auto;color:var(--ink);display:block}.foot-cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:clamp(40px,6vw,72px);display:grid}.foot-cols>div{overflow-wrap:anywhere;min-width:0}.foot-cols h3{letter-spacing:0;color:var(--ink-2);margin-bottom:12px;font-size:14px;font-weight:500}.foot-cols ul{flex-direction:column;gap:6px;display:flex}.foot-cols a{background:linear-gradient(color-mix(in srgb,currentColor 35%,transparent),color-mix(in srgb,currentColor 35%,transparent)) left bottom/100% 1px no-repeat;transition:background-size .3s var(--ease);padding-bottom:2px;text-decoration:none}.foot-cols a:hover,.foot-cols a:focus-visible{background-image:linear-gradient(90deg,var(--dot),var(--dot-2));background-size:100% 2px}.foot-line{border-top:1px solid var(--rule);color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:48px;padding-top:16px;font-size:14px;display:flex}@media (max-width:820px){.foot-cols{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:440px){.foot-cols{grid-template-columns:1fr}}.role{letter-spacing:-.03em;margin-top:-6px;font-size:clamp(24px,2.6vw,38px);font-weight:600;font-stretch:92%;line-height:1.15}.swap{vertical-align:bottom;justify-items:start;margin-bottom:-.12em;padding-bottom:.12em;display:inline-grid;overflow:hidden}.swap .w{white-space:nowrap;background:linear-gradient(90deg,var(--on-deep-2),var(--deep-accent));color:#0000;transition:transform .55s var(--ease) .2s,opacity .45s ease .2s;-webkit-background-clip:text;background-clip:text;grid-area:1/1}.swap .w:not(.on){opacity:0;transform:translateY(.55em)}.swap .w.out{opacity:0;transition-duration:.3s;transition-delay:0s;transform:translateY(-.55em)}.sheet-head.flash{animation:sweep 1s var(--ease)}@keyframes sweep{0%{background-size:0% 1.5px}to{background-size:100% 1.5px}}.service.flash{animation:wash 1.8s var(--ease)}@keyframes wash{0%{background-size:0% 100%}25%,70%{background-size:100% 100%}to{background-size:0% 100%}}.mailrow button.done{background:linear-gradient(135deg,var(--dot),var(--dot-2));color:var(--on-deep);animation:pop .45s var(--ease);border-color:#0000}@keyframes pop{0%{transform:scale(.88)}60%{transform:scale(1.07)}to{transform:none}}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}#theme.spin svg{animation:spin .6s var(--ease)}@keyframes spin{0%{opacity:0;transform:rotate(-140deg)scale(.4)}to{opacity:1;transform:none}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.service,.principle,.step,.specs div{animation:linear both rise;animation-timeline:view();animation-range:entry entry 38%}.service.flash{animation:wash 1.8s var(--ease);animation-timeline:auto}}}@keyframes rise{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.page{padding-top:calc(env(safe-area-inset-top,0px) + 124px)}.legal-head{flex-direction:column;gap:18px;max-width:64ch;margin-bottom:clamp(36px,5vw,64px);display:flex}.legal-head h1{font-size:clamp(40px,5.4vw,76px)}.legal-head .lead{color:var(--ink-2)}.stamp{color:var(--ink-2);align-items:center;gap:8px;font-size:14px;font-weight:500;display:inline-flex}.legal{grid-template-columns:minmax(0,1fr) minmax(0,360px);align-items:start;gap:clamp(32px,6vw,96px);display:grid}.legal-body{counter-reset:deel;min-width:0;max-width:68ch}.legal-body section{border-top:1px solid var(--rule);padding-block:26px 30px}.legal-body section:last-child{border-bottom:1px solid var(--rule)}.legal-body h2{letter-spacing:-.02em;align-items:baseline;gap:12px;margin-bottom:12px;font-size:clamp(22px,2vw,27px);font-stretch:94%;line-height:1.2;display:flex}.legal-body h2:before{counter-increment:deel;content:counter(deel,decimal-leading-zero);letter-spacing:0;color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:14px;font-weight:500;font-stretch:100%}.prose>*+*{margin-top:12px}.prose ul,.prose ol{flex-direction:column;gap:8px;display:flex}.prose ul li{padding-left:22px;position:relative}.prose ul li:before{content:"";background:linear-gradient(135deg,var(--dot),var(--dot-2));border-radius:50%;width:8px;height:8px;position:absolute;top:.6em;left:2px}.prose ol{padding-left:22px;list-style:decimal}.prose a{-webkit-text-decoration-color:var(--dot);text-decoration-color:var(--dot);text-underline-offset:.2em;text-decoration-thickness:1.5px}.prose a:hover{-webkit-text-decoration-color:var(--dot-2);text-decoration-color:var(--dot-2)}.prose strong{font-weight:600}.choice{background:color-mix(in srgb,var(--sheet) 72%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);min-width:0;box-shadow:0 24px 60px -36px color-mix(in srgb,var(--ink) 60%,transparent);border-radius:20px;flex-direction:column;gap:14px;padding:clamp(20px,2.4vw,28px);display:flex;position:sticky;top:104px}.choice h2{letter-spacing:-.02em;font-size:22px;font-stretch:94%;line-height:1.2}.choice>p{color:var(--ink-2);font-size:15.5px;line-height:1.5}.switch{cursor:pointer;border-top:1px solid var(--rule);align-items:center;gap:12px;padding-top:14px;font-weight:500;display:flex}.switch input{appearance:none;background:var(--rule);cursor:pointer;border-radius:999px;flex:none;width:46px;height:28px;margin:0;transition:background-color .25s;position:relative}.switch input:after{content:"";background:var(--sheet);width:22px;height:22px;transition:transform .35s var(--ease);border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch input:checked{background:linear-gradient(135deg,var(--dot),var(--dot-2))}.switch input:checked:after{transform:translate(18px)}.switch input:disabled{opacity:.5;cursor:not-allowed}.switch input:focus-visible{outline:2px solid var(--dot);outline-offset:3px}.switch:has(input:disabled){cursor:not-allowed;color:var(--ink-2)}.choice .state{color:var(--ink-2);font-size:14.5px;line-height:1.45}.choice .state.pop{animation:pop .45s var(--ease)}@media (max-width:900px){.legal{grid-template-columns:1fr}.choice{order:-1;position:static}}.notice{z-index:55;right:max(16px,calc(env(safe-area-inset-right,0px) + 16px));bottom:calc(env(safe-area-inset-bottom,0px) + 16px);background:color-mix(in srgb,var(--sheet) 80%,transparent);-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);width:min(430px,100vw - 32px);box-shadow:0 18px 48px -20px color-mix(in srgb,var(--ink) 55%,transparent);opacity:0;transition:opacity .4s ease,transform .55s var(--ease);border-radius:16px;flex-direction:column;gap:12px;padding:16px 16px 14px 18px;font-size:15px;line-height:1.45;display:flex;position:fixed;transform:translateY(18px)}.notice.open{opacity:1;transform:none}.notice p{align-items:baseline;gap:10px;display:flex}.notice p .pip{transform:translateY(-1px)}.notice .row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.notice .row a{color:var(--ink-2);text-underline-offset:.2em;-webkit-text-decoration-color:var(--dot);text-decoration-color:var(--dot);margin-right:auto;font-size:14.5px;font-weight:500}.notice .btn{border-radius:10px;min-height:38px;padding:0 14px;font-size:14.5px}.form-status.ok{background:color-mix(in srgb,var(--dot-2) 18%,transparent)}.form-status.fout{background:color-mix(in srgb,var(--err) 13%,transparent)}.form-note{color:var(--ink-2);font-size:13.5px;line-height:1.45}.form-note a{color:inherit;-webkit-text-decoration-color:var(--dot);text-decoration-color:var(--dot);text-underline-offset:.2em}.ts:empty{display:none}.btn[aria-busy=true]{opacity:.7;cursor:progress}.lost{flex-direction:column;align-items:flex-start;gap:22px;max-width:680px;min-height:52vh;display:flex}.lost h1{font-size:clamp(40px,5.4vw,76px)}.lost p{color:var(--ink-2);max-width:46ch;font-size:19px}.foot-line .foot-links{flex-wrap:wrap;gap:6px 18px;display:flex}.foot-line a{color:inherit;background:linear-gradient(color-mix(in srgb,currentColor 35%,transparent),color-mix(in srgb,currentColor 35%,transparent)) left bottom/100% 1px no-repeat;padding-bottom:2px;text-decoration:none}.foot-line a:hover,.foot-line a:focus-visible{background-image:linear-gradient(90deg,var(--dot),var(--dot-2));color:var(--ink);background-size:100% 2px}
