/* The website's styles. Colours, sizes, corners, shadows and timings come from tokens.css, and
   docs/DESIGN_SYSTEM.md documents each component and its states. Since 21 October 2026 this file is the
   source: the generator it once named, tools/gen_next.py, is not in the repository. */
body{margin:0}
[hidden]{display:none !important}
.site{background:var(--canvas)}
@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}

/* Shared styles */
.site a{color:var(--investor)}
.site a:hover{color:var(--investor-hover)}
.site a:focus-visible,.site button:focus-visible,.site summary:focus-visible,.site input:focus-visible,.site [tabindex]:focus-visible{outline:var(--focus);outline-offset:3px}
.site button{font:inherit;cursor:pointer}
.site .page{font-family:var(--font-sans),system-ui,sans-serif;font-size:var(--t-body);color:var(--ink);background:var(--canvas);line-height:1.6;-webkit-font-smoothing:antialiased}
.site .skip{position:absolute;left:16px;top:-100px;z-index:10;padding:12px 16px;border-radius:var(--r-control);background:var(--ink);color:#FFFFFF;font-weight:600;text-decoration:none}
.site .skip:focus{top:16px;color:#FFFFFF}
/* Paragraphs are justified on every website page, as the owner chose on 22 October 2026, and hyphenated so a narrow
   line does not open wide gaps. A paragraph in a centred block keeps its last line centred. Headings are never
   justified, and the signed-in app keeps its own alignment. */
.site:not(.pg-app) :is(p, dd, figcaption, .rows > li, .plan-list > li){text-align:justify;-webkit-hyphens:auto;hyphens:auto}
.site:not(.pg-app) :is(.hero-c, .intro-c, .show-head, [style*="text-align:center"]) p,
.site:not(.pg-app) figcaption > span,
.site:not(.pg-app) :is(.cap, .legal-date, .cta-note, figcaption){text-align:justify;text-align-last:center}
.site .wrap{max-width:1288px;margin:0 auto;padding-left:24px;padding-right:24px;box-sizing:border-box}
.site .narrow{max-width:928px}
/* A reading column: about 70 characters a line at 17px, start-aligned in the middle of the page. */
.site .read{max-width:calc(var(--w-read) + 48px)}
.site .sec{padding-top:96px;padding-bottom:96px}
.site .sec-t{border-top:1px solid var(--line)}
.site .soft{background:var(--fill-panel)}
.site .g12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:24px}
.site .c3{grid-column:span 3;min-width:0}
.site .c4{grid-column:span 4;min-width:0}
.site .c5{grid-column:span 5;min-width:0}
.site .c6{grid-column:span 6;min-width:0}
.site .c7{grid-column:span 7;min-width:0}
.site .c8{grid-column:span 8;min-width:0}
.site .c12{grid-column:1 / -1;min-width:0}
.site .h1{margin:0 0 24px;font-family:var(--font-serif),Georgia,serif;font-weight:600;font-size:var(--t-display);line-height:1.08;letter-spacing:-0.02em;color:var(--ink);text-wrap:balance}
.site .h2{margin:0 0 16px;font-family:var(--font-serif),Georgia,serif;font-weight:600;font-size:var(--t-title);line-height:1.15;letter-spacing:-0.01em;color:var(--ink);text-wrap:balance}
.site .h3{margin:0;font-family:var(--font-serif),Georgia,serif;font-weight:600;font-size:var(--t-heading);line-height:1.3;color:var(--ink)}
.site .lede{margin:0;font-size:var(--t-lead);line-height:1.55;color:var(--text-2);max-width:var(--w-intro)}
.site .body2{margin:0;color:var(--text-2)}
.site .small{font-size:var(--t-small);line-height:1.5;color:var(--text-2)}
.site .lbl{margin:0;font-size:var(--t-label);font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-2)}
.site .lbl-f{color:var(--founder-text)}
.site .lbl-i{color:var(--investor)}
.site .card{background:var(--canvas);border:1px solid var(--line);border-radius:var(--r-frame);padding:32px;box-sizing:border-box}
.site .chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-pill);font-size:var(--t-label);font-weight:600;line-height:1.4;white-space:nowrap;box-sizing:border-box}
/* Context labels: founder and investor. Status chips: verified, third party, submitted and none. */
.site .chip-f{background:var(--founder-tint);color:var(--founder-text)}
.site .chip-i{background:var(--investor-tint);color:var(--investor)}
.site .chip-n{background:var(--fill);color:var(--text-3)}
.site .chip-ok{background:var(--verified-tint);color:var(--verified)}
.site .chip-3p{background:var(--third-party-tint);color:var(--third-party)}
.site .chip-none{background:var(--canvas);color:var(--text-2);box-shadow:inset 0 0 0 1px var(--line-control)}
.site .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;max-width:100%;padding:0 24px;border-radius:var(--r-control);border:1px solid transparent;font-weight:600;font-size:var(--t-ui);line-height:1.3;text-align:center;text-decoration:none;box-sizing:border-box}
.site .btn-f{background:var(--founder);color:var(--ink)}
.site .btn-f:hover{background:var(--founder-hover);color:var(--ink)}
/* A darker orange falls below 4.5:1 with dark text, so a pressed founder button keeps the hover colour and sinks. */
.site .btn-f:active{background:var(--founder-hover);box-shadow:inset 0 2px 0 rgba(16,24,40,0.20)}
.site .btn-i{background:var(--investor);color:#FFFFFF}
.site .btn-i:hover{background:var(--investor-hover);color:#FFFFFF}
.site .btn-i:active{background:var(--investor-press)}
.site .btn-io{background:var(--canvas);border-color:var(--investor);color:var(--investor)}
.site .btn-io:hover{background:var(--investor-tint);color:var(--investor)}
.site .btn-io:active{background:var(--investor-tint-press)}
.site .btn-n{background:var(--canvas);border-color:var(--line-control);color:var(--ink)}
.site .btn-n:hover{background:var(--fill);color:var(--ink)}
.site .btn-n:active{background:var(--fill-pressed)}
.site .btn-lg{min-height:56px;padding:0 32px;font-size:var(--t-body)}
.site .btn-sm{min-height:44px;padding:0 16px;font-size:var(--t-small)}
/* While a form is sending, forms.js marks its button aria-busy: it keeps its colours, shows the form's own
   wording and cannot be pressed. Any other disabled button turns grey. */
.site .btn[aria-busy="true"]{cursor:progress}
.site .btn:disabled:not([aria-busy="true"]){background:var(--fill);border-color:var(--line);color:var(--text-disabled);box-shadow:none;cursor:default}
.site .tlink{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0;border:0;background:none;font-weight:600;color:var(--investor);text-decoration:none}
.site .tlink:hover,.site .tlink:active{color:var(--investor-hover);text-decoration:underline}
.site .tlink:disabled{color:var(--text-disabled);cursor:default;text-decoration:none}
.site .ph{background:var(--fill);color:var(--text-3);border-radius:var(--r-mark);padding:0 6px;font-weight:600}
.site .ph-dark{background:rgba(255,255,255,0.08);color:var(--footer-text);border-radius:var(--r-mark);padding:0 6px;font-weight:600}
.site .dot{display:inline-block;width:14px;height:14px;flex:none;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpolyline points='12 6 12 12 16 14'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpolyline points='12 6 12 12 16 14'/%3E%3C/svg%3E") center / contain no-repeat}
.site .note{margin:8px 0 0;padding:12px 16px;border-radius:var(--r-control);background:var(--investor-tint);color:var(--investor);font-size:var(--t-ui-s);line-height:1.5}
.site .site-hdr{background:var(--canvas);border-bottom:1px solid var(--line);position:relative}
.site .hdr{display:flex;align-items:center;gap:16px 32px;padding-top:14px;padding-bottom:14px}
.site .hdr-logo{order:1;display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.site .hdr-nav{order:2;display:flex;align-items:center;gap:0 24px;margin-left:8px}
.site .hdr-ctas{order:3;display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}
.site .navlink{color:var(--text-3);text-decoration:none;font-weight:600;font-size:var(--t-small);min-height:44px;display:inline-flex;align-items:center}
.site .navlink:hover{color:var(--ink)}
.site .navlink[aria-current="page"]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}
.site .menubtn{display:none;order:2;margin-left:auto;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid var(--line-control);border-radius:var(--r-control);background:var(--canvas);color:var(--ink);font-size:var(--t-small);font-weight:600}
.site .menubtn:hover{background:var(--fill)}
.site .menubtn[aria-expanded="true"]{background:var(--fill-pressed)}
.site .hdr .btn-sm{min-height:44px;padding:0 16px;font-size:var(--t-small)}
.site .site-ftr{background:var(--footer);color:var(--footer-text)}
.site .ftr-top{padding-top:64px;padding-bottom:48px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:48px}
.site .ftr-brand{flex:1 1 300px;min-width:0}
.site .ftr-brand p{margin:16px 0 0;font-size:var(--t-small)}
.site .ftr-promise{color:#FFFFFF;font-family:var(--font-serif),Georgia,serif;font-weight:600;font-size:var(--t-heading) !important}
.site .ftr-cols{flex:2 1 560px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.site .ftr-cols div{display:flex;flex-direction:column;min-width:0}
.site .ftr-h{margin:0 0 4px;font-size:var(--t-label);font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:#FFFFFF}
.site .flink{color:var(--footer-text);text-decoration:none;font-size:var(--t-small);min-height:44px;display:inline-flex;align-items:center}
.site .flink:hover{color:#FFFFFF}
.site .flink:focus-visible,.site .ftr-logo:focus-visible{outline:var(--focus-on-dark)}
.site .ftr-logo{display:inline-flex;min-height:44px;align-items:center}
.site .ftr-bottom{padding-top:24px;padding-bottom:32px;border-top:1px solid var(--footer-line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:var(--t-label)}
.site details summary{cursor:pointer;list-style:none}
.site details summary::-webkit-details-marker{display:none}
.site details[open] .plus{transform:rotate(45deg)}
.site .faq details{border-top:1px solid var(--line);padding:8px 0}
.site .faq details:last-child{border-bottom:1px solid var(--line)}
.site .faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:var(--t-lead);font-weight:600;color:var(--ink);min-height:48px}
.site .faq details p{margin:8px 0;color:var(--text-2)}
.site .tbl{width:100%;border-collapse:collapse;font-size:var(--t-small)}
.site .tbl th{text-align:left;font-weight:600;color:var(--ink);padding:12px 16px 12px 0;border-bottom:1px solid var(--line);vertical-align:bottom}
.site .tbl td{padding:14px 16px 14px 0;border-bottom:1px solid var(--line);color:var(--text-2);vertical-align:top}
.site .tbl td:first-child{color:var(--ink);font-weight:600}
.site .scroll{overflow-x:auto}
.site .list{list-style:none;margin:0;padding:0}
.site .list > li{display:flex;gap:16px;padding:16px 0;border-top:1px solid var(--line)}
.site .list > li:last-child{border-bottom:1px solid var(--line)}
.site .ico-b{display:inline-flex;color:var(--investor);margin-top:2px}
.site .ico-f{display:inline-flex;color:var(--founder-text);margin-top:2px}
.site .ico-n{display:inline-flex;color:var(--text-2);margin-top:2px}
.site .steps{list-style:none;margin:0;padding:0;counter-reset:s}
.site .num{width:32px;height:32px;border-radius:var(--r-pill);background:var(--ink);color:#FFFFFF;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--t-small);flex:none}
.site .num-f{background:var(--founder);color:var(--ink)}
.site .num-i{background:var(--investor);color:#FFFFFF}
.site .meter{display:inline-flex;gap:3px}
.site .meter i{display:block;width:18px;height:6px;border-radius:var(--r-pill);background:var(--mark-off);box-shadow:inset 0 0 0 1px var(--mark-edge)}
.site .meter i.on{background:var(--mark-on);box-shadow:none}
.site .tour-on{outline:3px solid var(--founder);outline-offset:6px;border-radius:var(--r-control)}
.site dialog.pd{border:0;border-radius:var(--r-frame);padding:0;width:calc(100% - 32px);max-width:760px;max-height:calc(100% - 32px);box-sizing:border-box;color:var(--ink);font-family:var(--font-sans),system-ui,sans-serif;font-size:var(--t-ui);line-height:1.6}
.site dialog.pd::backdrop{background:rgba(16,24,40,0.6)}
.site dialog.pd-wide{max-width:1200px}
.site .walkvid{display:block;width:100%;aspect-ratio:16 / 9;border-radius:var(--r-panel);background:var(--ink)}
.site .ctrl{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:var(--r-control);border:1px solid var(--line-control);background:var(--canvas);color:var(--ink);font-size:var(--t-small);font-weight:600}
.site .ctrl:hover{background:var(--fill)}
.site .ctrl:active{background:var(--fill-pressed)}
.site .ctrl[aria-pressed="true"],.site .ctrl[aria-expanded="true"]{background:var(--fill);border-color:var(--ink);color:var(--ink)}
.site .vp-thumb{position:relative;display:block;width:100%;aspect-ratio:16 / 9;padding:0;border:0;border-radius:var(--r-panel);background-color:#1D2939;overflow:hidden;color:#FFFFFF}
.site .vp-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:var(--r-pill);background:#FFFFFF;color:var(--ink);display:flex;align-items:center;justify-content:center}
.site .fig{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 160'%3E%3Ccircle cx='100' cy='60' r='30' fill='%23344054'/%3E%3Cpath d='M36 160c0-41 29-62 64-62s64 21 64 62z' fill='%23344054'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:92% bottom;background-size:auto 84%}
.site .shotwell{box-sizing:border-box;aspect-ratio:16 / 9;padding:24px 24px 0;border-radius:var(--r-panel);overflow:hidden;background:var(--fill)}
.site .shotwell img{display:block;width:100%;height:auto;border-radius:var(--r-control) var(--r-control) 0 0;background:var(--canvas);box-shadow:var(--shadow-raised)}
.site .shotwell-f{background:var(--founder-tint)}
.site .shotwell-i{background:var(--investor-tint)}
.site .kv{margin:0;display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:12px 24px}
.site .doc-h2{margin:56px 0 16px;font-family:var(--font-serif),Georgia,serif;font-weight:600;font-size:var(--t-title);line-height:1.2;color:var(--ink)}
.site .doc > .doc-h2:first-child{margin-top:0}
.site .doc-h3{margin:32px 0 12px;font-size:var(--t-heading);font-weight:600;line-height:1.35;color:var(--ink)}
.site .doc p{margin:0 0 16px;font-size:var(--t-body);line-height:1.7;color:var(--text-3)}
.site .doc p strong{color:var(--ink);font-weight:600}
.site .doc-date{font-size:var(--t-small) !important;color:var(--text-2) !important}
.site .chg{margin:0 0 16px;padding:16px 20px 4px;border-left:3px solid var(--line-control);border-radius:0 var(--r-control) var(--r-control) 0;background:var(--fill-panel)}
.site .chg > .chip{margin-bottom:10px}
.site .toc{display:flex;flex-wrap:wrap;gap:0 24px}
.site .legalnav{display:flex;flex-wrap:wrap;gap:8px}
.site .legalnav a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:var(--r-pill);border:1px solid var(--line-control);color:var(--text-3);font-size:var(--t-small);font-weight:600;text-decoration:none}
.site .legalnav a:hover{background:var(--fill);color:var(--ink)}
.site .legalnav a[aria-current="page"]{background:var(--ink);border-color:var(--ink);color:#FFFFFF}
.site .rmeter{display:inline-flex;gap:3px;vertical-align:middle}
.site .rmeter i{display:block;width:12px;height:12px;border-radius:var(--r-mark);background:var(--mark-off);box-shadow:inset 0 0 0 1px var(--mark-edge)}
.site .rmeter i.s{background:var(--mark-on);box-shadow:none}
.site .rmeter i.b{background:var(--mark-mid);box-shadow:none}
@media (max-width: 1199px){
.site .hdr{column-gap:24px}
.site .hdr-nav{column-gap:20px}
.site .hdr-ctas a + a{display:none}
}
@media (max-width: 979px){
.site .hdr-ctas{display:none}
}
@media (max-width: 799px){
.site .hdr{flex-wrap:wrap}
.site .hdr-ctas{display:flex;order:2;margin-left:auto}
.site .menubtn{display:inline-flex;order:3;margin-left:0}
.site .hdr-nav{order:4;display:none;width:100%;flex-direction:column;align-items:flex-start;margin-left:0;padding-top:8px;border-top:1px solid var(--line)}
.site .hdr-nav.open{display:flex}
.site .navlink[aria-current="page"]{box-shadow:inset 3px 0 0 var(--ink);padding-left:12px}
}
@media (max-width: 960px){
.site .g12{grid-template-columns:repeat(2,minmax(0,1fr))}
.site .c3,.site .c6{grid-column:span 1}
.site .c4,.site .c5,.site .c7,.site .c8,.site .c12{grid-column:1 / -1}
.site .ftr-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 400px){
.site .list-chip > li{flex-direction:column;gap:8px}
.site .hdr{column-gap:16px}
}
@media (max-width: 640px){
.site .kv{grid-template-columns:minmax(0,1fr);row-gap:4px}
.site .kv dt:not(:first-child){margin-top:12px}
.site .g12{grid-template-columns:minmax(0,1fr)}
.site .c3,.site .c6{grid-column:1 / -1}
.site .sec{padding-top:64px;padding-bottom:64px}
.site .menubtn{margin-left:auto}
.site .hdr-ctas{display:none;order:5;width:100%;margin-left:0;flex-direction:column;padding-bottom:8px}
.site .hdr-ctas.open{display:flex}
.site .hdr-ctas a + a{display:inline-flex}
.site .hdr-ctas .btn{flex:1 1 auto}
.site .card{padding:24px}
}
@media (prefers-reduced-motion: no-preference){
html{scroll-behavior:smooth}
.site .btn,.site .ctrl,.site .menubtn,.site .navlink,.site .flink,.site .tlink,.site .fchip,.site .chipbtn .chip,.site .seg button{transition:background-color var(--m-quick) ease,color var(--m-quick) ease,border-color var(--m-quick) ease}
.site .plus,.site .chev{transition:transform var(--m-open) ease}
.site dialog.pd[open]{animation:pd-in var(--m-quick) ease-out}
.site dialog.pd[open]::backdrop{animation:pd-in var(--m-quick) ease-out}
@keyframes pd-in{from{opacity:0}to{opacity:1}}
}

/* Compositions every page shares, set on 21 October 2026 by the approved plan. A hero and the heading and short
   introduction of a section are centred, and paragraphs longer than three lines, lists, tables and forms stay
   start-aligned. */
.site .hero-c{padding-top:clamp(40px,6vw,88px);text-align:center}
.site .hero-c .lbl{margin-bottom:20px}
.site .hero-c .h1{max-width:var(--w-title);margin:0 auto 24px}
.site .hero-c .lede{margin:0 auto 32px}
.site .hero-note{margin:16px 0 0}
/* A hero with a bordered section straight after it, and no showcase between them. */
.site .hero-solo{padding-bottom:clamp(48px,6vw,88px)}
.site .acts{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.site .show{padding-top:56px}
.site .show-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 16px;margin-bottom:20px}
.site .frame{background:var(--canvas);border:1px solid var(--line);border-radius:var(--r-frame);box-shadow:var(--shadow-frame);scroll-margin-top:24px;text-align:left}
.site .frame.swap .chip{animation:fade-in var(--m-quick) ease-out}
.site .cap{margin:16px 0 0;text-align:center}
/* A short heading over a showcase, centred, for a page whose showcase needs its own title. */
.site .show-head{max-width:var(--w-intro);margin:0 auto 24px;text-align:center}
.site .show-head .h3{margin-bottom:8px}
/* A large app screen in a section, at the width of a composition. A phone loads its own capture. */
.site .screen{max-width:var(--w-wide);margin:48px auto 0}
.site .screen img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:var(--r-panel);box-shadow:var(--shadow-raised)}
.site .screen figcaption{margin-top:12px;text-align:center}
.site .cta-note{max-width:var(--w-intro);margin:32px auto 0}
/* A showcase followed by a bordered section keeps its caption clear of the line. */
.site .show + .sec-t{margin-top:clamp(48px,6vw,88px)}
.site .strip{margin:0 24px;padding:20px 0 24px;border-top:1px solid var(--line)}
.site .strip-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;margin-bottom:10px}
.site .weeks-row{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));gap:6px}
.site .weeks-row i{display:block;height:28px;border-radius:var(--r-mark);background:var(--mark-off);box-shadow:inset 0 0 0 1px var(--mark-edge)}
.site .weeks-row i.on{background:var(--mark-on);box-shadow:none}
.site .strip-ends{display:flex;justify-content:space-between;gap:12px;margin-top:6px}
.site .intro-c{display:flex;flex-direction:column;align-items:center;text-align:center}
.site .intro-c .h2{max-width:26ch}
.site .intro-c .lede{margin:0 auto}
.site .intro-c .lede + .lede{margin-top:16px}
.site .intro-c .acts{margin-top:16px}
.site .wide{max-width:var(--w-wide);margin:40px auto 0}
.site .lg-h{padding:24px 0 8px}
.site .legend-t .lg-h:first-child{padding-top:0}
.site .lg{display:grid;grid-template-columns:300px minmax(0,1fr);gap:8px 24px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}
.site .lg p{margin:0;color:var(--text-3)}
.site .lg-name{font-weight:600}
/* The home page's prices: a card for each side, with Free and Premium as rows of name, price and one sentence. */
.site .price-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:var(--w-wide);margin:40px auto 0}
.site .price-side{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:32px;border-radius:var(--r-frame)}
.site .price-f{background:var(--founder-tint)}
.site .price-i{background:var(--investor-tint)}
/* On its own tint a context label needs a white ground to show as a label. */
.site .price-side .chip{background:var(--canvas)}
.site .price-rows{align-self:stretch;margin:8px 0 0}
.site .price-rows > div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;padding:16px 0;border-top:1px solid var(--line)}
.site .price-rows dt{font-weight:600;color:var(--ink)}
.site .price-rows .price-amt{margin:0;font-weight:600;color:var(--ink);white-space:nowrap}
.site .price-rows .price-what{grid-column:1 / -1;margin:0;color:var(--text-3)}
/* A legal page centres its title, date and links, and its text sits in the reading column. A table may run wider
   than the column, to the width of a composition, so its columns stay readable. */
.site .legal-hero .wrap{padding-bottom:40px}
.site .legal-date{max-width:var(--w-intro);margin:0 auto 24px}
.site .hero-c .legalnav,.site .hero-c .toc{justify-content:center}
.site .read .scroll{width:min(var(--w-wide),calc(100vw - 48px));position:relative;left:50%;transform:translateX(-50%)}
/* Inside a reading column: an introduction, plain rows with a line between them, a box for a warning and a
   row of links. None of them carries an icon. */
.site .doc .doc-lead{font-size:var(--t-lead);line-height:1.55;color:var(--text-2)}
.site .rows{list-style:none;margin:0 0 16px;padding:0;border-bottom:1px solid var(--line)}
.site .rows li{padding:12px 0;border-top:1px solid var(--line);line-height:1.6;color:var(--text-3)}
.site .doc .risk-box{padding:20px 24px;border-radius:var(--r-panel);background:var(--fill-panel);border:1px solid var(--line);font-weight:600;color:var(--ink)}
.site .legend-tbl td:first-child{width:1%;white-space:nowrap}
@media (max-width: 599px){
.site .legend-tbl,.site .legend-tbl tbody,.site .legend-tbl tr,.site .legend-tbl td{display:block}
.site .legend-tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.site .legend-tbl tr{padding:14px 0;border-bottom:1px solid var(--line)}
.site .legend-tbl td{padding:0;border:0}
.site .legend-tbl td + td{margin-top:8px}
}
.site .doc-links{margin-top:24px}
/* Questions and their answers, under a centred heading, in a start-aligned reading column. */
.site .qa{max-width:var(--w-read);margin:40px auto 0}
.site .qa .h3{margin:32px 0 8px}
.site .qa .h3:first-child{margin-top:0}
.site .qa p{margin:0;color:var(--text-2)}
.site .qa .qa-end{margin-top:32px}
/* A text link in founder colours, and the rule above a closing call to action. */
.site .tlink-f{color:var(--founder-text)}
.site .tlink-f:hover{color:var(--founder-text)}
.site .cta-f{border-top:2px solid var(--founder)}
.site .cta-i{border-top:2px solid var(--investor)}
.site .faq-c{max-width:var(--w-read);margin:40px auto 0}
/* Numbered steps as a timeline: across the page on a desktop, joined by a line, and down the page on a phone. */
.site .timeline{list-style:none;max-width:var(--w-page);margin:48px auto 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.site .timeline-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.site .timeline li{position:relative;display:flex;flex-direction:column;gap:12px}
.site .timeline li:not(:last-child)::before{content:"";position:absolute;top:15px;left:44px;right:-12px;height:2px;background:var(--line)}
.site .timeline .body2{margin:0}
@media (max-width: 760px){
.site .timeline,.site .timeline-3{grid-template-columns:minmax(0,1fr);gap:32px}
.site .timeline li{padding-left:48px}
.site .timeline .num{position:absolute;left:0;top:0}
.site .timeline li:not(:last-child)::before{top:40px;bottom:-28px;left:15px;right:auto;width:2px;height:auto}
}

/* The home page */
.pg-home .tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0 0 24px}
.pg-home .tab{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 18px 0 8px;border:1px solid var(--line-control);border-radius:var(--r-pill);background:var(--canvas);color:var(--text-3);font-size:var(--t-small);font-weight:600;transition:background-color var(--m-quick) ease,color var(--m-quick) ease,border-color var(--m-quick) ease}
.pg-home .tab:hover{background:var(--fill);color:var(--ink)}
.pg-home .tab .num{width:32px;height:32px}
.pg-home .tab[aria-selected="true"]{background:var(--ink);border-color:var(--ink);color:#FFFFFF}
.pg-home .tab[aria-selected="true"] .num{background:#FFFFFF;color:var(--ink)}
/* The four screens share one cell, so a new step fades in over the last one. */
.pg-home .stage{display:grid}
.pg-home .shot{grid-area:1 / 1;margin:0;opacity:1;visibility:visible;transition:opacity var(--m-quick) ease,visibility 0s linear 0s}
.pg-home .shot-off{opacity:0;visibility:hidden;transition:opacity var(--m-quick) ease,visibility 0s linear var(--m-quick)}
.pg-home .shot img,.pg-home .side img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:var(--r-panel);background:var(--canvas)}
.pg-home .shot img{box-shadow:var(--shadow-frame)}
.pg-home .shot figcaption{display:flex;flex-direction:column;align-items:center;gap:6px;max-width:var(--w-intro);margin:24px auto 0;text-align:center}
.pg-home .duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:40px}
.pg-home .side{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:32px;border-radius:var(--r-frame);transition:transform var(--m-quick) ease,box-shadow var(--m-quick) ease}
.pg-home .side-f{background:var(--founder-tint)}
.pg-home .side-i{background:var(--investor-tint)}
.pg-home .side:hover{transform:translateY(-2px);box-shadow:var(--shadow-raised)}
.pg-home .side .body2{margin:0}
.pg-home .side picture{display:block;width:100%}
.pg-home .side-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:auto}
@keyframes fade-in{from{opacity:0}to{opacity:1}}
@keyframes row-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.pg-home .modpanel{animation:row-in var(--m-open) ease-out}
@media (prefers-reduced-motion: reduce){
.pg-home .side:hover{transform:none}
}
.pg-home .seg{display:inline-flex;padding:4px;gap:4px;border-radius:var(--r-panel);background:var(--fill)}
.pg-home .seg button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:0;border-radius:var(--r-control);background:transparent;color:var(--text-3);font-size:var(--t-small);font-weight:600}
.pg-home .seg button:hover{background:rgba(16,24,40,0.06);color:var(--ink)}
.pg-home .seg button[aria-pressed="true"]{background:var(--canvas);color:var(--ink);box-shadow:var(--shadow-raised)}
.pg-home .modbtn{width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;min-height:56px;padding:12px 0;border:0;background:none;text-align:left;color:var(--ink)}
.pg-home .modbtn:hover .mname{text-decoration:underline}
.pg-home .modbtn[aria-expanded="true"] .chev{transform:rotate(180deg)}
.pg-home .modpanel{margin:0 0 16px;padding:16px 20px;border-radius:var(--r-panel);background:var(--fill-panel);border:1px solid var(--line);display:grid;grid-template-columns:minmax(0,170px) minmax(0,1fr);gap:8px 16px;font-size:var(--t-small)}
.pg-home .modpanel dt{color:var(--text-2)}
.pg-home .modpanel dd{margin:0;color:var(--ink)}
.pg-home .tourpanel{margin:0 0 24px;padding:20px 24px;border-radius:var(--r-panel);background:var(--ink);color:#FFFFFF;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px}
.pg-home .tourpanel .btn-n{background:transparent;color:#FFFFFF;border-color:var(--footer-text)}
.pg-home .tourpanel .btn-n:hover{background:rgba(255,255,255,0.08);color:#FFFFFF}
.pg-home .tourpanel :focus-visible{outline:var(--focus-on-dark)}
.pg-home .next3{list-style:none;margin:0;padding:0}
.pg-home .next3 li{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:4px 16px;align-items:start;padding:14px 0;border-top:1px solid var(--founder-rule)}
.pg-home .next3 li:first-child{border-top:0}
@media (max-width: 960px){
.pg-home .duo{grid-template-columns:minmax(0,1fr)}
}
@media (max-width: 640px){
.site .lg{grid-template-columns:minmax(0,1fr);gap:6px}
.site .strip{margin:0 16px}
.site .weeks-row{gap:4px}
.pg-home .side{padding:24px}
.pg-home .modpanel{grid-template-columns:minmax(0,1fr)}
.pg-home .modpanel dd{margin-bottom:8px}
.pg-home .next3 li{grid-template-columns:32px minmax(0,1fr)}
.pg-home .next3 li > a{grid-column:2}
}
/* On a phone the main action fills the width, and the second reads as a link beneath it. */
@media (max-width: 599px){
.site .acts{flex-direction:column;align-items:stretch}
.site .acts .btn-io,.site .acts .btn-n{border-color:transparent;background:none;min-height:44px}
.site .acts > .tlink{align-self:center}
.site .screen img{max-width:360px;margin:0 auto}
.pg-home .shot img{max-width:360px;margin:0 auto}
.pg-home .tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.pg-home .tab{padding-right:12px;font-size:var(--t-ui-s)}
.site .price-duo{grid-template-columns:minmax(0,1fr)}
.site .price-side{padding:24px}
}

/* ForFounders */
.pg-founders .areabtn{width:100%;display:block;padding:10px 0;border:0;background:none;text-align:left;color:var(--ink)}
.pg-founders .areabtn:hover .aname{text-decoration:underline}
.pg-founders .areabtn[aria-expanded="true"] .chev{transform:rotate(180deg)}
.pg-founders .areas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px}
.pg-founders .areas > div{border-top:1px solid var(--line)}
.pg-founders .lv{font-size:var(--t-ui-s);font-weight:600;color:var(--text-3)}
/* A week with an update is filled with --mark-on, and every week keeps the --mark-edge outline. */
.pg-founders .wk{flex:1 1 0;min-width:0;height:44px;padding:0;border:0;border-radius:var(--r-mark);box-shadow:inset 0 0 0 1px var(--mark-edge)}
.pg-founders .wkrow{display:flex;gap:8px}
@media (max-width: 480px){
.pg-founders .wkrow{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
}
.pg-founders .wk[aria-pressed="true"]{box-shadow:inset 0 0 0 1px var(--mark-edge),0 0 0 2px #FFFFFF,0 0 0 4px var(--ink)}
.pg-founders .next3{list-style:none;margin:0;padding:0}
.pg-founders .next3 li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:4px 16px;padding:16px 0;border-top:1px solid var(--founder-rule)}
.pg-founders .next3 li:first-child{border-top:0}
.pg-founders .yes{color:var(--ink);font-weight:600}
.pg-founders .no{color:var(--text-2)}
@media (max-width: 960px){
.pg-founders .areas{grid-template-columns:minmax(0,1fr)}
}

/* ForInvestors */
.pg-investors .fgroup{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px}
.pg-investors .flabel{flex:0 0 96px;font-size:var(--t-label);font-weight:600;color:var(--text-2)}
.pg-investors .fchip{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:var(--r-pill);border:1px solid var(--line-control);background:var(--canvas);color:var(--text-3);font-size:var(--t-ui-s);font-weight:600}
.pg-investors .fchip:hover{background:var(--fill)}
.pg-investors .fchip[aria-pressed="true"]{background:var(--investor);border-color:var(--investor);color:#FFFFFF}
.pg-investors .res{display:flex;align-items:flex-start;gap:16px}
.pg-investors .thumb{flex:none;position:relative;width:160px;aspect-ratio:16 / 9;padding:0;border:0;border-radius:var(--r-control);background-color:#1D2939;color:#FFFFFF;overflow:hidden}
.pg-investors .thumb .playdot{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;border-radius:var(--r-pill);background:#FFFFFF;color:var(--ink);display:flex;align-items:center;justify-content:center}
.pg-investors .thumb .len{position:absolute;right:6px;top:6px;padding:0 6px;border-radius:var(--r-pill);background:rgba(16,24,40,0.75);font-size:var(--t-ui-xs);font-weight:600;font-variant-numeric:tabular-nums}
.pg-investors .thumb .pv{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;padding:6px 8px;background:rgba(16,24,40,0.92);text-align:left}
.pg-investors .thumb .pvcap{font-size:var(--t-ui-xs);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
/* The founder search sits in the showcase frame under the hero. */
.pg-investors .disc-in{max-width:var(--w-page);margin:0 auto;background:var(--canvas);border:1px solid var(--line);border-radius:var(--r-frame);padding:32px;box-shadow:var(--shadow-frame)}
@media (max-width: 400px){
.pg-investors .res .chip{white-space:normal;border-radius:var(--r-control)}
}
@media (max-width: 640px){
.pg-investors .flabel{flex-basis:100%}
.pg-investors .res{flex-direction:column}
.pg-investors .res .thumb{width:100%}
.pg-investors .thumb .pvcap{font-size:var(--t-ui-s)}
.pg-investors .disc-in{padding:16px}
}

/* ReadinessCheck */
.pg-readiness .rc-main{padding-bottom:112px}
.pg-readiness .rc-hero{padding-bottom:40px}
.pg-readiness .opt{display:flex;align-items:center;gap:12px;min-height:56px;padding:12px 16px;border:1px solid var(--line-control);border-radius:var(--r-control);box-sizing:border-box;cursor:pointer;font-weight:600}
.pg-readiness .opt input{width:20px;height:20px;margin:0;accent-color:var(--founder-text);flex:none}
.pg-readiness .opt:hover{background:var(--fill-panel)}
.pg-readiness .opt:has(input:checked){border-color:var(--founder);background:var(--founder-tint)}
.pg-readiness .opt:has(input:focus-visible){outline:var(--focus);outline-offset:2px}
.pg-readiness .cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
@media (max-width: 640px){
.pg-readiness .cols{grid-template-columns:minmax(0,1fr)}
}
.pg-readiness .fill{transition:width var(--m-open) ease}

/* Pricing, redesigned on 28 October 2026: each plan shows its price, one sentence of value, its action and a ticked list of what it
   includes. Premium carries a border in its side's colour. On wide screens a side's two cards share their rows, so the prices, the
   actions and the lists line up; below 760px the cards sit one above the other. */
.pg-pricing .plan-jump{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:24px 0 0}
.pg-pricing .intro-c .chip{margin-bottom:16px}
/* The trust band under the pricing hero: what arrives in December 2026 and what is live now, beside a drawing of face
   verification with a padlock. It is the brand navy, the logo's blue, so the announcement stands apart from the plans. */
.pg-pricing .trust{background:var(--investor);color:#FFFFFF}
.pg-pricing .trust-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;align-items:center;max-width:calc(var(--w-wide) + 48px);margin:0 auto}
.pg-pricing .trust-chip{background:var(--band-accent-fill);color:var(--band-accent)}
.pg-pricing .trust-title{margin:16px 0 0;max-width:18ch;color:#FFFFFF}
.site.pg-pricing .trust p{text-align:left;-webkit-hyphens:manual;hyphens:manual}
.pg-pricing .trust-lede{margin:16px 0 0;max-width:46ch;font-size:var(--t-lead);line-height:1.5;color:var(--band-text)}
.pg-pricing .trust-list{display:flex;flex-direction:column;gap:24px;list-style:none;margin:32px 0 0;padding:0}
.pg-pricing .trust-list li{display:flex;gap:16px;align-items:flex-start}
.pg-pricing .trust-icon{display:flex;flex:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--r-control);background:var(--band-tile);color:#FFFFFF}
.pg-pricing .trust-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:var(--t-ui);font-weight:600;line-height:1.4;color:#FFFFFF}
.pg-pricing .trust-when{background:var(--band-chip);color:var(--band-text)}
.pg-pricing .trust-live{background:var(--band-live-fill);color:var(--band-live)}
.pg-pricing .trust-list p{margin:4px 0 0;font-size:var(--t-ui);line-height:1.5;color:var(--band-text)}
.pg-pricing .trust-note{margin:32px 0 0;font-size:var(--t-ui-s);color:var(--band-text)}
.pg-pricing .trust-visual{display:flex;justify-content:center}
.pg-pricing .trust-art{width:100%;max-width:460px;height:auto;font-family:inherit}
@media (max-width: 900px){
.pg-pricing .trust-grid{grid-template-columns:minmax(0,1fr);gap:32px}
.pg-pricing .trust-art{max-width:360px}
}
.pg-pricing .plan-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;max-width:var(--w-wide);margin:40px auto 0}
.pg-pricing .plan{display:grid;grid-template-rows:subgrid;grid-row:span 7;row-gap:0;align-content:start}
.pg-pricing .plan > *{margin:0}
.pg-pricing .plan-hi.plan-f{border-color:var(--founder);box-shadow:inset 0 0 0 1px var(--founder);background:var(--founder-wash)}
.pg-pricing .plan-hi.plan-i{border-color:var(--investor);box-shadow:inset 0 0 0 1px var(--investor);background:var(--investor-wash)}
.pg-pricing .plan-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}
.pg-pricing .plan-top .h3{margin:0}
.pg-pricing .plan-price{display:flex;align-items:baseline;gap:8px;margin-top:16px;color:var(--ink)}
.pg-pricing .plan-amt{font-size:var(--t-title);font-weight:600;line-height:1.1}
.pg-pricing .plan-per{font-size:var(--t-ui);color:var(--text-2)}
.site.pg-pricing .plan :is(p, li){text-align:left;-webkit-hyphens:manual;hyphens:manual}
.site.pg-pricing .plan-value{margin-top:12px;font-size:var(--t-ui);line-height:1.5;color:var(--text-3)}
.pg-pricing .plan-cta{margin-top:24px;width:100%}
.site.pg-pricing .plan p.plan-wait{display:flex;align-items:center;justify-content:center;min-height:48px;box-sizing:border-box;padding:12px 16px;line-height:1.4;text-align:center;border:1px dashed var(--line-control);border-radius:var(--r-control);background:var(--canvas);font-size:var(--t-ui);font-weight:600;color:var(--text-2)}
.site.pg-pricing .plan-note{margin-top:12px;color:var(--text-2)}
.site.pg-pricing .plan-lead{margin-top:24px;padding-top:24px;border-top:1px solid var(--line);font-size:var(--t-ui);font-weight:600;color:var(--ink)}
.pg-pricing .feat-list{display:flex;flex-direction:column;gap:12px;list-style:none;margin-top:16px;padding:0}
.pg-pricing .feat-list li{display:flex;align-items:flex-start;gap:12px;font-size:var(--t-ui);line-height:1.5;color:var(--text-3)}
.pg-pricing .tick{flex:none;margin-top:2px}
.pg-pricing .plan-f .tick circle{fill:var(--founder-tint)}
.pg-pricing .plan-f .tick path{stroke:var(--founder-text)}
.pg-pricing .plan-i .tick circle{fill:var(--investor-tint)}
.pg-pricing .plan-i .tick path{stroke:var(--investor)}
.pg-pricing .plan-hi.plan-f .tick circle{fill:var(--founder)}
.pg-pricing .plan-hi.plan-f .tick path{stroke:var(--ink)}
.pg-pricing .plan-hi.plan-i .tick circle{fill:var(--investor)}
.pg-pricing .plan-hi.plan-i .tick path{stroke:#FFFFFF}
@media (max-width: 760px){
.pg-pricing .plan-pair{grid-template-columns:minmax(0,1fr);gap:24px}
.pg-pricing .plan{display:flex;flex-direction:column;grid-row:auto}
}

/* For founders: the dashboard on sample data under the hero, and the progress strip beside what an update is. */
.pg-founders .dash{padding:32px}
.pg-founders .dash-intro{max-width:var(--w-read);margin:8px 0 0}
.pg-founders .dash-sum{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:16px 0 0;font-weight:600}
.pg-founders .dash-cols{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:32px 48px;align-items:start;margin-top:24px}
.pg-founders .dash .areas{grid-template-columns:minmax(0,1fr)}
.pg-founders .dash .areas > div:last-of-type{border-bottom:1px solid var(--line)}
.pg-founders .dash-next{padding:24px;border-radius:var(--r-panel);background:var(--founder-tint)}
.pg-founders .dash-next .h3{margin-bottom:16px}
.pg-founders .dash-title{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}
.pg-founders .dash-next .lbl{margin-bottom:4px}
.pg-founders .dash-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}
.pg-founders .dash-q{font-weight:600}
.pg-founders .mom{max-width:720px}
.pg-founders .mom-box{padding:8px 24px 24px;box-shadow:none}
@media (max-width: 960px){
.pg-founders .dash-cols{grid-template-columns:minmax(0,1fr)}
}
@media (max-width: 599px){
.pg-founders .dash{padding:20px}
.pg-founders .dash-next{padding:20px}
.pg-founders .mom-box{padding:4px 16px 16px}
}
