:root{--display:var(--f-display),"Avenir Next","Segoe UI",sans-serif;--text:var(--f-text),"Helvetica Neue","Segoe UI",sans-serif;--mono:var(--f-mono),ui-monospace,Menlo,monospace;--gutter:clamp(16px,4vw,48px)}html,body{height:auto}body.site{font-size:16px;line-height:1.5}.site h1,.site h2,.site h3{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);margin:0}.site a{color:inherit}.grow{flex:1}.skip,.skip-film{left:var(--gutter);z-index:100;background:var(--ink);color:var(--card);border-radius:var(--r-ctl);padding:10px 16px;font-weight:500;text-decoration:none;position:absolute;top:-100px}.skip:focus,.skip-film:focus{top:12px}.skip-film:focus{position:fixed;top:72px}.sh{z-index:50;padding:12px var(--gutter);background:var(--canvas);border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent);align-items:center;gap:20px;display:flex;position:sticky;top:0}.sh-brand{font:700 19px var(--display);letter-spacing:-.02em;align-items:center;gap:10px;text-decoration:none;display:flex}.sh-nav{align-items:center;gap:22px;font-size:15px;display:flex}.sh-nav>a{color:var(--ink2);text-decoration:none}.sh-nav>a:hover{color:var(--ink)}.sh-apps{position:relative}.sh-apps>summary{cursor:pointer;color:var(--ink2);list-style:none}.sh-apps>summary::-webkit-details-marker{display:none}.sh-apps>summary:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:6px;height:6px;margin-left:8px;display:inline-block;transform:translateY(-3px)rotate(45deg)}.sh-apps[open]>summary{color:var(--ink)}.sh-apps ul{background:var(--card);border-radius:var(--r-in);box-shadow:var(--pop);grid-template-columns:repeat(2,minmax(200px,1fr));gap:2px;width:max-content;margin:0;padding:8px;list-style:none;display:grid;position:absolute;top:calc(100% + 14px);left:-12px}.sh-apps li a{border-radius:12px;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;display:flex}.sh-apps li a:hover{background:var(--sunk)}.sh-apps li span{flex-direction:column;line-height:1.25;display:flex}.sh-apps small{color:var(--ink3);font-size:13px}@media (max-width:760px){.sh{gap:12px}.sh-hide{display:none}.sh-nav{gap:14px;font-size:14px}.sh-apps ul{grid-template-columns:1fr;width:auto;position:fixed;left:16px;right:16px}}.sf{padding:56px var(--gutter) 72px;border-top:1px solid var(--line);grid-template-columns:1.4fr repeat(3,1fr);gap:32px;margin-top:64px;display:grid}.sf nav{flex-direction:column;gap:8px;font-size:14px;display:flex}.sf nav b{margin-bottom:4px;font-weight:600}.sf nav a{color:var(--ink2);text-decoration:none}.sf nav a:hover{color:var(--ink);text-decoration:underline}.sf-brand{align-self:start;align-items:center;gap:10px;font-weight:500;display:flex}@media (max-width:760px){.sf{grid-template-columns:1fr 1fr}.sf-brand{grid-column:1/-1}}.film-page{display:block}.scene{padding:56px var(--gutter);position:relative}.stage{grid-template-columns:minmax(260px,.62fr) minmax(0,1.38fr);align-items:center;gap:clamp(24px,4vw,64px);max-width:1440px;margin:0 auto;display:grid}.scene.copy-top .stage,.scene.wide .stage{grid-template-columns:minmax(0,1fr);align-content:center}.scene.copy-top .scene-copy,.scene.wide .scene-copy{text-align:center;max-width:720px;margin:0 auto}.scene-copy h1,.scene-copy h2{font-size:clamp(34px,4.6vw,64px);font-weight:700;line-height:1.02}.scene-copy p{color:var(--ink2);max-width:34ch;margin:18px 0 0;font-size:clamp(17px,1.5vw,20px);line-height:1.45}.scene.copy-top .scene-copy p,.scene.wide .scene-copy p{margin-left:auto;margin-right:auto}.stage-art{min-width:0;height:clamp(420px,62vh,640px);position:relative;container-type:inline-size}.scene.wide .stage-art{height:clamp(360px,52vh,560px)}.film .scene{height:220svh;padding:0 var(--gutter)}.film .scene.copy-top .stage-art{height:clamp(280px,100svh - 400px,560px)}.film .scene.short{height:200svh}.film .stage{height:100svh;padding:64px 0 24px;position:sticky;top:0}@media (max-width:860px){.stage{grid-template-columns:minmax(0,1fr);gap:20px}.scene-copy p{max-width:none}.stage-art{height:420px}.film .scene{height:170svh}.film .stage{align-content:start;padding-top:72px}}@media (prefers-reduced-motion:reduce){.film .scene{height:auto}.film .stage{height:auto;position:static}}.mock{background:var(--canvas);box-shadow:var(--pop);border:1px solid var(--line);border-radius:22px;grid-template-columns:52px minmax(0,1fr);font-size:13px;display:grid;position:absolute;inset:0;overflow:hidden}.mock.peeked{grid-template-columns:52px minmax(0,1fr) minmax(240px,34%)}.mock .rail{gap:8px;padding:12px 0}.mock .rail .tile{border-radius:8px;width:26px;height:26px;margin:3px 0 0 3px}.mock .rail .tile svg{width:15px;height:15px}.mock .rail .tile.mark{width:28px;height:28px;margin:0}.mock .rail .tile.mark svg{width:28px;height:28px}.mock-main{flex-direction:column;gap:14px;min-width:0;padding:16px 18px;display:flex;overflow:hidden}.mock-top{align-items:center;gap:10px;display:flex}.mock-top h3{font-size:20px}.mock .peek{border-radius:0;gap:12px;padding:16px;animation:none;overflow:hidden}.mock .lanes{grid-auto-columns:minmax(150px,1fr);gap:10px;overflow:visible}.mock .lane{gap:8px;padding:8px}.mock .tk{gap:8px;padding:10px}.mock .tk h4{font-size:13px;line-height:1.3}.mock .tk.ghost{opacity:.35}.mock .tinted{box-shadow:0 0 0 2px color-mix(in srgb,var(--ink) 50%,transparent),var(--pop)}.mock .row{align-items:center;gap:8px;display:flex}.mock .between{justify-content:space-between}.mock .meta{color:var(--ink3);font-size:12px}.m-person{z-index:10;pointer-events:none;align-items:flex-start;gap:2px;display:inline-flex;position:absolute}.m-person svg{fill:var(--ink);stroke:var(--card);stroke-width:1.2px;filter:drop-shadow(0 1px 2px #00000040)}.m-person span{background:var(--app);color:var(--on-app);font:600 11px var(--text);white-space:nowrap;border-radius:999px;margin-top:14px;padding:3px 9px}.m-agent{z-index:10;background:var(--ink);color:var(--card);font:600 11px var(--text);white-space:nowrap;pointer-events:none;border-radius:4px;padding:4px 8px;position:absolute}.draw{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.draw .c{fill:var(--card);stroke:var(--ink);stroke-width:2px}.draw .c.ink{fill:var(--ink)}.draw .ln{stroke:var(--line);stroke-width:2px}.draw .bar{fill:var(--app)}.draw .sq{fill:var(--ink3);opacity:.35}.draw .sq.ch{fill:var(--channel);opacity:1}[data-kf]{will-change:transform,opacity}.draw [data-kf]{transform-box:fill-box;transform-origin:50%}.approw{align-items:center;gap:24px;padding:0 6%;display:flex;position:absolute;inset:0}.appcard{background:var(--card);border-radius:var(--r-card);width:min(420px,70cqw);height:88%;box-shadow:var(--lift);color:inherit;flex-direction:column;flex:none;gap:14px;padding:22px;text-decoration:none;display:flex}.appcard h3{align-items:center;gap:10px;font-size:22px;display:flex}.appcard .face{background:var(--canvas);border-radius:16px;flex-direction:column;flex:1;gap:8px;padding:14px;display:flex;overflow:hidden}.start{text-align:center;align-content:center;place-items:center;gap:28px;display:grid;position:absolute;inset:0}.plates{place-items:center;display:grid}.plates .tile.mark,.plates .tile.mark svg{width:120px;height:120px}.plates .tile:not(.mark){border-radius:26px;width:96px;height:96px}.plates .tile:not(.mark) svg{width:56px;height:56px}.ctas{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.btn.lg{padding:14px 26px;font-size:16px}.page{max-width:1120px;padding:56px var(--gutter) 24px;flex-direction:column;gap:32px;margin:0 auto;display:flex}.page.narrow{max-width:820px}.page-head h1{font-size:clamp(36px,5vw,60px);line-height:1.04}.page-head p{color:var(--ink2);max-width:52ch;margin:14px 0 0;font-size:19px}.seg{background:var(--sunk);border-radius:var(--r-ctl);flex-wrap:wrap;gap:4px;padding:4px;display:inline-flex}.seg a,.seg button{font:inherit;border-radius:var(--r-ctl);color:var(--ink2);cursor:pointer;background:0 0;border:0;padding:8px 16px;font-size:14px;text-decoration:none}.seg [aria-current=true],.seg [aria-pressed=true]{background:var(--card);color:var(--ink);box-shadow:var(--lift)}.price{font:700 clamp(44px,6vw,72px)/1 var(--display);letter-spacing:-.03em}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}@media (max-width:760px){.grid2{grid-template-columns:minmax(0,1fr)}}.t{border-collapse:collapse;width:100%;font-size:15px}.t th,.t td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:12px 10px}.t th{color:var(--ink2);font-size:13px;font-weight:600}.t td.r,.t th.r{text-align:right}.faq details{border-bottom:1px solid var(--line);padding:16px 0}.faq summary{cursor:pointer;font-size:17px;font-weight:500}.faq details p{color:var(--ink2);max-width:70ch;margin:10px 0 0}.prose{font-size:17px;line-height:1.65}.prose h2{margin:36px 0 12px;font-size:28px}.prose h3{margin:28px 0 10px;font-size:21px}.prose p,.prose li{max-width:70ch;color:var(--ink2)}.prose code{font-family:var(--mono);background:var(--sunk);border-radius:6px;padding:2px 6px;font-size:.9em}.prose pre{background:var(--sunk);border-radius:14px;padding:16px;font-size:14px;overflow:auto}.prose pre code{background:0 0;padding:0}.prose a{color:var(--app-ink)}.tag{background:var(--sunk);color:var(--ink2);border-radius:999px;align-items:center;gap:6px;padding:2px 8px;font-size:12px;font-weight:500;display:inline-flex}.copybox{background:var(--card);border-radius:var(--r-in);box-shadow:var(--lift);font-family:var(--mono);align-items:center;gap:10px;padding:10px 10px 10px 16px;font-size:15px;display:flex}.copybox code{white-space:nowrap;flex:1;overflow:auto}.cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.cards a{text-decoration:none}.tool{border-top:1px solid var(--line);grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:16px;padding:14px 0;display:grid}.tool code{font-family:var(--mono);word-break:break-all;font-size:14px}.tool p{color:var(--ink2);margin:0;font-size:14px}.tool .args{font-family:var(--mono);color:var(--ink3);margin-top:6px;font-size:12px}@media (max-width:760px){.tool{grid-template-columns:minmax(0,1fr)}}.entry{border-top:1px solid var(--line);grid-template-columns:140px minmax(0,1fr);gap:20px;padding:22px 0;display:grid}.entry h2{font-size:21px}@media (max-width:760px){.entry{grid-template-columns:minmax(0,1fr);gap:6px}}.chatsplit{grid-template-columns:38% minmax(0,1fr);gap:16px;display:grid;position:absolute;inset:0}.chat{background:var(--card);box-shadow:var(--pop);border:1px solid var(--line);border-radius:22px;flex-direction:column;gap:12px;padding:18px;font-size:14px;display:flex;overflow:hidden}.chat-msg{background:var(--sunk);border-radius:16px;max-width:92%;padding:10px 14px;line-height:1.4}.chat-msg.me{background:var(--ink);color:var(--card);align-self:flex-end}.chat-tool{border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.chat-tool code{font-family:var(--mono);font-size:13px;font-weight:500}.chat-tool pre{font-family:var(--mono);color:var(--ink2);white-space:pre-wrap;word-break:break-all;margin:0;font-size:11px}.chat-app{position:relative}.imp-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.imp-stats .card{flex-direction:column;gap:2px;display:flex}.imp-map{flex-direction:column;gap:6px;display:flex}.imp-row{border-top:1px solid var(--line);grid-template-columns:1fr 16px 1fr 16px;align-items:center;gap:10px;padding:6px 4px;font-size:13px;display:grid}.imp-row svg:last-child{color:var(--good)}@media (max-width:860px){.chatsplit{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.chat-tool pre{display:none}}.tickbox{background:var(--good);width:18px;height:18px;color:var(--card);border-radius:5px;place-items:center;display:inline-grid}.ringswap{display:inline-grid}.ringswap>*{grid-area:1/1}.tinted-ring .ring{box-shadow:0 0 0 3px color-mix(in srgb,var(--ink) 30%,transparent)}.stack{height:100%;position:relative}.stack .layer{flex-direction:column;gap:12px;display:flex;position:absolute;inset:0}.linkchip{box-shadow:0 0 0 2px color-mix(in srgb,var(--harbor) 45%,transparent)}.trail{flex-direction:column;gap:14px;width:min(620px,100%);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.trail .act{align-items:center;font-size:15px}.trail-new{min-height:40px;display:grid;position:relative}.trail-new>.act{grid-area:1/1}.tinted-row{background:color-mix(in srgb,var(--ink) 8%,var(--card));border-radius:12px;margin:-6px -8px;padding:6px 8px}.gate-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:14px;height:100%;display:grid}.gate-day{border-top:1px solid var(--line);padding:6px 0}.gate-post{background:var(--sunk);border-radius:12px;margin:0;padding:10px 12px;font-size:14px;line-height:1.5}.claim{display:inline-grid}.claim>*{grid-area:1/1}.claim>:first-child{background:color-mix(in srgb,var(--bad) 18%,transparent)}.gate-row{border-top:1px solid var(--line);padding:6px 0}.stack-inline{display:inline-grid}.stack-inline>*{grid-area:1/1;justify-self:end}.stepper{color:var(--ink3);gap:22px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.stepper li{align-items:center;gap:8px;display:flex}.stepper .dot{background:var(--line);border-radius:50%;width:10px;height:10px}.stepper li.done{color:var(--ink)}.stepper li.done .dot,.stepper li.next .dot{background:var(--good)}.payroll td,.payroll th{padding:8px 6px;font-size:13px}.film .approw{flex-wrap:nowrap}.approw{flex-wrap:wrap;place-content:center;overflow:visible}.film .approw{justify-content:flex-start;padding-left:calc(50% - min(210px,35cqw))}.scene:not(.film *) .appcard{height:auto}@media (max-width:860px){.gate-grid{grid-template-columns:minmax(0,1fr)}.gate-grid>:first-child{display:none}}.doc-mock{flex-direction:column;gap:12px;height:100%;padding:22px;font-size:15px;line-height:1.55;display:flex;position:relative;overflow:hidden}.doc-mock h4{font:600 17px var(--display);margin:6px 0 0}.doc-mock p{color:var(--ink2);margin:0}.sugg{display:inline-grid}.sugg>*{grid-area:1/1}.sugg .old{color:var(--bad-ink);text-decoration:line-through}.sugg .new{background:color-mix(in srgb,var(--ink) 10%,transparent);border-radius:4px;padding:0 3px}.suggbar{background:var(--sunk);border-radius:12px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:flex}.slash{z-index:5;background:var(--card);box-shadow:var(--pop);border-radius:14px;flex-direction:column;gap:2px;min-width:200px;padding:8px;display:flex;position:absolute;top:90px;left:30px}.slash-row{border-radius:8px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:flex}.slash-row.on{background:var(--sunk)}.viewtabs{background:var(--sunk);border-radius:999px;gap:4px;padding:3px;display:inline-flex}.tabchip{color:var(--ink2);border-radius:999px;padding:4px 10px;font-size:12px}.tabchip.on{background:var(--card);color:var(--ink);box-shadow:var(--lift)}.vstack{display:grid}.vstack>*{grid-area:1/1}.t.mini td,.t.mini th{padding:8px 6px;font-size:13px}.lanes.mini{grid-auto-columns:minmax(120px,1fr)}.pipe-stats{grid-template-columns:1.6fr 1fr 1fr;gap:10px}.pipe-stats .inkblock{border-radius:16px;padding:14px 16px}.pipe-stats .card{flex-direction:column;justify-content:space-between;display:flex}.draft{background:var(--sunk);border-radius:10px;align-items:center;gap:6px;padding:6px 8px;font-size:12px;display:flex}.week{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.score{font:700 16px var(--display);color:var(--good-ink)}.tl{flex-direction:column;gap:12px;padding-top:8px;display:flex;position:relative}.tl-row{grid-template-columns:150px minmax(0,1fr);align-items:center;gap:10px;font-size:13px;display:grid}.tl-track{background:repeating-linear-gradient(90deg,var(--line) 0 1px,transparent 1px 7%);border-radius:8px;height:28px;position:relative}.tl-bar{background:var(--app);border-radius:999px;height:20px;position:absolute;top:4px}.tl-dep{fill:none;height:80px;stroke:var(--ink3);stroke-width:.6px;position:absolute;top:20px;left:150px;right:0}.crewgrid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px;height:100%;display:grid}.month{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.dayc{background:var(--sunk);border-radius:5px;height:20px}.dayc.lv{background:var(--crew)}.plan{flex:1;align-items:flex-end;gap:6px;min-height:120px;display:flex;position:relative}.col-bar{background:var(--app);transform-origin:bottom;border-radius:6px 6px 2px 2px;flex:1}.col-bar.fc{background:repeating-linear-gradient(135deg,var(--app) 0 4px,color-mix(in srgb,var(--app) 35%,var(--card)) 4px 8px)}@media (max-width:860px){.pipe-stats{grid-template-columns:1fr}.pipe-stats>:not(:first-child){display:none}.week{grid-template-columns:repeat(3,minmax(0,1fr))}.week>:nth-child(n+4){display:none}.crewgrid{grid-template-columns:1fr}.tl-row{grid-template-columns:100px 1fr}}.switchlink a{color:var(--app-ink)}[data-app=spring]{--app:var(--spring)}[data-app=harbor]{--app:var(--harbor)}[data-app=tide]{--app:var(--tide)}[data-app=channel]{--app:var(--channel)}[data-app=crew]{--app:var(--crew)}[data-app=sounding]{--app:var(--sounding)}[data-app=harbor],[data-app=sounding]{--on-app:#fff}.switchlink{margin-top:16px;font-size:15px}html:not(.film) .scene[data-scene=apps] .stage-art{height:auto}html:not(.film) .approw{padding:0;position:static}html:not(.film) .appcard{width:min(320px,100%);height:300px}.price.sm{font-size:clamp(32px,4vw,44px)}.tablewrap{overflow-x:auto}.cmp-row{border-bottom:1px solid var(--line);cursor:pointer;align-items:flex-start;gap:12px;padding:10px 0;display:flex}.cmp-row input{width:18px;height:18px;margin-top:3px}.cmp-row .r{text-align:right;align-items:flex-end;gap:2px}.cmp-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.cmp-out{justify-content:center}.cmp-line{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:8px 0;font-size:17px;display:flex}.cmp-line b{font:700 24px var(--display)}.cmp-line.diff{border:0}.cmp-line.diff b{color:var(--good)}.steps4{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.steps4 li{flex-direction:column;gap:6px;padding:16px;display:flex}@media (max-width:760px){.steps4{grid-template-columns:repeat(2,minmax(0,1fr))}}.tag.gap{background:color-mix(in srgb,var(--bad) 14%,var(--card));color:var(--ink)}.tag.same{background:color-mix(in srgb,var(--good) 16%,var(--card));color:var(--ink)}.in.lg{min-height:52px;padding:12px 18px;font-size:17px}.hits{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.hits a{border-radius:var(--r-in);color:var(--ink);flex-direction:column;gap:4px;padding:12px 14px;text-decoration:none;display:flex}.hits a:hover,.hits a:focus-visible{background:var(--sunk)}.hits span{color:var(--ink2);font-size:14px}.docnav{flex-wrap:wrap;gap:8px 18px;font-size:14px;display:flex}.crumbs{color:var(--ink3);gap:8px;font-size:14px;display:flex}.crumbs a{color:var(--ink2)}.mono-call{font-family:var(--mono);background:var(--sunk);white-space:nowrap;border-radius:10px;padding:8px 10px;font-size:13px;display:block;overflow-x:auto}.toolgroup{border-top:1px solid var(--line);padding:12px 0}.toolgroup summary{cursor:pointer;padding:4px 0;font-size:17px}.seg{align-self:flex-start}.card .meta{font-size:14px}.sh-apps>summary{white-space:nowrap}@media (max-width:420px){.sh-nav{gap:12px}.sh{gap:10px}}@media (max-width:600px){.t.rowstack thead{display:none}.t.rowstack tr{border-bottom:1px solid var(--line);padding:12px 0;display:block}.t.rowstack td{border:0;padding:2px 0;display:block}.t.rowstack td.r{text-align:left}.t.rowstack td:first-child{color:var(--ink);font-weight:500}.t.rowstack td+td{color:var(--ink2)}}[data-entry][hidden]{display:none}.mock .peek{z-index:auto;position:relative;inset:auto}@media (max-width:760px){.mock.peeked{grid-template-columns:44px minmax(0,1fr)}.mock .peek{width:80%;box-shadow:var(--pop);border-left:1px solid var(--line);position:absolute;top:0;bottom:0;right:0}.mock,.mock.peeked{grid-template-columns:minmax(0,1fr)}.mock .rail{display:none}}.home,.shot{display:block}.shot img{border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);background:var(--card);border-radius:18px;width:100%;height:auto;display:block}.shot.phone img{border-radius:32px}.band-link{text-underline-offset:4px;align-items:center;gap:8px;margin-top:22px;font-size:16px;font-weight:500;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.band-link:after{content:"→";text-decoration:none}.hero{padding:clamp(48px,8vw,104px) var(--gutter) 0;flex-direction:column;align-items:center;gap:clamp(36px,5vw,64px);display:flex;overflow:hidden}.hero-copy{text-align:center;max-width:860px}.hero h1{font-size:clamp(42px,6.4vw,88px);font-weight:700;line-height:.98}.hero-copy p{color:var(--ink2);max-width:46ch;margin:22px auto 0;font-size:clamp(17px,1.6vw,21px);line-height:1.45}.hero-shot{width:min(1240px,100%);margin-bottom:-12%}.hero-shot img{border-bottom-right-radius:0;border-bottom-left-radius:0}.home>.scene:first-of-type{margin-top:0}.intro{padding:clamp(72px,10vw,140px) var(--gutter) clamp(40px,5vw,64px);text-align:center;max-width:900px;margin:0 auto}.intro h2{font-size:clamp(34px,4.6vw,60px);line-height:1.02}.intro p{color:var(--ink2);max-width:44ch;margin:18px auto 0;font-size:clamp(17px,1.5vw,20px)}.band{--fg:#fff;background:var(--app);color:var(--fg);padding:clamp(56px,7vw,112px) 0 clamp(56px,7vw,112px) var(--gutter);grid-template-columns:minmax(260px,.55fr) minmax(0,1.45fr);align-items:center;gap:clamp(28px,4vw,72px);display:grid;overflow:hidden}.band[data-app=harbor]{--app:#1f4e8c}.band[data-app=spring]{--app:#17885a}.band h1,.band h2{color:var(--fg);font-size:clamp(40px,5.4vw,76px);line-height:1}.band p{max-width:30ch;color:color-mix(in srgb,var(--fg) 86%,transparent);margin:18px 0 0;font-size:clamp(17px,1.5vw,21px);line-height:1.45}.band-mark{margin-bottom:22px;display:inline-flex}.band-shot{margin-right:-14%}.band-shot img{border-color:#0000002e}.band .band-link{color:var(--fg)}.ai{padding:clamp(72px,9vw,128px) var(--gutter);grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(28px,5vw,88px);max-width:1360px;margin:0 auto;display:grid}.ai h2,.connect h2,.sec h2,.sec h1,.can h2,.rs-copy h2,.priceline h2,.compare h2,.faq h2{font-size:clamp(32px,4vw,52px);line-height:1.02}.ai-copy p,.cn-copyhead p,.sec-copy p,.can-copy p,.rs-copy p{color:var(--ink2);max-width:36ch;margin:16px 0 0;font-size:clamp(17px,1.5vw,20px);line-height:1.45}.ai-chat{background:var(--card);border:1px solid var(--line);border-radius:28px;flex-direction:column;gap:14px;padding:clamp(20px,3vw,36px);font-size:15px;line-height:1.5;display:flex}.ai-msg p{margin:0}.ai-msg.me{background:var(--sunk);border-radius:18px;align-self:flex-end;max-width:80%;padding:9px 16px}.ai-msg.bot{max-width:94%}.ai-msg ol{flex-direction:column;gap:8px;margin:6px 0 0;padding-left:22px;display:flex}.ai-tool{font:12px var(--mono);color:var(--ink3);border:1px solid var(--line);border-radius:999px;align-self:flex-start;align-items:center;gap:8px;padding:4px 10px;display:inline-flex}.ai-tool i{background:var(--good);border-radius:50%;width:7px;height:7px}.connect{padding:clamp(56px,8vw,112px) var(--gutter);grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(28px,5vw,88px);max-width:1360px;margin:0 auto;display:grid}.cn-rules{flex-direction:column;margin:26px 0 0;padding:0;list-style:none;display:flex}.cn-rules li{border-top:1px solid var(--line);padding:12px 0;font-size:16px}.cn-rules li:last-child{border-bottom:1px solid var(--line)}.cn-panel{color:#eef1f0;background:#121615;border-radius:28px;min-width:0;padding:clamp(18px,2.4vw,28px)}.cn-tabs{background:#ffffff0f;border-radius:999px;flex-wrap:wrap;gap:4px;width:max-content;max-width:100%;padding:4px;display:flex}.cn-tabs button{color:#b4bcb9;font:500 14px var(--text);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:8px 16px;transition:background-color .16s,color .16s}.cn-tabs button[aria-selected=true]{color:#121615;background:#eef1f0}.cn-tabs button:focus-visible,.cn-copy:focus-visible{outline-offset:2px;outline:2px solid #3cc48c}.cn-steps{counter-reset:s;flex-direction:column;margin:22px 0 0;padding:0;list-style:none;display:flex}[role=tabpanel][hidden]{display:none}.cn-steps li{counter-increment:s;border-top:1px solid #ffffff1a;grid-template-columns:28px minmax(0,1fr);gap:4px 12px;padding:16px 0;font-size:15px;display:grid}.cn-steps li:before{content:counter(s);font:600 13px var(--mono);color:#939c99;grid-row:span 2;padding-top:2px}.cn-steps li.cn-done span{color:#3cc48c}.cn-code{background:#ffffff0f;border-radius:12px;grid-column:2;align-items:center;gap:10px;min-width:0;margin-top:8px;padding:8px 8px 8px 14px;display:flex}.cn-code code{font:13px var(--mono);white-space:nowrap;flex:1;overflow-x:auto}.cn-copy{color:#eef1f0;font:500 13px var(--text);cursor:pointer;background:#ffffff1a;border:0;border-radius:999px;padding:6px 12px}.cn-copy:hover{background:#ffffff2e}.sec{padding:clamp(56px,8vw,112px) var(--gutter);grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,88px);max-width:1360px;margin:0 auto;display:grid}.page .sec{max-width:none;margin:0;padding:0}.sec-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(20px,3vw,48px);margin:0;display:grid}.sec-list div{border-top:1px solid var(--line);padding:18px 0}.sec-list dt{font:600 17px var(--display);letter-spacing:-.01em}.sec-list dd{color:var(--ink2);margin:6px 0 0;font-size:15px;line-height:1.5}.priceline{text-align:center;padding:clamp(72px,10vw,140px) var(--gutter) clamp(40px,5vw,72px);max-width:860px;margin:0 auto}.priceline h2{font-size:clamp(40px,5.4vw,76px)}.priceline p{color:var(--ink2);max-width:40ch;margin:18px auto 0;font-size:clamp(17px,1.5vw,21px)}.priceline .ctas{margin-top:30px}.row-shot{padding:clamp(56px,7vw,104px) 0 clamp(56px,7vw,104px) var(--gutter);grid-template-columns:minmax(240px,.55fr) minmax(0,1.45fr);align-items:center;gap:clamp(28px,4vw,72px);display:grid;overflow:hidden}.row-shot .rs-shot{margin-right:-12%}.row-shot.flip{padding:clamp(56px,7vw,104px) var(--gutter) clamp(56px,7vw,104px) 0;grid-template-columns:minmax(0,1.45fr) minmax(240px,.55fr)}.row-shot.flip .rs-shot{order:-1;margin:0 0 0 -12%}.row-shot.phone{padding:clamp(56px,7vw,104px) var(--gutter);grid-template-columns:minmax(240px,1fr) minmax(0,1fr);max-width:1200px;margin:0 auto}.row-shot.phone .rs-shot{justify-content:center;margin:0;display:flex}.row-shot.phone .shot{width:min(340px,80vw)}.row-shot.phone.flip .rs-shot{order:-1}.can{padding:clamp(56px,7vw,104px) var(--gutter);grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:12px clamp(28px,5vw,88px);max-width:1360px;margin:0 auto;display:grid}.can ul{grid-row:span 2;margin:0;padding:0;list-style:none}.can li{border-top:1px solid var(--line);padding:16px 0;font-size:18px}.can li:last-child{border-bottom:1px solid var(--line)}.can .band-link{color:var(--app-ink,var(--ink));align-self:start;margin-top:8px}.page.wide{max-width:1280px}.plans{flex-direction:column;gap:22px;display:flex}.plan-opts{flex-wrap:wrap;gap:10px;display:flex}.plan-row{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.tier{border-left:1px solid var(--line);flex-direction:column;gap:10px;min-width:0;padding:26px 22px 28px;display:flex}.tier:first-child{border-left:0;padding-left:0}.tier.lead{background:var(--card);border-left-color:#0000;border-radius:22px}.tier.lead+.tier{border-left-color:#0000}.tier h3{font-size:24px}.tier .price{margin-top:10px;font-size:clamp(34px,3.4vw,48px)}.tier .per{min-height:2.6em}.tier .btn{align-self:flex-start;margin:4px 0 10px}.tier ul{color:var(--ink2);flex-direction:column;gap:8px;margin:0;padding:0;font-size:15px;list-style:none;display:flex}.tier .soon{color:var(--ink3);white-space:nowrap;font-size:13px}.plans .note{margin:0;font-size:14px}.compare{flex-direction:column;gap:20px;display:flex}.cmp{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;gap:clamp(20px,4vw,64px);display:grid}.cmp-in{border:0;min-width:0;margin:0;padding:0}.cmp-in .col{gap:4px}.cmp-out{padding-top:8px}.cmp-out .meta{margin:0}.faq{margin-top:16px}@media (max-width:960px){.plan-row{grid-template-columns:repeat(2,minmax(0,1fr))}.tier:nth-child(3){border-left:0;padding-left:0}.tier:nth-child(n+3){border-top:1px solid var(--line)}.tier.lead{padding-left:22px}}@media (max-width:860px){.band,.row-shot,.row-shot.flip{padding:56px var(--gutter) 0;grid-template-columns:minmax(0,1fr)}.band{padding-bottom:0}.band-shot,.row-shot .rs-shot,.row-shot.flip .rs-shot{order:0;width:min(420px,100%);margin:0 auto -18%}.row-shot.phone{padding:56px var(--gutter);grid-template-columns:minmax(0,1fr)}.row-shot.phone .rs-shot{margin:0}.row-shot.flip .rs-shot{order:0}.ai,.connect,.sec,.can{grid-template-columns:minmax(0,1fr)}.can ul{grid-row:auto}.sec-list,.cmp{grid-template-columns:minmax(0,1fr)}.hero-shot{width:min(420px,100%);margin-bottom:-30%}.row-shot,.band{gap:32px}}@media (max-width:600px){.plan-row{grid-template-columns:minmax(0,1fr)}.tier,.tier:nth-child(3){border-left:0;padding-left:0;padding-right:0}.tier+.tier{border-top:1px solid var(--line)}.tier.lead{margin:0 -4px;padding:24px 18px}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .band[data-app=harbor]{--app:#173b6b}:root:not([data-theme=light]) .band[data-app=spring]{--app:#11633f}}
