:root{--g:#047857;--gd:#065f46;--ink:#1d1d1d;--mut:#5f6368;--line:#e5e5e5;--bg:#fff;--bg2:#f7f8f7}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}
a{color:var(--gd)}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}
.mk-wrap{max-width:1040px;margin:0 auto;padding:0 20px}
.mk-btn{display:inline-block;background:var(--g);color:#fff!important;text-decoration:none;font-weight:600;font-size:14px;padding:10px 18px;border-radius:999px;border:1px solid var(--g)}
.mk-btn:hover{background:var(--gd)}.mk-btn.alt{background:#fff;color:var(--ink)!important;border-color:var(--line)}
.mk-hero{padding:56px 0 36px;background:linear-gradient(180deg,#ecfdf5,#fff)}
.mk-crumbs{font-size:13px;color:var(--mut);margin-bottom:14px}
h1{font-size:clamp(30px,5vw,48px);line-height:1.1;letter-spacing:-.02em;max-width:760px}
.mk-lead{font-size:clamp(17px,2.2vw,20px);color:var(--mut);max-width:680px;margin:16px 0 24px}
.mk-actions{display:flex;gap:12px;flex-wrap:wrap}.mk-actions .mk-btn{padding:12px 22px;font-size:15px}
.mk-sec{padding:40px 20px}.mk-sec h2{font-size:28px;margin-bottom:18px;letter-spacing:-.01em}
.mk-narrow{max-width:760px}
.mk-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:18px}
.mk-card{border:1px solid var(--line);border-radius:18px;padding:22px;background:#fff}
.mk-card h3{font-size:20px;margin-bottom:8px}.mk-card>p{color:var(--mut);margin-bottom:12px}
.mk-card dt{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--mut);margin-top:10px}.mk-card dd{font-size:15px}
.mk-st{font-size:12px;font-weight:700;padding:2px 9px;border-radius:99px}.mk-st.ok{background:#d1fae5;color:#065f46}.mk-st.part{background:#fef3c7;color:#92400e}
.mk-list{list-style:none;display:grid;gap:10px}.mk-list li{padding-left:28px;position:relative}.mk-list li::before{content:"✓";position:absolute;left:0;color:var(--g);font-weight:800}
.mk-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
.mk-plan{border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:8px}.mk-plan.pop{border:2px solid var(--g)}
.mk-price{font-size:34px;font-weight:700}.mk-price small{font-size:15px;color:var(--mut);font-weight:500}.mk-units{color:var(--mut);font-size:14px}
.mk-plan ul{list-style:none;margin:8px 0 14px;display:grid;gap:6px;font-size:14px;flex:1}.mk-plan li::before{content:"✓ ";color:var(--g);font-weight:800}
.mk-plan .mk-btn{text-align:center}
.mk-note{color:var(--mut);font-size:14px;margin-top:18px}.mk-addon{margin-top:22px;background:var(--bg2);border-radius:16px;padding:20px}.mk-addon h3{font-size:17px;margin-bottom:6px}
.mk-faq{border-bottom:1px solid var(--line);padding:14px 0}.mk-faq summary{cursor:pointer;font-weight:600}.mk-faq p{color:var(--mut);margin-top:8px}.mk-faq ul{margin-top:8px}
.mk-links a{margin-right:4px}
.mk-band{background:var(--bg2);text-align:center;padding:48px 0}.mk-band h2{font-size:26px;margin-bottom:8px}.mk-band p{color:var(--mut);margin-bottom:14px}
.mk-foot{border-top:1px solid var(--line);padding:28px 0;color:var(--mut);font-size:14px}.mk-foot p{margin-bottom:8px}.mk-foot a{color:var(--mut)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.mk-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* Founding Customer Programme */
.mk-eyebrow{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--g);margin-bottom:10px}
.mk-badges{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 18px}.mk-badges li{border:1px solid var(--line);border-radius:99px;padding:5px 12px;font-size:14px;font-weight:600;background:#fff}
.mk-steps{list-style:none;counter-reset:s;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.mk-steps li{counter-increment:s;border:1px solid var(--line);border-radius:16px;padding:18px;background:#fff;display:grid;gap:6px}.mk-steps li::before{content:counter(s);width:30px;height:30px;border-radius:50%;background:var(--g);color:#fff;font-weight:700;display:grid;place-items:center}.mk-steps span{color:var(--mut)}
.mk-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:18px}
.mk-tablewrap{overflow-x:auto}.mk-table{width:100%;border-collapse:collapse;font-size:14px}.mk-table th,.mk-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}.mk-table th{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--mut)}
.mk-sec h2{margin-bottom:12px}.mk-sec p+p{margin-top:10px}
.mk-founders{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px;margin-top:16px}.mk-founders blockquote{border:1px solid var(--line);border-radius:16px;padding:18px;background:#fff;margin:0}.mk-founders cite{display:block;margin-top:8px;font-style:normal;font-weight:600}
/* Pilot forms */
.mk-form{display:grid;gap:4px;text-align:left;margin-top:14px}.mk-form fieldset{border:0;padding:0;min-width:0;display:grid;gap:4px}
.mk-form label,.mk-form legend{font-weight:600;font-size:15px;margin-top:10px;display:block}
.mk-form input[type=text],.mk-form input[type=email],.mk-form input[type=tel],.mk-form select,.mk-form textarea{width:100%;padding:12px;border:1px solid #b9bfc4;border-radius:12px;font:inherit;font-size:16px;background:#fff;color:var(--ink)}
.mk-form input:focus-visible,.mk-form select:focus-visible,.mk-form textarea:focus-visible,.mk-form button:focus-visible,.mk-form input[type=checkbox]:focus-visible,.mk-form input[type=radio]:focus-visible{outline:3px solid #1d6fd6;outline-offset:2px}
.mk-form fieldset:disabled{opacity:.55}.mk-form button{margin-top:16px;cursor:pointer;border:0;font:inherit;font-weight:600}.mk-form button:disabled{opacity:.6;cursor:not-allowed}
.mk-opt{font-weight:400;color:var(--mut)}.mk-hint{font-size:13px;color:var(--mut);margin:2px 0 0}
.mk-radios{border:0;padding:0;margin:10px 0 0}.mk-radios label{display:inline-flex;align-items:center;gap:8px;margin:6px 18px 0 0;font-weight:500;min-height:44px}.mk-radios input,.mk-check input{width:22px;height:22px}
.mk-check{display:flex;gap:10px;align-items:flex-start;font-weight:500;margin-top:14px;min-height:44px}
.mk-error{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:12px;padding:10px 12px;margin-top:12px;font-weight:600}
.mk-done{border:1px solid var(--line);border-radius:16px;padding:20px;background:#fff;margin-top:14px}.mk-done:focus{outline:3px solid #1d6fd6}
.mk-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.mk-formband{text-align:left}.mk-left{text-align:left}.mk-formband .mk-note{color:var(--mut)}
.cf-ts{min-height:0;margin-top:12px}
/* WhatsApp enquiry dialog (/pilot). A bottom sheet on phones, a centred card on larger screens. */
.mk-enq{position:fixed;inset:0;margin:auto;height:fit-content;border:0;padding:0;width:min(calc(100% - 24px),480px);max-height:calc(100dvh - 24px);border-radius:18px;background:#fff;color:var(--ink);box-shadow:0 20px 60px rgba(15,23,42,.35)}
.mk-enq::backdrop{background:rgba(15,23,42,.55)}
.mk-enq-in{position:relative;padding:20px;overflow-y:auto;max-height:calc(100dvh - 24px)}
.mk-enq h2{font-size:20px;margin:0 36px 4px 0}
.mk-enq-x{position:absolute;top:8px;right:8px;width:44px;height:44px;border:0;background:none;font-size:28px;line-height:1;cursor:pointer;color:var(--mut);border-radius:12px}
.mk-enq-x:focus-visible{outline:3px solid #1d6fd6}
.mk-enq-done h2{margin-right:0}
.mk-enq .mk-form{margin-top:6px}.mk-enq .mk-form button[type=submit]{width:100%;padding:14px;font-size:16px}
@media (max-width:600px){.mk-enq{inset:auto 0 0 0;width:100%;max-width:none;margin:0;border-radius:18px 18px 0 0}}
@media (prefers-reduced-motion:no-preference){.mk-enq[open]{animation:mkenq .18s ease-out}@keyframes mkenq{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}
.mk-form[hidden]{display:none}   /* .mk-form sets display:grid, which would otherwise beat the hidden attribute after a successful send */

/* ── Founding programme smart forms (.pf): question form and 3-step application ── */
.pf{--pf-ring:rgba(16,185,129,.28);--pf-soft:#ecfdf5;--pf-warn-bg:#fffbeb;--pf-warn:#92400e;gap:0}
.pf fieldset{display:block;border:0;padding:0;margin:0;min-width:0}
.pf .pf-f,.pf .pf-group{margin-top:16px}
.pf .pf-label{display:block;font-weight:600;font-size:15px;margin:0 0 6px;padding:0}
.pf input[type=text],.pf input[type=email],.pf input[type=tel],.pf input[type=number],.pf textarea{width:100%;min-height:44px;padding:10px 12px;font:inherit;font-size:15px;line-height:1.4;border:1px solid #b9bfc4;border-radius:10px;background:#fff;color:var(--ink);transition:border-color .15s,box-shadow .15s}
.pf textarea{resize:vertical;min-height:104px}
.pf input:focus-visible,.pf textarea:focus-visible{outline:none;border-color:var(--g);box-shadow:0 0 0 3px var(--pf-ring)}
.pf [aria-invalid=true]{border-color:#b42318}
@media (max-width:640px){.pf input[type=text],.pf input[type=email],.pf input[type=tel],.pf input[type=number],.pf textarea{font-size:16px}}
.pf-hint,.pf-sub,.pf-note,.pf-chan{font-size:13px;color:var(--mut);margin:4px 0 0}
.pf-chan{min-height:19px}.pf-sub{margin:12px 0 6px;font-weight:600}
.pf-note{background:var(--pf-soft);border-radius:10px;padding:8px 12px;color:var(--gd);margin-top:10px}
.pf-err{font-size:13px;font-weight:600;color:#b42318;margin:4px 0 0}
.pf-row-between{display:flex;justify-content:space-between;gap:12px}
.pf-input{position:relative}.pf-input .pf-flag{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:20px;line-height:1;pointer-events:none}
.pf-input.has-flag input{padding-left:44px}

/* chips and cards are real radios / checkboxes, visually restyled */
.pf-chips{display:flex;flex-wrap:wrap;gap:8px}
.pf-chip{position:relative;margin:0!important;font-weight:500!important}
.pf-chip input,.pf-card input{position:absolute;opacity:0;inset:0;width:100%!important;height:100%!important;min-height:0!important;margin:0;cursor:pointer}
.pf-chip>span{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1px solid #b9bfc4;border-radius:999px;background:#fff;font-size:15px;transition:border-color .15s,background-color .15s,box-shadow .15s}
.pf-chip>span .pf-ico{flex:none;color:var(--mut)}
.pf-chip:hover>span{border-color:var(--g)}
.pf-chip input:checked+span{border-color:var(--g);background:var(--pf-soft);color:var(--gd);font-weight:600}
.pf-chip input:checked+span .pf-ico{color:var(--g)}
.pf-chip input:focus-visible+span,.pf-card input:focus-visible+span{box-shadow:0 0 0 3px var(--pf-ring);border-color:var(--g)}
.pf-cards{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}
.pf-card{position:relative;margin:0!important;font-weight:400!important;display:block}
.pf-card>span{display:flex;flex-direction:column;gap:4px;height:100%;padding:14px;border:1px solid #b9bfc4;border-radius:14px;background:#fff;transition:border-color .15s,background-color .15s}
.pf-card .pf-ico{color:var(--g);margin-bottom:2px}.pf-card b{font-size:15px}.pf-card small{font-size:13px;color:var(--mut);line-height:1.4}
.pf-card:hover>span{border-color:var(--g)}.pf-card input:checked+span{border-color:var(--g);background:var(--pf-soft);box-shadow:inset 0 0 0 1px var(--g)}
@media (max-width:640px){.pf-cards{grid-template-columns:1fr}.pf-card>span{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:12px}.pf-card small{flex-basis:100%;padding-left:34px;margin-top:-2px}}

/* stepper */
.pf-stepper{display:flex;gap:8px;align-items:stretch;max-width:260px}
.pf-stepper input{text-align:center;-moz-appearance:textfield}.pf-stepper input::-webkit-outer-spin-button,.pf-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.pf .pf-stepper button,.pf-vote button:not(.pf-link){flex:none;width:44px;min-height:44px;border:1px solid #b9bfc4;border-radius:10px;background:#fff;color:var(--ink);cursor:pointer;display:grid;place-items:center;margin:0;padding:0}
.pf .pf-stepper button:hover,.pf-vote button:not(.pf-link):hover{border-color:var(--g)}
.pf button:focus-visible,.pf summary:focus-visible{outline:none;box-shadow:0 0 0 3px var(--pf-ring);border-color:var(--g)}

/* progress */
.pf-progress{margin:6px 0 4px}.pf-prog-text{font-size:14px;font-weight:600;color:var(--gd);margin-bottom:8px}
.pf-bar{height:6px;background:#e5e7eb;border-radius:99px;overflow:hidden}.pf-bar span{display:block;height:100%;width:33.33%;background:var(--g);border-radius:99px;transition:width .3s ease}
.pf-step-h{font-size:20px;margin:18px 0 0}
.pf-step:not([hidden]){animation:pffade .25s ease both}
@keyframes pffade{from{opacity:0}to{opacity:1}}

/* live cards */
.pf-card-live{margin-top:14px;padding:12px 14px;border-radius:12px;background:var(--pf-soft);border:1px solid #a7f3d0;color:var(--gd);font-size:14px;font-weight:600}
.pf-card-live p{margin:0}.pf-card-live .pf-foot{margin-top:4px;font-size:12px;font-weight:400;color:var(--mut)}
.pf-card-live.is-warn{background:var(--pf-warn-bg);border-color:#fcd34d;color:var(--pf-warn)}
.pf-save{background:#fff;border-color:var(--line);color:var(--ink);font-weight:500}
.pf-help{background:#fff;border-color:var(--line);color:var(--ink);font-weight:400}
.pf-card-h{font-size:12px!important;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--mut);margin-bottom:6px!important}
.pf-help-list{list-style:none;display:grid;gap:8px;margin:0;padding:0}.pf-help-list li{display:flex;gap:8px;justify-content:space-between;align-items:flex-start}
.pf-badge{flex:none;font-style:normal;font-size:11px;font-weight:700;padding:2px 9px;border-radius:99px;white-space:nowrap}
.pf-badge.live{background:#d1fae5;color:#065f46}.pf-badge.beta{background:#dbeafe;color:#1e40af}.pf-badge.soon{background:#fef3c7;color:#92400e}
.pf-summary{margin-top:18px;border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:#fff}
.pf-summary>p{margin:0 0 6px}.pf-summary>p:last-child{margin-bottom:0}
.pf-sum-row{display:flex;gap:10px;align-items:baseline;padding:5px 0;font-size:14px}.pf-sum-k{flex:none;width:76px;color:var(--mut)}.pf-sum-v{flex:1;min-width:0;overflow-wrap:anywhere}
.pf-link{background:none!important;border:0!important;padding:0!important;min-height:0!important;color:var(--gd);text-decoration:underline;cursor:pointer;font:inherit;font-size:13px;font-weight:600}
.pf-summary .pf-link{min-width:44px;min-height:32px!important}

/* instant answers */
.pf-answers{margin-top:14px;border:1px solid #a7f3d0;background:var(--pf-soft);border-radius:14px;padding:12px 14px}
.pf-answers-h{display:flex;align-items:center;gap:6px;margin:0 0 8px;font-weight:700;font-size:14px;color:var(--gd)}
.pf-ans{background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:8px}
.pf-ans summary{cursor:pointer;padding:10px 12px;list-style:none;display:grid;gap:2px;border-radius:10px}.pf-ans summary::-webkit-details-marker{display:none}
.pf-ans summary b{font-size:14px}.pf-ans summary span{font-size:13px;color:var(--mut)}.pf-ans[open] summary span{display:none}
.pf-ans-body{padding:0 12px 10px;font-size:14px}.pf-ans-body p{margin:0 0 6px}
.pf-vote{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;margin-top:4px}
.pf-vote button[aria-pressed=true]{background:var(--pf-soft);border-color:var(--g);color:var(--gd)}
.pf-promise{margin-top:16px;font-size:14px;font-weight:600;color:var(--gd)}

/* actions, states */
.pf-actions,.pf-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.pf .pf-btn{min-height:46px;margin:0;padding:12px 22px;font-size:15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;border-radius:999px;text-align:center}
.pf [hidden]{display:none!important}
.pf-nav{justify-content:space-between}.pf-nav [data-next],.pf-nav button[type=submit]{margin-left:auto}
@media (max-width:640px){.pf-actions .pf-btn,.pf-nav .pf-btn{flex:1 1 100%}.pf-nav [data-back]{order:2}}
.pf-spin{display:none;width:16px;height:16px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%}
.is-busy .pf-spin{display:inline-block;animation:pfspin .7s linear infinite}
@keyframes pfspin{to{transform:rotate(360deg)}}
.pf-draft{min-height:18px;font-size:12px;color:var(--mut);margin:8px 0 0}
.pf-fail{margin-top:14px;padding:12px 14px;border:1px solid #fecdca;background:#fef3f2;border-radius:12px;color:#b42318}
.pf-fail p{margin:0 0 10px;font-weight:600}.pf-fail .pf-btn{display:inline-flex}
.pf-consent{margin-top:16px}
.pf-done{text-align:left}
.pf-tick{width:52px;height:52px;border-radius:50%;background:var(--pf-soft);color:var(--g);display:grid;place-items:center;margin-bottom:10px}
.pf-tick .pf-ico{stroke-dasharray:30;stroke-dashoffset:0}
.pf-timeline{list-style:none;margin:14px 0;padding:0;display:grid;gap:0;counter-reset:s}
.pf-timeline li{position:relative;padding:0 0 14px 34px;counter-increment:s;display:grid}
.pf-timeline li::before{content:counter(s);position:absolute;left:0;top:0;width:24px;height:24px;border-radius:50%;background:var(--g);color:#fff;font-size:13px;font-weight:700;display:grid;place-items:center}
.pf-timeline li::after{content:"";position:absolute;left:11px;top:26px;bottom:2px;width:2px;background:#d1fae5}.pf-timeline li:last-child::after{display:none}
.pf-timeline span{color:var(--mut);font-size:14px}
@media (prefers-reduced-motion:no-preference){
  .pf-tick .pf-ico{animation:pfdraw .6s ease-out .1s both}
  .pf-tick{animation:pfpop .35s ease-out both}
  @keyframes pfdraw{from{stroke-dashoffset:30}to{stroke-dashoffset:0}}
  @keyframes pfpop{from{transform:scale(.7);opacity:0}to{transform:none;opacity:1}}
}
@media (prefers-reduced-motion:reduce){.pf-step:not([hidden]){animation:none}.pf-bar span,.pf-chip>span,.pf-card>span,.pf input,.pf textarea{transition:none}.is-busy .pf-spin{animation-duration:2s}}
