:root{--paper:#f4f3ef;--paper-bright:#fbfaf7;--ink:#11110f;--muted:#676762;--line:#11110f29;--gutter:clamp(1.25rem, 4vw, 4.5rem);--ease:cubic-bezier(.22, 1, .36, 1);--showcase-height:clamp(16rem, 30svh, 19rem)}*{box-sizing:border-box}html{scroll-behavior:smooth;height:100%;overflow:hidden}body{background:var(--paper);height:100%;color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;overflow:hidden}::selection{background:var(--ink);color:var(--paper)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}:focus-visible{outline-offset:4px;outline:2px solid}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--ink);color:var(--paper);padding:.7rem 1rem;transition:transform .18s;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:50;height:84px;padding:0 var(--gutter);border-bottom:1px solid #0000;justify-content:space-between;align-items:center;transition:background .25s,border-color .25s,height .25s;display:flex;position:fixed;inset:0 0 auto}.site-header-centered{justify-content:center}.skip-intro{right:var(--gutter);color:#11110f85;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:color .2s ease, opacity .35s ease, transform .35s var(--ease);background:0 0;border:0;padding:.45rem 0;font-size:.6rem;font-weight:600;position:absolute}.skip-intro span{transition:transform .22s var(--ease);margin-left:.25rem;display:inline-block}.skip-intro:hover span{transform:translate(3px)}.skip-intro:hover{color:var(--ink)}.skip-intro.is-hidden{opacity:0;pointer-events:none;transform:translate(8px)}.brand{letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:.7rem;font-size:.75rem;font-weight:700;display:inline-flex}.brand-home{color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.brand-mark{background:var(--ink);width:27px;height:27px;color:var(--paper);letter-spacing:0;place-items:center;font-size:.7rem;display:grid}.hero{z-index:0;isolation:isolate;background:var(--paper-bright);height:100svh;position:relative;overflow:hidden}.hero-main-nav{z-index:3;inset:84px var(--gutter) var(--showcase-height);animation:mainNavIn .7s var(--ease) both;place-content:center;justify-items:center;display:grid;position:absolute}.hero-main-nav-options{color:var(--ink);justify-content:center;align-items:center;gap:clamp(1.5rem,5vw,5.5rem);display:flex}.hero-main-nav-options button{color:inherit;letter-spacing:-.07em;cursor:pointer;background:#fbfaf7f0;border:1px solid #11110f24;padding:.1em .16em .13em;font-size:clamp(2.8rem,6.5vw,7rem);font-weight:650;line-height:.9;transition:opacity .2s,border-color .22s}:is(.hero-main-nav-options:has(button:hover) button:not(:hover),.hero-main-nav-options:has(button[aria-expanded=true]) button:not([aria-expanded=true])){opacity:.25}.hero-main-nav-options button:hover,.hero-main-nav-options button[aria-expanded=true]{border-color:var(--ink)}.nav-modal{z-index:5;top:calc(84px + clamp(1rem,3vh,2rem));bottom:calc(var(--showcase-height) + clamp(1rem, 3vh, 2rem));width:min(calc(100% - (2 * var(--gutter))), 70rem);border:1px solid var(--ink);background:var(--paper-bright);color:var(--ink);animation:navModalIn .56s var(--ease) both;grid-template-columns:minmax(0,1.35fr) minmax(15rem,.65fr);gap:clamp(2rem,6vw,6rem);margin:0 auto;padding:clamp(1.5rem,3vw,3rem);display:grid;position:absolute;left:0;right:0}.nav-modal-close{border:1px solid var(--line);color:var(--ink);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;padding:.45rem .6rem;font-size:.63rem;font-weight:700;position:absolute;top:1rem;right:1rem}.nav-modal-copy{align-self:center}.nav-modal-eyebrow{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin:0 0 clamp(1rem,3vh,2rem)!important;font-size:.66rem!important}.nav-modal-copy h2{letter-spacing:-.06em;max-width:46rem;margin:0;font-size:clamp(2.2rem,min(5vw,7vh),5rem);font-weight:650;line-height:.92}.nav-modal-copy>p:last-child{max-width:40rem;color:var(--muted);margin:clamp(1rem,3vh,2rem) 0 0;font-size:clamp(.9rem,1.25vw,1.08rem);line-height:1.55}.nav-modal-aside{flex-direction:column;justify-content:flex-end;display:flex}.nav-modal-aside ul{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.nav-modal-aside li{border-bottom:1px solid var(--line);gap:1rem;padding:.9rem 0;font-size:clamp(.85rem,1.1vw,1rem);display:flex}.nav-modal-aside li span{color:var(--muted);letter-spacing:.1em;font-size:.6rem}.nav-modal-aside>a{border-bottom:1px solid;align-self:flex-start;margin-top:clamp(1rem,3vh,2rem);padding-bottom:.35rem;font-size:clamp(.8rem,1.2vw,1rem)}@keyframes navModalIn{0%{opacity:0;transform:translateY(18px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes mainNavIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.hero-info{--project-accent:#d8ff61;z-index:4;inset:auto var(--gutter) 0;height:var(--showcase-height);border-top:3px solid var(--project-accent);color:var(--paper);animation:heroInfoIn .65s var(--ease) both;background:#11110f;grid-template-columns:minmax(14rem,.72fr) minmax(28rem,1.28fr);gap:clamp(1.5rem,4vw,4.5rem);padding:clamp(1.25rem,2.2vw,2rem);display:grid;position:absolute}.hero-info-heading>p{color:#f4f3ef9e;letter-spacing:.15em;text-transform:uppercase;margin:0 0 .65rem;font-size:.67rem;font-weight:700}.hero-info-heading h2{letter-spacing:-.055em;max-width:32rem;margin:0;font-size:clamp(1.85rem,3.2vw,3.35rem);font-weight:600;line-height:.95}.hero-info-scroll{letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #f4f3efa6;gap:.55rem;margin-top:clamp(.75rem,2vh,1.25rem);padding-bottom:.3rem;font-size:.66rem;font-weight:700;display:inline-flex}.hero-info-interactive{grid-template-columns:minmax(10rem,.75fr) minmax(15rem,1.25fr);align-items:stretch;gap:clamp(1rem,2.5vw,2.25rem);min-width:0;display:grid}.hero-info-tabs{border-top:1px solid #f4f3ef40;flex-direction:column;display:flex}.hero-info-tabs button{color:#f4f3ef94;text-align:left;cursor:pointer;transition:color .22s ease, padding-left .25s var(--ease);background:0 0;border:0;border-bottom:1px solid #f4f3ef40;align-items:center;gap:1rem;padding:.8rem 0;display:flex}.hero-info-tabs button:hover,.hero-info-tabs button[aria-selected=true]{color:var(--paper);padding-left:.5rem}.hero-info-tabs button[aria-selected=true]:after{content:"";background:var(--project-accent);border-radius:50%;width:.45rem;height:.45rem;margin-left:auto}.hero-info-tabs button span{letter-spacing:.12em;font-size:.62rem}.hero-info-panel{background:var(--paper);color:var(--ink);animation:capabilityPanelIn .45s var(--ease) both;border-top:4px solid var(--project-accent);flex-direction:column;justify-content:space-between;min-width:0;padding:1rem;display:flex}.hero-info-panel-meta{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;gap:.4rem 1rem;margin-bottom:.75rem;font-size:.58rem;font-weight:700;display:flex}.hero-info-panel p{overflow-wrap:anywhere;margin:0;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.5}.hero-info-panel a{letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid;align-self:flex-start;margin-top:2rem;padding-bottom:.3rem;font-size:.7rem;font-weight:700}@keyframes heroInfoIn{0%{transform:translateY(32px)}to{transform:translateY(0)}}@keyframes capabilityPanelIn{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.hero-video{object-fit:cover;object-position:45% center;width:100%;height:100%;position:absolute;inset:0}.hero-message{z-index:3;left:var(--gutter);width:min(42rem, calc(100% - (2 * var(--gutter))));color:#fff;letter-spacing:-.055em;mix-blend-mode:difference;animation:heroMessageIn 1.5s var(--ease) both;margin:0;font-size:clamp(2rem,4.8vw,5rem);font-weight:700;line-height:.98;position:absolute;bottom:clamp(6.5rem,12vh,9rem)}@keyframes heroMessageIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.hero-message.is-exiting{opacity:0;transition:opacity .9s var(--ease), transform .9s var(--ease);animation:none;transform:translateY(-12px)}.explore-more{z-index:3;border:1px solid var(--ink);background:var(--ink);color:var(--paper);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:opacity .2s ease, letter-spacing .25s var(--ease);padding:.9rem 1.15rem;font-size:.76rem;font-weight:700;position:absolute;bottom:clamp(1.75rem,4vw,3.5rem);left:50%;transform:translate(-50%)}.explore-more:hover{letter-spacing:.17em}.explore-more:focus-visible{outline-offset:5px;outline:2px solid}@media (max-width:900px){.hero-video{object-position:36% center}.hero-info{grid-template-columns:minmax(9rem,.8fr) minmax(0,1.2fr);gap:1rem;padding:1rem}.hero-info-heading h2{font-size:clamp(1.65rem,4.5vw,2.7rem)}.hero-info-interactive{grid-template-columns:minmax(7rem,.8fr) minmax(0,1.2fr);gap:1rem}}@media (max-width:580px){.site-header{height:70px}.brand{font-size:.68rem}.hero-main-nav{inset:70px var(--gutter) var(--showcase-height)}.hero-main-nav-options{flex-direction:column;gap:.55rem}.hero-main-nav-options button{font-size:clamp(2.65rem,14vw,4rem)}.nav-modal{top:calc(70px + .65rem);bottom:calc(var(--showcase-height) + .65rem);grid-template-columns:1fr;align-content:center;gap:1rem;width:calc(100% - 1.5rem);padding:1.25rem}.nav-modal-close{top:.6rem;right:.6rem}.nav-modal-eyebrow{margin-bottom:.75rem!important}.nav-modal-copy h2{padding-right:2.5rem;font-size:clamp(1.9rem,9vw,2.6rem)}.nav-modal-copy>p:last-child{margin-top:.75rem;font-size:.82rem;line-height:1.45}.nav-modal-aside li{padding:.5rem 0;font-size:.8rem}.nav-modal-aside>a{margin-top:.75rem;font-size:.75rem}.hero-info{grid-template-columns:1fr;gap:.75rem}.hero-info-heading>p{margin-bottom:.4rem}.hero-info-heading h2{font-size:1.65rem}.hero-info-scroll{display:none}.hero-info-interactive{grid-template-columns:minmax(7rem,.8fr) minmax(0,1.2fr);gap:.75rem}.hero-info-tabs button{gap:.5rem;padding:.65rem 0;font-size:.78rem}.hero-info-panel{padding:.8rem}.hero-info-panel p{font-size:.85rem}.hero-info-panel a{margin-top:.75rem;font-size:.58rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hero-video{display:none}.hero{background:var(--paper-bright) url(/assets/poster.jpg) center / cover no-repeat}}
