.hc{--ink:#14272b;--ink-2:#3d4d50;--ink-3:#5b696b;--teal:#0e6572;--teal-2:#14808f;--teal-3:#2b7d87;--teal-soft:#d6eef1;--sans:var(--font-geist-sans),"Geist",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:var(--font-plex-mono),"IBM Plex Mono",ui-monospace,Menlo,monospace;--gut:clamp(16px,4vw,56px);color:var(--ink);font-family:var(--sans);background:#eaf3f4;-webkit-font-smoothing:antialiased}html:has(.hc){background:#eaf3f4;scroll-snap-type:y mandatory}@media (prefers-reduced-motion:reduce){html:has(.hc){scroll-snap-type:y proximity}}.hc *{box-sizing:border-box;margin:0;padding:0}.hc a{color:inherit;text-decoration:none}.hc a:focus-visible{outline:2.5px solid var(--teal-2);outline-offset:3px}.hc .btn{display:inline-flex;align-items:center;justify-content:center;background:var(--teal);color:#fff;border-radius:999px;padding:16px 30px;font-size:17px;font-weight:500;white-space:nowrap;transition:background .2s,transform .2s}.hc .btn:hover{background:#0a4f59}.hc .btn:active{transform:scale(.98)}.hc .btn.sm{padding:10px 20px;font-size:15px}.hc .btn.ghost{background:rgba(255,255,255,.72);color:var(--teal);box-shadow:inset 0 0 0 1.5px rgba(27,106,116,.35)}.hc .btn.ghost:hover{background:rgba(255,255,255,.8)}.hc .btn.big{padding:18px 34px;font-size:18px}.hc .btn.huge{padding:22px 56px;font-size:21px;box-shadow:0 18px 40px -16px rgba(14,101,114,.65),0 0 0 8px rgba(20,128,143,.12)}.hc .btn.light{background:#f3f8f8;color:#0b3f47}.hc .btn.light:hover{background:#fff}.hc .top{position:fixed;inset:0 0 auto 0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:18px var(--gut);pointer-events:none}.hc .top>*{pointer-events:auto}.hc .top{transition:opacity .3s,visibility .3s}.hc .top.off{opacity:0;visibility:hidden}.hc .mark{display:flex;align-items:baseline;gap:14px}.hc .wm{font-weight:300;font-size:28px;letter-spacing:-.01em}.hc .tag{font-family:var(--mono);font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}.hc .top nav{display:flex;align-items:center;gap:26px}.hc .lnk{font-family:var(--mono);font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}.hc .lnk:hover{color:var(--teal)}.hc .story{position:relative;height:calc(9 * 100vh);height:calc(8 * 100svh + 100lvh);background:#cfe6e6}.hc .snap{position:absolute;left:0;width:1px;height:1px;top:calc(var(--k) * 100vh);top:calc(var(--k) * 100svh);scroll-snap-align:start;scroll-snap-stop:always;pointer-events:none}.hc .stage{position:sticky;top:0;height:100vh;height:100lvh;overflow:hidden;isolation:isolate}.hc .sky{z-index:0;pointer-events:none;background:linear-gradient(180deg,#c3d3d6,#d7e2e3 38%,#e6eeee 64%,#e3eeee)}.hc .air,.hc .sky{position:absolute;inset:0}.hc .air{background:linear-gradient(180deg,#cde6eb,#e4f1f3 34%,#f7fbfb 62%,#eef6f6);opacity:0}.hc .sun{position:absolute;left:var(--sx,64%);top:30%;width:min(900px,110vw);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,243,220,.95),rgba(255,240,214,.4) 32%,rgba(255,240,214,0) 64%);opacity:0}.hc .chart{position:absolute;left:0;top:0;width:100%;height:100%;opacity:.9;transform:scale(1.04);will-change:transform;animation:hcdrift 46s ease-in-out infinite alternate}@keyframes hcdrift{to{transform:translate3d(-1.4%,.9%,0) scale(1.06)}}.hc .chart text{font-family:var(--mono);font-size:11px;fill:#14808f;fill-opacity:.35}.hc .cloud{position:absolute;border-radius:50%;background:radial-gradient(closest-side,rgba(120,140,146,.42),rgba(120,140,146,0));will-change:transform,opacity}.hc .c1{width:70vw;height:30vh;left:-12vw;top:6vh}.hc .c2{width:60vw;height:26vh;left:48vw;top:-2vh}.hc .c3{width:50vw;height:22vh;left:22vw;top:26vh}.hc .water{left:0;right:0;bottom:0;height:var(--wh,32%);height:calc(var(--whf,.32) * 100svh + 100lvh - 100svh);width:100%;z-index:4;display:block}.hc .copy,.hc .water{position:absolute;pointer-events:none}.hc .copy{z-index:6;left:var(--gut);top:44%;width:min(470px,36vw);perspective:900px}.hc .ch{position:absolute;left:0;top:0;width:100%;transform:translateY(-50%);opacity:0;visibility:hidden;will-change:transform,opacity}.hc .ch.on{visibility:visible;pointer-events:auto}.hc .ch.r{left:calc(100vw - 2 * var(--gut) - min(470px, 36vw))}.hc .ch.mid{left:calc(50vw - var(--gut));width:min(1100px,92vw);text-align:center;top:calc(max(96px, 14vh) - 44vh)}.hc .ch.mid .row{justify-content:center}.hc .ch.mid p{margin-left:auto;margin-right:auto}.hc .ch8{top:calc(max(92px, 11vh) - 44vh)}.hc h2.cta{font-size:clamp(46px,min(6vw,11vh),96px);letter-spacing:-.035em}.hc .ch8 .row{margin-top:clamp(22px,4vh,36px)}.hc h1,.hc h2{font-weight:400;letter-spacing:-.035em;line-height:1.02;text-wrap:balance}.hc h1{font-size:clamp(46px,6.6vw,104px)}.hc h2{font-size:clamp(36px,3.9vw,60px);letter-spacing:-.03em;line-height:1.05}.hc h1 em,.hc h2 em{font-style:normal;color:var(--teal-2)}.hc .ch p{margin-top:20px;font-size:clamp(17px,1.35vw,21px);line-height:1.45;color:var(--ink-2);max-width:30em}.hc .ch0 p{margin-top:22px;max-width:32em}.hc .row{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}.hc .ch p.sm{font-family:var(--mono);font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);margin-top:18px}.hc .scene{position:absolute;inset:0;z-index:2;perspective:1700px;perspective-origin:60% 40%;pointer-events:none}.hc .world{width:0;height:0}.hc .dev,.hc .world{position:absolute;left:0;top:0;transform-style:preserve-3d}.hc .dev{will-change:transform}.hc .dev .frame{display:block;width:100%;height:auto;user-select:none}.hc .dev .lift{position:absolute;inset:3% 2.5% 2%;border-radius:5%/7%;box-shadow:0 60px 110px -30px rgba(6,44,52,.5),0 18px 36px -18px rgba(6,44,52,.35);transform:translateZ(-1px)}.hc .phone .lift{inset:2% 10%;border-radius:16%/8%}.hc .ipad .scr{left:3.43%;top:4.87%;width:93.14%;height:90.26%;border-radius:1.6%/2.4%}.hc .ipad .scr,.hc .phone .scr{position:absolute;transform-style:preserve-3d;transform:translateZ(.5px);background:#fbfaf7}.hc .phone .scr{left:13.28%;top:7.59%;width:73.43%;height:84.82%;border-radius:9%/4.2%}.hc .lay{transform-style:flat;transform:translateZ(1px);visibility:hidden}.hc .lay,.hc .shot{position:absolute;inset:0}.hc .shot{width:100%;height:100%;display:block;border-radius:1.6%/2.4%;background:#fbfaf7}.hc .phone .shot{border-radius:9%/4.2%}.hc .shot{display:none;opacity:0;transition:opacity .45s ease}.hc .shot.vis{display:block}.hc .ipad .lay{overflow:hidden;border-radius:1.6%/2.4%;background:#fbfaf7}.hc .ipad .shot,.hc .mdev .shot{transform:translate3d(0,2.2%,0);transition:opacity .45s ease,transform .7s cubic-bezier(.2,.75,.2,1)}.hc .ipad .shot.out,.hc .mdev .shot.out{transform:translate3d(0,-1.4%,0)}.hc .ipad .shot.on,.hc .mdev .shot.on{transform:none}.hc .shot.on{opacity:1}.hc .pc{position:absolute;display:block;height:auto;border-radius:calc(16 * var(--k, .6px));transform-origin:50% 50%;will-change:transform;display:none;box-shadow:0 40px 80px -24px rgba(6,44,52,.55),0 0 0 1px rgba(16,25,26,.06)}.hc .note{position:absolute;z-index:7;left:var(--gut);bottom:clamp(10px,1.6vh,16px);bottom:calc(100lvh - 100svh + clamp(10px,1.6vh,16px));font-size:12px;color:var(--ink-3);opacity:0;transition:opacity .4s}.hc .note.on{opacity:1}.hc .steps{position:absolute;z-index:7;left:var(--gut);bottom:clamp(36px,5.4vh,54px);display:flex;gap:6px;list-style:none;opacity:0;transition:opacity .4s}.hc .steps.on{opacity:1}.hc .steps li{display:flex;align-items:center;gap:8px;padding:8px 14px 8px 10px;border-radius:999px;font-family:var(--mono);font-size:12.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-2);background:rgba(255,255,255,.84);box-shadow:inset 0 0 0 1px rgba(255,255,255,.7);transition:background .35s,color .35s}.hc .steps li:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.45}.hc .steps li.on{background:var(--teal);color:#fff;box-shadow:none}.hc .steps li.on:before{opacity:1}.hc .steps li.done{color:var(--teal)}.hc .steps li.done:before{opacity:1}@media (max-width:1180px){.hc .steps li{font-size:11px;letter-spacing:.07em;padding:7px 11px 7px 9px;gap:6px}}.hc .hint{position:absolute;z-index:7;left:50%;bottom:20px;transform:translateX(-50%);font-family:var(--mono);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--teal);transition:opacity .4s}.hc .hint:after{content:"";display:block;width:1px;height:26px;margin:8px auto 0;background:linear-gradient(var(--teal),transparent);animation:hcdrip 1.8s ease-in-out infinite}@keyframes hcdrip{0%{transform:scaleY(0);transform-origin:0 0}50%{transform:scaleY(1);transform-origin:0 0}51%{transform-origin:0 100%}to{transform:scaleY(0);transform-origin:0 100%}}.hc .foot{position:relative;z-index:2;overflow:hidden;color:rgba(235,247,248,.86);background:radial-gradient(900px 420px at 80% 0,rgba(31,127,140,.55),transparent 70%),linear-gradient(180deg,#0e5560,#0b3f47 55%,#082f36);scroll-snap-align:end}.hc .foot:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(159,216,224,.6),transparent)}.hc .foot-lines{position:absolute;inset:0;width:100%;height:100%;opacity:.5;pointer-events:none}.hc .foot-in{position:relative;max-width:1280px;margin:0 auto;padding:clamp(56px,9vh,96px) var(--gut) 36px}.hc .foot-top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:28px 40px;padding-bottom:clamp(36px,6vh,64px);border-bottom:1px solid rgba(159,216,224,.22)}.hc .foot-wm{display:block;font-weight:300;font-size:clamp(72px,12vw,168px);line-height:.9;letter-spacing:-.045em;color:#f3fafa}.hc .foot-brand p{margin-top:14px;font-size:clamp(17px,1.5vw,21px);color:rgba(214,238,241,.8)}.hc .foot-go{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.hc .foot-go .btn{padding:18px 40px;font-size:18px}.hc .foot-go span{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:rgba(214,238,241,.65)}.hc .foot-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:36px 0}.hc .foot-cols nav{display:flex;flex-direction:column;gap:10px;min-width:0}.hc .foot-cols b{font-family:var(--mono);font-weight:400;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:#9fd8e0;margin-bottom:4px}.hc .foot-cols a{font-size:15.5px;color:rgba(235,247,248,.86);overflow-wrap:anywhere}.hc .foot-cols a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}.hc .fine{font-size:12.5px;color:rgba(214,238,241,.5);max-width:60em}@media (max-width:820px) and (max-aspect-ratio:6/5){.hc .tag,.hc .top .lnk{display:none}.hc .top{padding:14px 16px}.hc .wm{font-size:24px}.hc .copy{left:16px;right:16px;width:auto;top:max(78px,calc(env(safe-area-inset-top) + 68px))}.hc .ch{transform:none}.hc .ch.mid{left:0;width:100%;top:0}.hc .ch.r{left:0}.hc .ch8{top:4vh}.hc h2.cta{font-size:clamp(40px,11vw,54px)}.hc .btn.huge{padding:18px 44px;font-size:19px}.hc .steps{display:none}.hc .foot-cols{grid-template-columns:1fr 1fr;grid-auto-flow:dense}.hc .foot-cols nav:nth-child(2){grid-column:1/-1}.hc h1{font-size:clamp(38px,11vw,52px)}.hc h2{font-size:clamp(31px,8.6vw,42px)}.hc .ch p{margin-top:12px;font-size:16.5px}.hc .ch0 p{margin-top:14px}.hc .row{margin-top:20px;gap:10px}.hc .btn{padding:14px 22px;font-size:16px}.hc .ch p.sm{font-size:11.5px;margin-top:14px}.hc .scene{perspective:1100px;perspective-origin:50% 60%}.hc .note{left:16px;right:16px;text-align:center;bottom:8px;bottom:calc(100lvh - 100svh + 8px);font-size:11px;color:#2c4549;text-shadow:0 0 10px rgba(255,255,255,.75)}.hc .hint{display:none}}.hc .mdev{display:none}@media (max-width:600px) and (max-aspect-ratio:6/5){.hc .air,.hc .cloud,.hc .scene,.hc .snap,.hc .steps,.hc .sun{display:none}.hc .sky{background:linear-gradient(180deg,#cfe5ea,#e4f0f2 420px,#f4f9f9 1200px,#eef6f6)}.hc .chart{height:110svh;opacity:.75!important;-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}.hc .top{background:rgba(237,245,246,.97);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(20,60,66,.07)}.hc .mdev{display:block;width:min(80vw,320px);margin:30px auto 0;perspective:1000px;perspective-origin:50% 35%}.hc .mph{position:relative;isolation:isolate;transform-origin:50% 70%}.hc .mph:before{content:"";position:absolute;inset:5.4% 9.3% 5.4% 8.5%;border-radius:14%/7%;box-shadow:0 44px 70px -30px rgba(6,44,52,.42),0 14px 30px -18px rgba(6,44,52,.3);z-index:-1}.hc .mph .frame{display:block;width:100%;height:auto}.hc .mph .scr{position:absolute;left:13.28%;top:7.59%;width:73.43%;height:84.82%;overflow:hidden;background:#fbfaf7}.hc .mph .scr,.hc .mph .shot{border-radius:9%/4.2%}html:has(.hc:not(.mjs)){scroll-snap-type:none}.hc:not(.mjs) .hint{display:none}.hc:not(.mjs) .mdev .shot:first-child{display:block;opacity:1;transform:none}.hc:not(.mjs) .story{height:auto;background:#eef6f6}.hc:not(.mjs) .stage{position:relative;height:auto;display:flex;flex-direction:column;overflow:hidden}.hc:not(.mjs) .copy{display:contents}.hc:not(.mjs) .ch,.hc:not(.mjs) .ch.mid,.hc:not(.mjs) .ch.r,.hc:not(.mjs) .ch8{position:relative;left:auto;top:auto;width:auto;z-index:1;opacity:1!important;visibility:visible!important;transform:none!important;will-change:auto;pointer-events:auto;padding:76px 20px 0}.hc:not(.mjs) .ch0{padding-top:calc(env(safe-area-inset-top) + 92px)}.hc:not(.mjs) .ch8{order:3;padding-top:84px}.hc:not(.mjs) .note{position:relative;order:2;left:auto;right:auto;bottom:auto;opacity:1!important;margin:52px 24px 0;font-size:12px;color:var(--ink-3);text-shadow:none;z-index:1}.hc:not(.mjs) .water{position:relative;order:4;height:150px;margin-top:44px;z-index:1;transform:none!important}html:has(.hc.mjs){scroll-snap-type:none;overscroll-behavior-y:none}.hc.mjs .story{height:100vh;height:100lvh;background:#eef6f6}.hc.mjs .stage{position:relative;height:100vh;height:100lvh;overflow:hidden}.hc.mjs .copy{left:0;right:0;top:0;bottom:0;width:auto;perspective:none}.hc.mjs .ch,.hc.mjs .ch.mid,.hc.mjs .ch.r,.hc.mjs .ch8{left:0;right:0;top:0;width:auto;height:100vh;height:100svh;transform:none;will-change:auto;padding:calc(env(safe-area-inset-top) + 86px) 20px 0}.hc.mjs .ch8{display:flex;flex-direction:column;justify-content:center;padding-bottom:20svh}.hc.mjs h2{font-size:clamp(29px,8.2vw,40px)}.hc.mjs .ch p:not(.sm){font-size:16px}.hc.mjs .mdev{margin:18px auto 0}.hc.mjs .ch0 .mdev{display:none}.hc.mjs .water{height:calc(15svh + 100lvh - 100svh);z-index:7}.hc.mjs .stage:after{content:"";position:absolute;left:0;right:0;bottom:0;height:calc(10svh + 100lvh - 100svh);z-index:7;pointer-events:none;background:linear-gradient(rgba(76,128,136,0),rgba(70,122,130,.78) 55%,rgba(62,112,120,.9))}.hc.mjs .note{z-index:8;color:rgba(240,250,251,.94);text-shadow:0 1px 8px rgba(10,50,56,.35)}.hc.mjs .hint{display:block;z-index:8;bottom:calc(100lvh - 100svh + 15svh + 6px);color:#0b5560}}@media (max-height:520px) and (min-aspect-ratio:6/5){.hc .tag{display:none}.hc .top{padding:10px var(--gut)}.hc .wm{font-size:22px}.hc .btn.sm{padding:8px 16px;font-size:14px}.hc .copy{top:54%}.hc .ch.mid{top:calc(64px - 54vh)}.hc .ch8{top:calc(58px - 54vh)}.hc h1{font-size:clamp(28px,5vw,40px)}.hc h2{font-size:clamp(24px,3.6vw,32px)}.hc h2.cta{font-size:clamp(30px,5vw,44px)}.hc .ch p{font-size:14.5px;line-height:1.4}.hc .ch p,.hc .ch0 p{margin-top:10px}.hc .ch0 p.sm{display:none}.hc .row{gap:8px}.hc .ch8 .row,.hc .row{margin-top:14px}.hc .btn{padding:10px 18px;font-size:14.5px}.hc .btn.big{padding:11px 20px;font-size:15px}.hc .btn.huge{padding:13px 32px;font-size:16px}.hc .ch p.sm{font-size:10.5px;margin-top:10px}.hc .hint,.hc .steps{display:none}.hc .note{bottom:6px;font-size:10.5px}}@media (prefers-reduced-motion:reduce){.hc .chart,.hc .hint:after{animation:none}}.nface{width:76px;height:76px;margin:0 0 20px;padding:3px;background:linear-gradient(140deg,#fff,#cfe9ee);box-shadow:0 8px 22px rgba(20,128,143,.22),0 0 0 1px rgba(20,128,143,.12)}.nface,.nface img{display:block;border-radius:50%}.nface img{width:100%;height:100%;object-fit:cover}.hc .ch.mid .nface{margin:24px auto 0}@media (min-width:601px){.hc .ch0 .nface{width:64px;height:64px;margin-top:20px}}@media (max-width:600px){.hc .ch.mid .nface{margin:16px auto 0}}@media (max-width:600px) and (max-height:700px){.hc.mjs .ch0 .nface{display:none}}@media (max-width:600px){.nface{width:54px;height:54px;padding:2px;margin-bottom:12px}}