@import "https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600&family=Newsreader:opsz,wght@6..72,300;6..72,400;6..72,500&display=swap";:root{--ink:#0a1c2b;--ink-2:#11283a;--mist:#f4f7f9;--white:#fff;--slate:#4a6170;--rule:#d6dfe4;--accent:#0e9db8;--accent-hover:#2cb4cd;--accent-text:#0a6e84;--on-dark:#eef4f7;--on-dark-muted:#a9bdc8;--rule-dark:#eef4f724;--serif:"Newsreader", Georgia, serif;--sans:"Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--wrap:75rem;--pad:clamp(1.25rem, 5vw, 3rem);--space:clamp(4rem, 9vw, 7.5rem);--radius:3px;--ease:cubic-bezier(.2, .7, .1, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--mist);color:var(--ink);font:400 1.0625rem/1.6 var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0}#root{flex-direction:column;min-height:100svh;display:flex}main{flex:1}h1,h2,h3,p,ul,dl,dd{margin:0}a{color:inherit}img,svg{display:block}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.wrap{width:100%;max-width:var(--wrap);padding-inline:var(--pad);margin-inline:auto}.skip{position:absolute;top:0;left:-999px}.skip:focus{z-index:100;background:var(--white);padding:.6rem 1rem;top:1rem;left:1rem}.display,.page-head h1,.contact h1,.section h2,.cta-band h2{font-family:var(--serif);font-optical-sizing:auto;letter-spacing:-.02em;text-wrap:balance;font-weight:400}.section h2{font-size:clamp(2rem,3.6vw,3rem);line-height:1.08}h3{font:600 1.1875rem/1.3 var(--sans);letter-spacing:-.01em}.lede{color:var(--slate);max-width:52ch;font-size:clamp(1.125rem,1.6vw,1.3125rem);line-height:1.55}.muted{color:var(--slate)}.text-link{color:var(--accent-text);transition:background-size .3s var(--ease);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;padding-bottom:2px;font-weight:500;text-decoration:none}.text-link:hover{background-size:100% 1px}.button{border-radius:var(--radius);background:var(--accent);min-height:3rem;color:var(--ink);font:500 1rem var(--sans);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;padding:0 1.4rem;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s;display:inline-flex}.button:hover{background:var(--accent-hover)}.button:disabled{opacity:.55;cursor:default}.button.ghost{color:var(--on-dark);border-color:var(--rule-dark);background:0 0}.button.ghost:hover{border-color:var(--on-dark)}.button.dark{background:var(--ink);color:var(--on-dark)}.button.dark:hover{background:var(--ink-2)}.nav{z-index:50;-webkit-backdrop-filter:saturate(1.4)blur(14px);border-bottom:1px solid var(--rule);background:#f4f7f9d1;transition:background-color .3s,border-color .3s,color .3s,box-shadow .3s;position:fixed;top:0;left:0;right:0}main{padding-top:4.25rem}.nav.on-dark{border-bottom-color:var(--rule-dark);color:var(--on-dark);background:#0a1c2bd1}.nav-inner{min-height:4.25rem;transition:min-height .35s var(--ease);justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.brand{font:500 1.1875rem var(--serif);letter-spacing:-.01em;transition:font-size .35s var(--ease), gap .35s var(--ease);align-items:center;gap:.7rem;text-decoration:none;display:flex}.brand svg{transition:transform .35s var(--ease);transform-origin:0}.nav.scrolled .brand{gap:.5rem}.nav.scrolled .nav-inner{min-height:3rem}.nav.scrolled .brand{font-size:1.0625rem}.nav.scrolled .brand svg{transform:scale(.78)}.nav.scrolled:not(.on-dark){box-shadow:0 6px 20px -12px #0a1c2b2e}@media (width>=761px){.nav.scrolled .nav-links .button{min-height:2rem;font-size:.875rem}}@media (prefers-reduced-motion:reduce){.nav,.nav-inner,.brand,.brand svg,.nav-links .button{transition:none}}.nav-links{align-items:center;gap:2rem;display:flex}.nav-links a{color:var(--slate);font-size:.9375rem;text-decoration:none;transition:color .2s}.nav.on-dark .nav-links a{color:var(--on-dark-muted)}.nav-links a:hover,.nav-links a.active{color:var(--ink)}.nav.on-dark .nav-links a:hover,.nav.on-dark .nav-links a.active{color:var(--on-dark)}.nav-links a.active{box-shadow:0 2px 0 var(--accent)}.nav-links .button{min-height:2.5rem;color:var(--ink);transition:background-color .2s, min-height .35s var(--ease), font-size .35s var(--ease);padding:0 1.1rem;font-size:.9375rem}.nav.on-dark .nav-links .button{color:var(--ink)}.menu-toggle{color:inherit;cursor:pointer;background:0 0;border:0;margin-right:-.5rem;padding:.5rem;display:none}.menu-toggle span{width:22px;height:2px;transition:transform .25s var(--ease), opacity .2s;background:currentColor;display:block}.menu-toggle span+span{margin-top:5px}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (width<=760px){.menu-toggle{display:block}.nav-links{padding:.5rem var(--pad) 1.25rem;background:var(--mist);border-bottom:1px solid var(--rule);flex-direction:column;align-items:stretch;gap:0;display:none;position:absolute;top:100%;left:0;right:0}.nav.on-dark .nav-links{background:var(--ink);border-bottom-color:var(--rule-dark)}.nav-links.open{display:flex}.nav-links a{border-bottom:1px solid var(--rule);padding:.85rem 0;font-size:1.0625rem}.nav.on-dark .nav-links a{border-bottom-color:var(--rule-dark)}.nav-links a.active{box-shadow:none;color:var(--accent-text)}.nav.on-dark .nav-links a.active{color:var(--accent)}.nav-links .button{border-bottom:0;min-height:3rem;margin-top:1rem}}.hero{--u:clamp(1.1rem, 3.6vw, 3.5rem);background:var(--ink);color:var(--on-dark);margin-top:-4.25rem;padding-top:4.25rem;position:relative;overflow:hidden}.hero-grid{z-index:1;flex-direction:column;justify-content:center;min-height:min(44rem,88svh);padding-block:clamp(4rem,10vw,7rem);display:flex;position:relative}.hero .display{max-width:12ch;margin-bottom:1.75rem;font-size:clamp(2.75rem,6.4vw,5.5rem);line-height:1.02}.hero .lede{color:var(--on-dark-muted);max-width:46ch;margin-bottom:2.5rem}.actions{flex-wrap:wrap;gap:.75rem;display:flex}.hero-mark{z-index:0;top:50%;right:max(var(--pad), calc((100% - var(--wrap)) / 2 + var(--pad)));width:calc(var(--u) * 5);height:calc(var(--u) * 5);position:absolute;transform:translateY(-50%)}.hero-mark .block{fill:var(--on-dark)}.hero-mark .floor{fill:var(--accent)}.hero-mark path{transform-box:fill-box}.hero-mark .block{transform-origin:bottom}.hero-mark .floor{transform-origin:0}@media (prefers-reduced-motion:no-preference){.hero-mark .block{animation:rise .9s var(--ease) both}.hero-mark .floor{animation:extend .7s var(--ease) .65s both}@keyframes rise{0%{transform:scaleY(0)}}@keyframes extend{0%{transform:scaleX(0)}}}@media (width<=900px){.hero{--u:.9rem}.hero-grid{min-height:0;padding-top:calc(var(--u) * 5 + 5.5rem);justify-content:flex-start}.hero-mark{top:6.5rem;left:var(--pad);right:auto;transform:none}}.page-head{padding-block:clamp(4rem,9vw,7rem) clamp(2.5rem,5vw,4rem)}.page-head h1{max-width:18ch;margin-bottom:1.5rem;font-size:clamp(2.5rem,5.2vw,4.25rem);line-height:1.04}.mark-bar{background:var(--accent);width:2.75rem;height:.5rem;margin-bottom:2rem;display:block}.section{padding-block:var(--space)}.section+.section,.page-head+.section{border-top:1px solid var(--rule)}.section.white{background:var(--white)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem 2rem;margin-bottom:clamp(2.5rem,5vw,4rem);display:flex}.section-head h2{max-width:20ch}.product-grid{border-top:1px solid var(--rule);grid-template-columns:repeat(2,1fr);padding:0;list-style:none;display:grid}.product-grid li{border-bottom:1px solid var(--rule);padding:clamp(1.75rem,3vw,2.5rem) clamp(1.5rem,3vw,2.5rem) clamp(2rem,3.5vw,3rem) 0;position:relative}.product-grid li:nth-child(2n){border-left:1px solid var(--rule);padding-left:clamp(1.5rem,3vw,2.5rem);padding-right:0}.product-grid li:before{content:"";background:var(--accent);width:2.75rem;height:2px;position:absolute;top:-1px}.product-grid li:nth-child(2n):before{left:clamp(1.5rem,3vw,2.5rem)}.product-grid h3{margin-bottom:.6rem}.product-grid p{color:var(--slate);max-width:44ch}.product-grid.detailed h3{font:400 clamp(1.5rem, 2.4vw, 1.875rem)/1.15 var(--serif);letter-spacing:-.015em;margin-bottom:1rem}.product-grid.detailed p{font-size:1.0625rem}@media (width<=700px){.product-grid{grid-template-columns:1fr}.product-grid li,.product-grid li:nth-child(2n){border-left:0;padding:1.75rem 0 2rem}.product-grid li:nth-child(2n):before{left:0}}.split-grid{grid-template-columns:1.15fr 1fr;align-items:end;gap:2rem clamp(2rem,6vw,6rem);display:grid}.split-grid p{color:var(--slate);max-width:46ch;margin-bottom:1.5rem;font-size:1.125rem}@media (width<=820px){.split-grid{grid-template-columns:1fr}}.cols{grid-template-columns:repeat(3,1fr);gap:2.5rem clamp(2rem,4vw,3.5rem);display:grid}.cols.two{grid-template-columns:repeat(2,1fr)}.cols article{border-top:1px solid var(--ink);padding-top:1.5rem}.cols h3{margin-bottom:.75rem}.cols h3.serif{font:400 clamp(1.5rem, 2.4vw, 1.875rem)/1.15 var(--serif);letter-spacing:-.015em;margin-bottom:1rem}.cols p{color:var(--slate);max-width:46ch}.cols ul{margin-top:1.75rem;padding:0;list-style:none}.cols li{border-top:1px solid var(--rule);padding:.9rem 0 .9rem 1.75rem;position:relative}.cols li:before{content:"";background:var(--accent);width:.75rem;height:3px;position:absolute;top:1.55rem;left:0}@media (width<=860px){.cols,.cols.two{grid-template-columns:1fr}}.cta-band{background:var(--ink);color:var(--on-dark);padding-block:clamp(4rem,8vw,6.5rem)}.cta-inner{grid-template-columns:1fr auto;align-items:end;gap:2rem 4rem;display:grid}.cta-band h2{max-width:18ch;margin-bottom:1rem;font-size:clamp(2rem,4vw,3.25rem);line-height:1.06}.cta-band p{color:var(--on-dark-muted);max-width:50ch;font-size:1.125rem}@media (width<=760px){.cta-inner{grid-template-columns:1fr}.cta-inner .button{justify-self:start}}.footer{background:var(--ink);color:var(--on-dark-muted);font-size:.9375rem}.cta-band+.footer .footer-inner{border-top:1px solid var(--rule-dark)}.footer-inner{grid-template-columns:1fr auto;gap:2rem;padding-block:3rem;display:grid}.footer-brand{color:var(--on-dark);font:500 1.125rem var(--serif);align-items:center;gap:.7rem;margin-bottom:.75rem;text-decoration:none;display:flex}.footer nav{flex-wrap:wrap;align-items:start;gap:.5rem 2rem;display:flex}.footer a{text-decoration:none;transition:color .2s}.footer a:hover{color:var(--on-dark)}.footer-base{border-top:1px solid var(--rule-dark);flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;gap:1rem;padding-top:1.5rem;font-size:.875rem;display:flex}@media (width<=640px){.footer-inner{grid-template-columns:1fr}}.contact{padding-block:clamp(4rem,9vw,7rem)}.contact-grid{grid-template-columns:1fr 1.1fr;align-items:start;gap:3rem clamp(2rem,7vw,7rem);display:grid}.contact h1{max-width:14ch;margin-bottom:1.5rem;font-size:clamp(2.5rem,5vw,4rem);line-height:1.04}@media (width>=961px){.contact-grid{grid-template-rows:auto 1fr;row-gap:0}.contact-head{grid-area:1/1}.contact-intro{grid-area:2/1}.contact-grid .form-panel{grid-area:1/2/3;position:sticky;top:6rem}}@media (width<=960px){.contact-intro h2:first-child{margin-top:0}.contact-grid{grid-template-columns:1fr}}.contact-intro h2{font:600 1rem/1.4 var(--sans);letter-spacing:-.005em;border-top:1px solid var(--ink);margin:3rem 0 1rem;padding-top:1.25rem}.small{font-size:.9375rem}.prompt-list{margin-bottom:1.25rem;padding:0;list-style:none}.prompt-list li{border-bottom:1px solid var(--rule);padding:.7rem 0 .7rem 1.75rem;position:relative}.prompt-list li:before{content:"";background:var(--accent);width:.75rem;height:3px;position:absolute;top:1.4rem;left:0}.steps{counter-reset:step;gap:1rem;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;grid-template-columns:2rem 1fr;align-items:baseline;gap:.75rem;display:grid}.steps li:before{content:counter(step);font:400 1.5rem/1 var(--serif);color:var(--accent-text)}.field-row{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}@media (width<=560px){.field-row{grid-template-columns:1fr}}.optional{color:var(--slate);margin-left:.35rem;font-size:.8125rem;font-weight:400}.hint{color:var(--slate);margin-top:-.2rem;font-size:.875rem;font-weight:400}fieldset{border:0;min-width:0;margin:0;padding:0}legend{margin-bottom:.75rem;padding:0;font-size:.9375rem;font-weight:500}.chips{flex-wrap:wrap;gap:.5rem;display:flex}.chip{cursor:pointer;gap:0;font-weight:400;display:inline-flex;position:relative}.chip input{opacity:0;width:1px;height:1px;position:absolute}.chip span{border:1px solid var(--rule);background:var(--mist);color:var(--ink);border-radius:999px;padding:.5rem .85rem;font-size:.9063rem;line-height:1.3;transition:background-color .15s,border-color .15s,color .15s}.chip:hover span{border-color:#b7c6ce}.chip input:checked+span{background:var(--ink);border-color:var(--ink);color:var(--on-dark)}.chip input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}select{font:inherit;color:var(--ink);border:1px solid var(--rule);border-radius:var(--radius);background:var(--mist) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%234a6170' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right .9rem center;appearance:none;cursor:pointer;padding:.8rem 2.5rem .8rem .9rem;font-weight:400}select:focus{background-color:var(--white);border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #0e9db82e}.form-panel{background:var(--white);border:1px solid var(--rule);border-radius:4px;padding:clamp(1.5rem,4vw,2.75rem)}form{gap:1.5rem;display:grid}label{gap:.5rem;font-size:.9375rem;font-weight:500;display:grid}input,textarea{font:inherit;color:var(--ink);border:1px solid var(--rule);border-radius:var(--radius);background:var(--mist);padding:.8rem .9rem;font-weight:400;transition:border-color .2s,background-color .2s,box-shadow .2s}textarea{resize:vertical;min-height:9rem}input:hover,textarea:hover{border-color:#b7c6ce}input:focus,textarea:focus{background:var(--white);border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #0e9db82e}form .button{justify-self:start}.confirm{gap:.75rem;display:grid}.confirm strong{font:400 1.75rem/1.2 var(--serif);letter-spacing:-.015em}.confirm span{color:var(--slate)}.error{color:#b3261e}.honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}
