:root{--bg: #ffffff;--tint: #f4f8f9;--text: #14181c;--muted: #5b6670;--rule: #e2eaec;--accent: #19547b;--accent2: #027579;--ease: cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{line-height:1.2}a{color:inherit;text-decoration:none}button{font-family:inherit}.wrap{max-width:46rem;margin:0 auto;padding:0 1.75rem;position:relative;z-index:1}.wabi{font-family:Amaranth,Georgia,serif;font-weight:700;color:var(--accent2)}.blob-field{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.blob{position:absolute;width:var(--size);height:var(--size);margin:calc(var(--size) / -2) 0 0 calc(var(--size) / -2);left:var(--x);top:var(--y);will-change:transform}.blob svg{width:100%;height:100%;display:block;mix-blend-mode:multiply;animation:drift var(--dur) ease-in-out var(--delay) infinite;will-change:transform}@keyframes drift{0%,to{transform:translate(0) rotate(0) scale(1)}33%{transform:translate(var(--dx),var(--dy)) rotate(var(--rot)) scale(1.07)}66%{transform:translate(calc(var(--dx) * -.55),calc(var(--dy) * .75)) rotate(calc(var(--rot) * -.5)) scale(.95)}}.progress{position:fixed;top:0;left:0;height:2px;width:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,var(--accent),var(--accent2));z-index:60;will-change:transform}.minibar{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.75rem;background:#ffffffd1;backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid transparent;opacity:0;transform:translateY(-100%);transition:opacity .4s var(--ease),transform .5s var(--ease),border-color .4s;pointer-events:none}.minibar.show{opacity:1;transform:translateY(0);border-bottom-color:var(--rule);pointer-events:auto}.minibar img{display:block;height:26px;width:auto;margin-left:-4px}.minibar a{font-size:.8125rem;color:var(--accent2);border:1px solid var(--rule);border-radius:62% 38% 55% 45%/52% 60% 40% 48%;padding:.5rem 1.2rem;animation:blobBtn 16s ease-in-out infinite;transition:background .25s,color .25s,border-color .25s}@keyframes blobBtn{0%,to{border-radius:62% 38% 55% 45%/52% 60% 40% 48%}25%{border-radius:45% 55% 42% 58%/60% 44% 56% 40%}50%{border-radius:55% 45% 60% 40%/42% 58% 45% 55%}75%{border-radius:40% 60% 48% 52%/56% 40% 60% 44%}}.minibar a:hover{background:var(--accent2);color:#fff;border-color:var(--accent2)}.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:5rem 0 4rem}.hero>*{position:relative;z-index:1}.squares{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none;z-index:0;overflow:hidden;mask-image:radial-gradient(closest-side,#000 55%,transparent 100%);-webkit-mask-image:radial-gradient(closest-side,#000 55%,transparent 100%)}.squares i{position:absolute;width:min(560px,78vw);aspect-ratio:1;border:1px solid rgba(2,117,121,.16);border-radius:2px;opacity:0;animation:squareOut var(--dur, 16s) linear var(--delay, 0s) infinite;will-change:transform,opacity}@keyframes squareOut{0%{transform:rotate(0) scale(.25);opacity:0}12%{opacity:.9}70%{opacity:.28}to{transform:rotate(140deg) scale(1.5);opacity:0}}.hero-logo-wrap{margin:0 auto 3.5rem;transform-origin:50% 50%;will-change:transform,opacity}.hero-logo{width:min(680px,82vw);height:auto;display:block;margin:0 auto;opacity:0;animation:logoIn 1.4s var(--ease) .15s forwards}@keyframes logoIn{0%{opacity:0;transform:scale(.94) translateY(14px);filter:blur(6px)}to{opacity:1;transform:scale(1) translateY(0);filter:blur(0)}}.hero h1{font-size:clamp(2.5rem,6vw,3.875rem);font-weight:500;line-height:1.1;letter-spacing:-.035em;max-width:15ch}.hero h1 em{font-style:normal;color:var(--accent2)}.lede{margin-top:1.75rem;max-width:48ch;color:var(--muted);font-size:1.125rem;line-height:1.65}.hero .lede{opacity:0;animation:fadeUp 1s var(--ease) 1.05s forwards}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.cue{margin-top:3.5rem;display:flex;align-items:center;gap:.7rem;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);opacity:0;animation:fadeUp 1s var(--ease) 1.35s forwards}.cue .line{display:block;width:52px;height:1px;background:var(--rule);position:relative;overflow:hidden}.cue .line:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent2);transform-origin:0 50%;animation:sweep 2.4s ease-in-out infinite}@keyframes sweep{0%{transform:translate(-100%)}60%{transform:translate(100%)}to{transform:translate(100%)}}.word{display:inline-block;white-space:nowrap}.c{display:inline-block;opacity:0;transform:translateY(.42em) rotate(2deg);transition:opacity .62s var(--ease),transform .62s var(--ease);transition-delay:calc(var(--i) * 18ms);will-change:transform,opacity}[data-scroll=in] .c{opacity:1;transform:translateY(0) rotate(0)}[data-scroll=out] .c{opacity:0;transform:translateY(-.42em) rotate(-2deg)}.hero h1 .c{transition-delay:calc(.55s + var(--i) * 18ms)}.section-label{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent2);padding-bottom:1.5rem}.items{border-top:1px solid var(--rule)}.item{display:grid;grid-template-columns:3.5rem 1fr;gap:0 1.5rem;padding:2.25rem 0;position:relative}.item:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--rule);transform-origin:0 50%;transition:transform 1.1s var(--ease) .15s}.motion .item:after{transform:scaleX(0)}.motion .item[data-scroll=in]:after{transform:scaleX(1)}.num{color:var(--accent2);font-size:.8125rem;font-weight:600;font-variant-numeric:tabular-nums;padding-top:.32rem;transition:opacity .7s var(--ease) .1s,transform .7s var(--ease) .1s}.motion .num{opacity:0;transform:translate(-10px)}.motion .item[data-scroll=in] .num{opacity:1;transform:translate(0)}.item .body{transition:opacity .85s var(--ease) .18s,transform .85s var(--ease) .18s}.motion .item .body{opacity:0;transform:translateY(18px)}.motion .item[data-scroll=in] .body{opacity:1;transform:translateY(0)}.item h2{font-size:1.0625rem;font-weight:600;letter-spacing:-.01em;color:var(--accent)}.item p{margin-top:.4rem;color:var(--muted);max-width:54ch}.reveal{transition:opacity .9s var(--ease),transform .9s var(--ease)}.motion .reveal{opacity:0;transform:translateY(20px)}.motion .reveal[data-scroll=in]{opacity:1;transform:translateY(0)}.goo-defs{position:absolute;width:0;height:0}.goo-zone{position:relative;z-index:1;margin-top:7rem}.goo-layer{position:absolute;left:0;right:0;bottom:100%;height:190px;filter:url(#goo);pointer-events:none;overflow:hidden}.goo-base{position:absolute;left:0;right:0;bottom:0;height:24px;background:var(--tint)}.goo-layer b{position:absolute;bottom:-18px;left:var(--x);width:var(--size);height:var(--size);margin-left:calc(var(--size) / -2);background:var(--tint);border-radius:50%;animation:evaporate var(--dur) ease-in var(--delay) infinite;will-change:transform,opacity}@keyframes evaporate{0%{transform:translateY(0) scale(1);opacity:1}55%{opacity:1}to{transform:translateY(-165px) scale(.18);opacity:0}}.contact-band{background:var(--tint);padding:5.5rem 0}.contact h2{font-size:clamp(1.75rem,4vw,2.25rem);font-weight:500;letter-spacing:-.03em;line-height:1.15}.contact .lede{margin-top:1rem;font-size:1.0625rem}form{margin-top:2.75rem;display:grid;gap:.875rem;max-width:27rem}form>*{transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:calc(.2s + var(--i) * .08s)}.motion form>*{opacity:0;transform:translateY(14px)}.motion .contact[data-scroll=in] form>*{opacity:1;transform:translateY(0)}input,textarea{width:100%;font:inherit;color:var(--text);background:#fff;border:1px solid var(--rule);border-radius:4px;padding:.85rem 1rem;outline:none;transition:border-color .25s,box-shadow .25s,opacity .7s var(--ease),transform .7s var(--ease)}input::placeholder,textarea::placeholder{color:#a8b4bb}input:focus,textarea:focus{border-color:var(--accent2);box-shadow:0 0 0 3px #0275791a}textarea{resize:vertical;min-height:7rem}button[type=submit]{justify-self:start;font:inherit;font-size:.9375rem;margin-top:.5rem;background:var(--accent2);color:#fff;border:0;border-radius:58% 42% 48% 52%/55% 52% 48% 45%;padding:1rem 2.4rem;cursor:pointer;animation:blobBtn 21s ease-in-out -7s infinite;transition:background .25s,transform .25s var(--ease),opacity .7s var(--ease)}button[type=submit]:hover:not(:disabled){background:var(--accent);transform:translateY(-2px)}button[type=submit]:disabled{opacity:.65;cursor:not-allowed}.form-message{margin-top:2rem;padding:1rem 1.25rem;border-radius:4px;background:#fff;border:1px solid var(--rule);color:var(--accent2);max-width:27rem}.form-error{color:#b4232a;border-color:#f0d3d4;background:#fdf7f7}footer{padding:2rem 0 3rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.8125rem;color:var(--muted)}footer a{color:var(--accent2)}footer a:hover{text-decoration:underline}@media (max-width: 640px){.hero{min-height:auto;padding:4.5rem 0 3rem}.hero-logo-wrap{margin-bottom:2.5rem}.item{grid-template-columns:2.5rem 1fr;gap:0 1rem;padding:1.75rem 0}.goo-zone{margin-top:4.5rem}.goo-layer{height:130px}.contact-band{padding:4rem 0}.cue{margin-top:2.5rem}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:1ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:1ms!important;transition-delay:0s!important}.hero-logo,.hero-logo-wrap,.lede,.cue{opacity:1!important;transform:none!important;filter:none!important}.c{opacity:1!important;transform:none!important}.motion .reveal,.motion .item .body,.motion .num,.motion form>*{opacity:1!important;transform:none!important}.motion .item:after{transform:scaleX(1)!important}.squares,.goo-layer{display:none!important}.blob svg{animation:none!important}}
