.sound-toggle[data-astro-cid-bqc7nllt]{min-width:40px;min-height:40px;color:var(--muted);cursor:pointer;transition:color .2s, transform var(--tactile-settle-ms,.2s) var(--tactile-settle,ease);background:0 0;border:0;border-radius:3px;justify-content:center;align-items:center;gap:8px;padding:8px;font-size:14px;line-height:1;display:inline-flex}.sound-toggle--label[data-astro-cid-bqc7nllt]{padding-inline:12px}.sound-toggle[data-astro-cid-bqc7nllt]:hover,.sound-toggle[data-astro-cid-bqc7nllt][aria-pressed=true]{color:var(--teal-light)}.sound-toggle[data-astro-cid-bqc7nllt] svg[data-astro-cid-bqc7nllt]{flex:none;width:20px;height:20px}.sound-toggle[data-astro-cid-bqc7nllt] svg[data-astro-cid-bqc7nllt] path[data-astro-cid-bqc7nllt]{transition:opacity .2s, transform var(--tactile-snap-ms,.2s) var(--tactile-snap,ease);transform-box:fill-box;transform-origin:0}.sound-toggle[data-astro-cid-bqc7nllt][aria-pressed=false] .sound-toggle__waves[data-astro-cid-bqc7nllt]{opacity:0;transform:scaleX(.6)}.sound-toggle[data-astro-cid-bqc7nllt][aria-pressed=true] .sound-toggle__off[data-astro-cid-bqc7nllt]{opacity:0;transform:scale(.6)}@media (prefers-reduced-motion:reduce){.sound-toggle[data-astro-cid-bqc7nllt],.sound-toggle[data-astro-cid-bqc7nllt] svg[data-astro-cid-bqc7nllt] path[data-astro-cid-bqc7nllt]{transform:none!important}}.demo-nav{z-index:65;font-family:var(--display);letter-spacing:.04em;flex-direction:column-reverse;align-items:flex-end;gap:8px;display:flex;position:fixed;bottom:16px;right:16px}.demo-nav__toggle{min-height:32px;font:600 13px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);cursor:pointer;backdrop-filter:blur(18px);opacity:.72;background:#0a1114cc;border:1px dashed #ffffff40;border-radius:3px;align-items:center;gap:8px;padding:4px 12px;transition:opacity .2s,color .2s,border-color .2s;display:inline-flex}.demo-nav__toggle svg{width:10px;height:10px;transition:transform .2s}.demo-nav__toggle:hover,.demo-nav__toggle:focus-visible,.demo-nav[data-open=true] .demo-nav__toggle{opacity:1;color:var(--teal-light);border-color:#5fc4c980}.demo-nav__toggle:focus-visible{outline-offset:3px}.demo-nav[data-open=true] .demo-nav__toggle svg{transform:rotate(180deg)}.demo-nav__panel{border:1px solid var(--line);backdrop-filter:blur(18px);background:#142328f5;border-radius:3px;flex-direction:column;gap:2px;min-width:200px;margin:0;padding:8px;list-style:none;display:none;box-shadow:0 20px 40px #0008}.demo-nav[data-open=true] .demo-nav__panel{display:flex}.demo-nav__panel li{margin:0}.demo-nav__panel a{min-height:36px;color:var(--paper);border-radius:3px;align-items:center;padding:8px 12px 8px 16px;font-size:17px;font-weight:600;line-height:1.1;text-decoration:none;display:flex;position:relative}.demo-nav__sub a{color:var(--muted);padding-left:32px;font-weight:500}.demo-nav__panel a:hover{color:var(--teal-light);background:#ffffff0d}.demo-nav__panel a:focus-visible{outline-offset:0}.demo-nav__panel a[aria-current=page]{color:var(--teal-light)}.demo-nav__panel a[aria-current=page]:before{content:"";background:var(--teal-light);border-radius:2px;width:3px;position:absolute;top:8px;bottom:8px;left:4px}.demo-nav__sub a[aria-current=page]:before{left:20px}.demo-rail{z-index:65;backdrop-filter:blur(18px);overscroll-behavior-x:contain;background:#0a1114cc;border:1px dashed #ffffff40;border-radius:3px;max-width:min(100vw - 340px,900px);position:fixed;bottom:16px;left:50%;overflow-x:auto;transform:translate(-50%)}.demo-rail ul{white-space:nowrap;align-items:center;gap:2px;margin:0;padding:4px;list-style:none;display:flex}.demo-rail li{margin:0}.demo-rail a{min-height:32px;font:600 15px/1 var(--display);letter-spacing:.01em;color:var(--muted);border-radius:3px;align-items:center;padding:4px 12px;text-decoration:none;display:inline-flex}.demo-rail a:hover{color:var(--teal-light);background:#ffffff0d}.demo-rail a:focus-visible{outline-offset:0}.demo-rail a[aria-current=page]{color:var(--teal-light);box-shadow:inset 0 -2px 0 var(--teal-light)}@media (width<=850px){.demo-rail{max-width:none;bottom:56px;left:12px;right:12px;transform:none}.demo-nav{bottom:12px;right:12px}.demo-nav__panel{max-height:calc(100svh - var(--header-h) - 80px);overflow-y:auto}}@media (prefers-reduced-motion:reduce){.demo-nav__toggle,.demo-nav__toggle svg{transition:none}}@media print{.demo-nav,.demo-rail{display:none}}.site-header{z-index:70;height:var(--header-h);--header-gutter-page:var(--page-inset);--header-gutter-full:24px;backdrop-filter:blur(18px);border-bottom:1px solid var(--line);color:var(--paper);background:linear-gradient(#0a1114ee,#0a111499);grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding-block:0;padding-inline-start:calc(var(--header-gutter-page) + (var(--header-full-left,var(--header-gutter-full)) - var(--header-gutter-page)) * var(--header-expand,0));padding-inline-end:calc(var(--header-gutter-page) + (var(--header-full-right,var(--header-gutter-full)) - var(--header-gutter-page)) * var(--header-expand,0));display:grid;position:fixed;inset:0 0 auto}.site-header[data-presentation-timed=true]{transition:padding-inline-start .36s cubic-bezier(.16,1,.3,1),padding-inline-end .36s cubic-bezier(.16,1,.3,1)}.site-header[data-presentation=aside]{transition-duration:.56s}.site-header[data-tour-header]{z-index:95;grid-template-columns:auto 1fr auto auto;gap:12px}.site-header>.diagram-aside-layer__close{grid-column:4;justify-content:center;width:40px;height:40px;padding:8px}@media (width<=899px){.site-header[data-tour-header]{grid-template-columns:1fr auto auto;gap:6px}.site-header>.diagram-aside-layer__close{grid-column:3}}.brand{color:inherit;white-space:nowrap;font-family:var(--display);letter-spacing:1px;flex-shrink:0;align-items:center;gap:10px;font-size:22px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.brand .brand-mark{flex:none;width:auto;height:30px}.brand em{color:var(--teal-light);font-style:normal}.site-nav{grid-column:3;justify-self:end}.site-nav>ul{align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.site-nav li{margin:0}.site-nav a,.site-nav button{color:inherit;cursor:pointer;background:0 0;border:0;border-radius:3px;align-items:center;gap:6px;min-height:40px;padding:10px 12px;font-size:14px;line-height:1;text-decoration:none;display:inline-flex}.site-nav a:hover,.site-nav button:hover,.site-nav a[aria-current=page]{color:var(--teal-light)}.site-nav a[aria-current=page]{text-underline-offset:8px;text-decoration:underline}.site-nav .nav-contact{border:1px solid #fff5;margin-left:8px;padding:10px 20px}.site-nav .nav-contact:hover{background:var(--paper);color:var(--ink)!important}.site-nav .menu{align-items:center;display:flex;position:relative}.site-nav .menu>a{padding-right:4px}.site-nav .menu-toggle{padding:10px 8px}.site-nav .menu-toggle svg{width:12px;height:12px;transition:transform .2s}.site-nav .menu[data-open=true] .menu-toggle svg{transform:rotate(180deg)}.menu-panel{border:1px solid var(--line);backdrop-filter:blur(18px);background:#142328f5;flex-direction:column;gap:2px;min-width:260px;margin:0;padding:8px;list-style:none;display:none;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 20px 40px #0008}.site-nav .menu[data-open=true] .menu-panel{display:flex}.menu-panel a{width:100%;min-height:44px;padding:10px 12px;display:flex}@media (width>=900px){.site-nav .menu{position:static}.menu-panel.mega{left:0;right:0;top:var(--header-h);min-width:0;padding:32px var(--page-inset) 40px;border:0;border-bottom:1px solid var(--line);max-height:calc(100vh - var(--header-h));background:#0d171b;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;position:fixed;overflow:auto;box-shadow:0 30px 60px #000a}.site-nav .menu[data-open=true] .menu-panel.mega{display:grid}.mega-col{flex-direction:column;min-width:0;display:flex}.mega-col__head{align-items:center;display:flex}.site-nav .mega-col__title{font:600 34px/1.05 var(--display);letter-spacing:-.015em;width:auto;min-height:0;padding:4px 0;display:block}.site-nav .mega-col__title .accent{color:var(--teal-light)}.site-nav .mega-col__title:hover,.site-nav .mega-col__title:hover .accent{color:var(--paper)}.mega-col__toggle{display:none!important}.mega-col__links{flex-direction:column;gap:0;margin:12px 0 0;padding:0;list-style:none;display:flex}.site-nav .mega-col__links a{color:#d0dadb;padding:10px 0;font-size:15px}.site-nav .mega-col__links a:hover{color:var(--teal-light)}}.site-nav .nav-toggle{display:none}@media (width<=850px){.site-header{--header-gutter-page:25px}}@media (width<=899px){.site-header{--header-gutter-full:16px;grid-template-columns:1fr auto}.site-nav{grid-column:2}.site-nav .nav-toggle{min-height:44px;display:inline-flex}.site-nav>ul{left:0;right:0;top:var(--header-h);border-bottom:1px solid var(--line);max-height:calc(100svh - var(--header-h));background:#142328;flex-direction:column;align-items:stretch;gap:0;padding:16px;display:none;position:absolute;overflow:auto;box-shadow:0 20px 40px #0008}.site-nav[data-open=true]>ul{display:flex}.site-nav>ul>li>a{width:100%;min-height:44px}.site-nav .menu{flex-wrap:wrap}.site-nav .menu>a{flex:1}.site-nav .menu-toggle{justify-content:center;min-width:44px;min-height:44px}.menu-panel{min-width:0;box-shadow:none;backdrop-filter:none;background:0 0;border:0;flex-basis:100%;padding:0 0 0 16px;position:static}.mega-col__head{align-items:center;display:flex}.site-nav .mega-col__title{flex:1;font-weight:600;display:block}.site-nav .mega-col__title .accent{color:inherit}.site-nav .mega-col__toggle{justify-content:center;min-width:44px;min-height:44px}.mega-col__toggle svg{width:12px;height:12px;transition:transform .2s}.mega-col[data-open=true] .mega-col__toggle svg{transform:rotate(180deg)}.mega-col__links{flex-direction:column;margin:0;padding:0 0 8px 16px;list-style:none;display:none}.mega-col[data-open=true] .mega-col__links{display:flex}.site-nav .nav-contact{justify-content:flex-start;margin:8px 0 0}}@media (prefers-reduced-motion:reduce){.site-header[data-presentation-timed=true]{transition:none}}.grid-background{z-index:0;pointer-events:none;position:absolute;inset:0}.grid-background canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.grid-background:after{content:"";background:linear-gradient(#0b1419,#0b141900 12% 80%,#0b1419),linear-gradient(90deg,#0b141970,#0000 50%);position:absolute;inset:0}@media (width<=850px){.grid-background:after{background:linear-gradient(#0b1419,#0b141900 12% 80%,#0b1419)}}.hero-heading{font-family:var(--display);letter-spacing:-.015em;text-wrap:balance;font-size:clamp(76px,8.2vw,134px);font-weight:600;line-height:.88}@media (width<=1100px) and (width>=851px){.hero-heading{font-size:90px}}@media (width<=850px){.hero-heading{font-size:65px}}.glass-panel-large{width:370px;max-width:100%;padding:28px}.glass-panel-large h3{margin-bottom:23px;font-size:34px}.glass-panel-large p{color:#d0d9db;font-size:14px}.glass-panel-large>p+h3{margin-top:24px}.glass-panel-large .text-link{margin-top:20px;font-size:13px}@media (width>=851px) and (height<=850px){.glass-panel-large{padding:22px}.glass-panel-large h3{margin-bottom:17px;font-size:31px}.glass-panel-large p{font-size:13px}.glass-panel-large .text-link{margin-top:10px}}@media (width<=1100px) and (width>=851px){.glass-panel-large{width:310px}}@media (width<=850px){.glass-panel-large{padding:24px}}.glass :is(h2,h3) .accent{color:var(--teal-light);font-weight:inherit}.contact-form{padding:36px;position:relative}.contact-form label{margin:0 0 9px;font-size:14px;display:block}.contact-form input,.contact-form textarea,.contact-form select{width:100%;color:var(--paper);min-height:50px;caret-color:var(--teal-light);background:#07131788;border:1px solid #ffffff40;border-radius:3px;margin-bottom:8px;padding:12px 14px}.contact-form :is(.field-error,.field-success){min-height:24px;margin:0 0 16px}.contact-form :is(input,textarea,select)+:not(.field-error,.field-success){margin-top:40px}.contact-form .honeypot{margin-top:0}.contact-form .honeypot+*{margin-top:40px}.contact-form textarea{resize:vertical;min-height:120px}.contact-form select option{background:#101c20}@media (width<=850px){.contact-form{padding:25px}}.field-error{color:var(--error);min-height:25px;font-size:14px}.field-success{color:var(--success);min-height:25px;font-size:14px}.form-error{color:var(--error);font-size:14px}.form-success{color:var(--success);font-size:14px}.contact-form ::placeholder{color:#8e9799;opacity:1}.contact-form :is(input,textarea,select)[aria-invalid=true]{border-color:var(--error)}.form-status--success{color:var(--success)}.form-status--error{color:var(--error)}.placeholder{color:var(--muted);text-align:left;background:#b4d5d506;border:1px dashed #b4d5d52c;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:4px;padding:16px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:12px;line-height:1.5;display:flex}.placeholder small{color:#8e9799;font-size:12px}.placeholder--center{text-align:center;justify-content:center;align-items:center}.button.button--secondary{color:var(--paper);background:0 0;border-color:#fff5}.button.button--secondary:hover,.button.button--secondary.is-hover{background:var(--paper);color:var(--ink)}.button.button--secondary:is(:disabled,[aria-disabled=true]):hover{color:var(--paper);background:0 0}.button[aria-busy=true] svg{display:none}.contact-form :is(input,textarea,select):disabled{border-style:dashed;border-color:var(--line);color:#8e9799;cursor:not-allowed;background-color:#0000}.contact-form[data-submitted] :is(input,textarea,select)[aria-invalid=false]{border-color:var(--success)}.honeypot{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.service-dock{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.service-dock>li{display:flex}.service-tile{min-height:135px;color:var(--paper);transition:background-color .25s, transform var(--tactile-settle-ms,.35s) var(--tactile-settle,ease);background:#142b32ed;border:1px solid #b4d5d545;border-radius:4px;flex:1;padding:20px 24px;text-decoration:none;display:block;position:relative;box-shadow:0 20px 55px #0008}.service-tile strong{font:500 32px/1 var(--display);margin-bottom:14px;display:block}.service-tile>span{color:#cad6d8;padding-right:20px;font-size:12px;line-height:1.6;display:block}.service-tile svg{width:20px;height:20px;transition:transform var(--tactile-settle-ms,.2s) var(--tactile-settle,ease);position:absolute;bottom:15px;right:15px}.service-tile:hover{background:#1b4149}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.service-tile:hover:not(.is-pressed){transform:translateY(-8px)}.service-tile:hover svg{transform:translate(3px)}}.service-dock--four{grid-template-columns:repeat(4,minmax(0,1fr))}.service-dock--four .service-tile strong{font-size:27px;line-height:1.05}@media (width<=1100px) and (width>=851px){.service-tile strong{font-size:26px}.service-tile{padding:16px}.service-dock--four .service-tile strong{font-size:22px}}@media (width<=850px){.service-dock,.service-dock--four{grid-template-columns:minmax(0,1fr);gap:12px}.service-tile{min-height:115px;padding:22px}.service-tile strong{font-size:32px}.service-dock--four .service-tile strong{font-size:30px}.service-tile>span{max-width:none;font-size:14px}}.service-dock--images .service-tile{padding-top:0;overflow:hidden}.service-tile>.service-tile__art{aspect-ratio:16/9;margin:0 -24px 20px;padding:0;display:block;overflow:hidden}.service-tile__art img{object-fit:cover;width:100%;height:100%;display:block}@media (width<=1100px){.service-tile>.service-tile__art{margin-inline:-16px}}@media (width<=850px){.service-tile>.service-tile__art{margin-inline:-22px}}.page-body{padding:0}.page-body>.page-shell{min-height:auto;padding-block:var(--page-start) var(--section-space)}.page-column{padding-inline:var(--page-inset);position:relative}.page-section>.prose{max-width:none}.page-section>.prose>:is(h3,p,ul,ol){max-width:720px}.page-body .glass-panel-large{width:100%}.page-body .prose>.glass-panel-large{max-width:720px}.page-body :is(.two-col,.home-hero)>*{min-width:0}.page-section{padding-block:var(--section-space);margin-block:0}.page-body>:is(.page-shell,.page-section):last-child{padding-bottom:var(--page-end)}.page-body>.page-shell>:last-child,.page-body>.page-shell .page-title:last-child,.page-section>:last-child,.page-section>.prose>:last-child{margin-bottom:0}.page-section>:first-child,.page-section>.prose>:first-child,.page-section>.section-head+*{margin-top:0}.page-subsection{margin:0}.launch-source{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.diagram-pending{min-height:240px}.diagram-pending--aside{float:right;width:min(400px,46%);margin:8px 0 28px 40px}.page-section>.prose:after{content:"";clear:both;display:table}@media (width>=851px){.page-section>.prose>:is(.diagram-aside--right,.diagram-pending--aside){margin-bottom:0}}@media (width<=850px){.diagram-pending--aside{float:none;width:auto;margin:28px 0}}.page-art .page-art__image{justify-content:center;align-items:center;display:flex;position:absolute;inset:0 0 110px}.page-art .page-art__image img{object-fit:contain;max-width:100%;height:auto;max-height:100%}.page-art:not(:has(figcaption)) .page-art__image{min-height:380px;position:relative;inset:auto}@media (width<=850px){.page-art .page-art__image{height:250px;inset:0 0 auto}.page-art:not(:has(figcaption)) .page-art__image{height:auto;min-height:0;inset:auto}}.qa-list{margin:0}.qa-list>div+div{margin-top:32px}.qa-list dt{font-family:var(--display);font-size:24px;font-weight:600;line-height:1.1}.qa-list dd{max-width:72ch;color:var(--muted);margin:12px 0 0}.diagram-pending--inline{width:100%;min-height:480px;margin-block:var(--section-space)}.page-body>.diagram-pending{width:calc(100% - 2 * var(--page-gutter));max-width:calc(var(--page-frame-max) - 2 * var(--page-gutter));margin-inline:auto}.strata .page-hero-grid{isolation:isolate;background:0 0}.page-hero-grid>:not(.grid-background):not(script){z-index:1;position:relative}:root{--tactile-settle:linear(0, .052, .168, .307, .445, .569, .675, .76, .828, .879, .918, .946, .965, .979, .988, .994, .998, 1, 1.001, 1.001, 1.002, 1.001, 1.001, 1.001, 1);--tactile-settle-ms:.23s;--tactile-snap:linear(0, .049, .165, .31, .46, .598, .718, .815, .89, .945, .982, 1.007, 1.02, 1.027, 1.028, 1.027, 1.023, 1.019, 1.015, 1.011, 1.008, 1.005, 1.003, 1.001, 1);--tactile-snap-ms:.26s;--tactile-soft:linear(0, .05, .164, .3, .436, .56, .665, .752, .82, .873, .912, .941, .962, .976, .986, .993, .997, .999, 1.001, 1.001, 1.002, 1.001, 1.001, 1.001, 1);--tactile-soft-ms:.32s;--tactile-press-ease:cubic-bezier(.2, 0, 0, 1);--tactile-press-ms:80ms;--tactile-press-scale:.97;--tactile-press-scale-small:.94;--tactile-lift-shadow:0 6px 16px #0007}@supports not (transition-timing-function:linear(0, 1)){:root{--tactile-settle:cubic-bezier(.34, 1.2, .64, 1);--tactile-snap:cubic-bezier(.34, 1.3, .64, 1);--tactile-soft:cubic-bezier(.16, 1, .3, 1)}}:where(html) .button,:where(html) button:not(.site-nav button),:where(html) [role=button],:where(html) input:is([type=submit],[type=button],[type=reset]),:where(html) [data-tactile~=press]{transition:background-color .2s, color .2s, border-color .2s, box-shadow .2s, transform var(--tactile-settle-ms) var(--tactile-settle)}:where(html) :is(.button,button:not(.site-nav button),[role=button],input:is([type=submit],[type=button],[type=reset]),[data-tactile~=press]):is(.is-pressed,:active:not(.tactile-ready *)){transform:scale(var(--tactile-press-scale));transition-duration:.2s, .2s, .2s, .2s, var(--tactile-press-ms);transition-timing-function:ease, ease, ease, ease, var(--tactile-press-ease)}.tactile-ready :is(.button,button,[role=button],[data-tactile~=press]):active:not(.is-pressed){transform:none}@media (hover:hover) and (pointer:fine){:where(html) .button:is(:hover,.is-hover):not(:disabled,[aria-disabled=true],.is-pressed){box-shadow:var(--tactile-lift-shadow);transform:translateY(-1px)}}:where(html) .button.is-pressed{box-shadow:none}.button.button--secondary.is-pressed{background-color:color-mix(in srgb, var(--paper) 86%, var(--ink));color:var(--ink)}:where(html) :is(button,.button,[role=button]):is(:disabled,[aria-disabled=true]){box-shadow:none;transform:none}.site-nav a,.site-nav button{transition:color .2s, background-color .2s, text-decoration-color .2s, transform var(--tactile-settle-ms) var(--tactile-settle)}.site-nav a.is-pressed,.site-nav button.is-pressed{transform:scale(var(--tactile-press-scale));transition-duration:.2s, .2s, .2s, var(--tactile-press-ms);transition-timing-function:ease, ease, ease, var(--tactile-press-ease)}.site-nav :is(a,button).is-pressed:not(.nav-contact){color:var(--teal-light)}.site-nav .menu-toggle.is-pressed,.site-nav .nav-toggle.is-pressed{transform:scale(var(--tactile-press-scale-small))}.site-nav .menu-panel a{transform-origin:0}.site-nav .menu-panel a:hover{background-color:#ffffff0a}.site-nav .menu-panel a.is-pressed{background-color:#ffffff12;transform:scale(.985)}.site-nav .nav-contact.is-pressed{background-color:color-mix(in srgb, var(--paper) 86%, var(--ink));color:var(--ink)!important}.site-nav .menu-toggle svg{transition:transform var(--tactile-snap-ms) var(--tactile-snap)}.site-nav .menu[data-open=true] .menu-panel{transition:opacity var(--tactile-soft-ms) var(--tactile-soft), transform var(--tactile-settle-ms) var(--tactile-settle)}@starting-style{.site-nav .menu[data-open=true] .menu-panel{opacity:0;transform:translateY(-4px)}}@media (width<=899px){.site-nav[data-open=true]>ul{transition:opacity var(--tactile-soft-ms) var(--tactile-soft), transform var(--tactile-settle-ms) var(--tactile-settle)}@starting-style{.site-nav[data-open=true]>ul{opacity:0;transform:translateY(-4px)}}.site-nav .menu[data-open=true] .menu-panel{transform:none}}.text-link{transition:color .2s, transform var(--tactile-settle-ms) var(--tactile-settle);transform-origin:0}.text-link svg{transition:transform var(--tactile-settle-ms) var(--tactile-settle)}@media (hover:hover) and (pointer:fine){.text-link:hover svg,.text-link.is-hover svg{transform:translate(3px)}}.text-link.is-pressed{color:var(--teal-light);transition-duration:.2s, var(--tactile-press-ms);transition-timing-function:ease, var(--tactile-press-ease);transform:scale(.98)}.text-link.is-pressed svg{transition-duration:var(--tactile-press-ms);transition-timing-function:var(--tactile-press-ease);transform:translate(1px)}.button svg{transition:transform var(--tactile-settle-ms) var(--tactile-settle)}@media (hover:hover) and (pointer:fine){.button:hover svg,.button.is-hover svg{transform:translate(3px)}}:where(p,dd,figcaption)>a:not([class]){text-decoration-color:color-mix(in srgb, currentColor 55%, transparent);transition:color .2s, text-decoration-color .2s, text-underline-offset var(--tactile-soft-ms) var(--tactile-soft)}:where(p,dd,figcaption)>a:not([class]):hover{text-underline-offset:3px;text-decoration-color:currentColor}:where(p,dd,figcaption)>a:not([class]).is-pressed{color:var(--teal-light);text-underline-offset:2px;text-decoration-color:currentColor;text-decoration-thickness:2px}.site-footer a,.dr-index a{transition:color .2s}a.is-pressed:not(.button,.text-link,.nav-contact,[data-tour-link]){color:var(--teal-light)}.diagram-tour .tour-rail a{transition:color .25s, transform var(--tactile-settle-ms) var(--tactile-settle)}.diagram-tour .tour-rail a:after{transition:opacity .25s, transform var(--tactile-snap-ms) var(--tactile-snap)}.diagram-tour .tour-rail a.is-pressed{transform:scale(var(--tactile-press-scale-small));color:var(--paper);transition-duration:.2s, var(--tactile-press-ms);transition-timing-function:ease, var(--tactile-press-ease)}:is(.contact-form,[data-tactile~=field]) :is(input:not([type=checkbox],[type=radio],[type=submit],[type=button]),textarea,select){transition:border-color .2s, background-color .2s, box-shadow var(--tactile-soft-ms) var(--tactile-soft)}:is(.contact-form,[data-tactile~=field]) :is(input,textarea,select):hover:not(:focus,:disabled){border-color:#fff6}:is(.contact-form,[data-tactile~=field]) :is(input:not([type=checkbox],[type=radio],[type=submit],[type=button]),textarea,select):focus{border-color:var(--teal-light);background-color:#07131799;box-shadow:inset 0 1px #ffffff0d}:is(.contact-form,[data-tactile~=field]) select.is-pressed{box-shadow:inset 0 2px #0006}select.tactile-ticked{animation:tactile-tick .42s var(--tactile-soft) both}@keyframes tactile-tick{0%{border-color:var(--teal-light);box-shadow:inset 0 0 0 1px var(--teal-light)}to{box-shadow:inset 0 0 0 1px #0000}}:is([aria-pressed],[role=switch]) :is(svg,.tactile-knob){transition:transform var(--tactile-snap-ms) var(--tactile-snap), opacity .2s}input:is([type=checkbox],[type=radio]){transition:transform var(--tactile-snap-ms) var(--tactile-snap)}input:is([type=checkbox],[type=radio]).is-pressed{transition-duration:var(--tactile-press-ms);transition-timing-function:var(--tactile-press-ease);transform:scale(.9)}@media (prefers-reduced-motion:reduce){html .is-pressed,html :is(.button,button,[role=button],.text-link,.text-link svg,.button svg,.diagram-tour .tour-rail a,input,.site-nav a,.site-nav button,.menu-panel,.site-nav>ul){transform:none!important}html .is-pressed{opacity:.82}html .button:hover{box-shadow:none}}.page-transition{--transition-ready:1;z-index:100;pointer-events:none;user-select:none;display:none;position:fixed;inset:0;overflow:hidden}@media (prefers-reduced-motion:reduce){.page-transition{display:none!important}}
