:root{--surface:#ffffff;--surface-raised:#f3f8fd;--surface-sunken:#fff5e8;--ink:#000008;--ink-muted:#4b5160;--line:#dfe6ee;--line-strong:#8a93a3;--blue:#18a0f0;--on-blue:#000008;--blue-soft:#e3f3fe;--blue-text:#0a64a0;--orange:#f89018;--on-orange:#000008;--orange-soft:#fff0de;--orange-text:#9a4f00;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:96px;--radius-sm:10px;--radius-md:16px;--radius-lg:28px;--radius-tail:4px;--radius-pill:999px;--shadow-card:0 1px 2px rgba(0,0,8,0.06), 0 8px 24px rgba(0,0,8,0.08);--font-display:"Bricolage Grotesque", "Trebuchet MS", system-ui, sans-serif;--font-sans:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:light}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--surface:#000008;--surface-raised:#0d1420;--surface-sunken:#070c14;--ink:#ffffff;--ink-muted:#b7bcc8;--line:#232a36;--line-strong:#6b7385;--blue-soft:#08293f;--blue-text:#18a0f0;--orange-soft:#35210a;--orange-text:#f89018;color-scheme:dark}}
:root[data-theme="dark"]{--surface:#000008;--surface-raised:#0d1420;--surface-sunken:#070c14;--ink:#ffffff;--ink-muted:#b7bcc8;--line:#232a36;--line-strong:#6b7385;--blue-soft:#08293f;--blue-text:#18a0f0;--orange-soft:#35210a;--orange-text:#f89018;color-scheme:dark}
/* GeoSafari components. Every value is a token from tokens.css. */
.gs-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:52px;padding:0 var(--space-5);border:2px solid transparent;border-radius:var(--radius-pill);font:700 16px/1 var(--font-sans);letter-spacing:.2px;text-decoration:none;cursor:pointer;transition:filter .15s,transform .15s}
.gs-btn:hover{filter:brightness(1.07)}
.gs-btn:active{transform:translateY(1px)}
.gs-btn:focus-visible,.gs-field input:focus-visible,.gs-field textarea:focus-visible,.gs-nav a:focus-visible,summary:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.gs-btn--primary{background:var(--blue);color:var(--on-blue)}
.gs-btn--warm{background:var(--orange);color:var(--on-orange)}
.gs-btn--ghost{background:transparent;color:var(--ink);border-color:var(--line-strong)}
.gs-btn--sm{min-height:44px;padding:0 var(--space-4);font-size:15px}

.gs-field{display:grid;gap:var(--space-2);font-family:var(--font-sans)}
.gs-field label{font:700 14px/18px var(--font-sans);letter-spacing:.4px;color:var(--ink-muted)}
.gs-field input,.gs-field textarea{min-height:52px;padding:var(--space-3) var(--space-4);border:2px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font:400 17px/26px var(--font-sans)}
.gs-field textarea{min-height:132px;resize:vertical}
.gs-field input:focus,.gs-field textarea:focus{border-color:var(--ink);outline:none}
.gs-field small{font:400 14px/20px var(--font-sans);color:var(--ink-muted)}

.gs-card{padding:var(--space-5);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) var(--radius-tail);color:var(--ink);font-family:var(--font-sans)}
.gs-card--blue{background:var(--blue-soft);border-color:transparent}
.gs-card--orange{background:var(--orange-soft);border-color:transparent}
.gs-card h3{margin:0 0 var(--space-2);font:600 28px/34px var(--font-display);letter-spacing:-.4px}
.gs-card p{margin:0;font:400 17px/26px var(--font-sans)}
.gs-card .gs-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:var(--space-4);border-radius:var(--radius-md);background:var(--blue);color:var(--on-blue)}
.gs-card--orange .gs-icon{background:var(--orange);color:var(--on-orange)}

.gs-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:6px var(--space-3);border-radius:var(--radius-pill);background:var(--blue-soft);color:var(--ink);font:700 14px/18px var(--font-sans);letter-spacing:.4px}
.gs-badge::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--blue)}
.gs-badge--orange{background:var(--orange-soft)}
.gs-badge--orange::before{background:var(--orange)}

.gs-callout{padding:var(--space-6);background:var(--orange);color:var(--on-orange);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) var(--radius-tail);font-family:var(--font-sans)}
.gs-callout .gs-callout__label{font:700 14px/18px var(--font-sans);letter-spacing:.4px;text-transform:none}
.gs-callout .gs-callout__value{margin:var(--space-2) 0;font:700 64px/64px var(--font-display);letter-spacing:-1.5px}
.gs-callout p{margin:0;font:400 17px/26px var(--font-sans)}

.gs-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);padding:var(--space-3) var(--space-6);background:var(--surface);border-bottom:1px solid var(--line);font-family:var(--font-sans)}
.gs-nav ul{display:flex;gap:var(--space-5);margin:0;padding:0;list-style:none}
.gs-nav a{color:var(--ink);font:700 14px/18px var(--font-sans);letter-spacing:.4px;text-decoration:none}
.gs-nav ul a:hover{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:3px;text-decoration-color:var(--blue)}
.gs-logo-chip{display:inline-flex;padding:var(--space-2) var(--space-3);background:#ffffff;border-radius:var(--radius-sm)}
.gs-logo-chip img{display:block;height:36px;width:auto}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--surface);color:var(--ink);font:400 17px/26px var(--font-sans);-webkit-font-smoothing:antialiased}
a{color:var(--blue-text);text-underline-offset:3px}
img{max-width:100%}
.wrap{max-width:1160px;margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
@media(min-width:900px){.wrap{padding-left:max(32px,env(safe-area-inset-left,0px));padding-right:max(32px,env(safe-area-inset-right,0px))}}
.band{padding-block:56px}
@media(min-width:900px){.band{padding-block:var(--space-8)}}
.band--raised{background:var(--surface-raised)}
.band--sunken{background:var(--surface-sunken)}
.band--blue{background:var(--blue);color:var(--on-blue)}
h1,h2,h3{margin:0;text-wrap:balance}
.t-display{font:700 40px/42px var(--font-display);letter-spacing:-1px}
.t-h1{font:700 32px/38px var(--font-display);letter-spacing:-.8px}
.t-h2{font:600 24px/30px var(--font-display);letter-spacing:-.3px}
@media(min-width:900px){.t-display{font-size:64px;line-height:64px;letter-spacing:-1.5px}.t-h1{font-size:44px;line-height:48px;letter-spacing:-1px}.t-h2{font-size:28px;line-height:34px}}
.lead{font:400 20px/30px var(--font-sans);margin:0;max-width:34em}
.muted{color:var(--ink-muted)}
.small{font:400 14px/20px var(--font-sans)}
.eyebrow{font:700 14px/18px var(--font-sans);letter-spacing:.4px;color:var(--ink-muted);margin:0 0 var(--space-3)}
.sec-head{display:grid;gap:var(--space-3);max-width:40em;margin-bottom:var(--space-7)}
.sec-head p{margin:0}

/* nav */
.site-nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--surface);border-bottom:1px solid var(--line)}
.site-nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding-block:var(--space-3)}
.site-nav ul{display:none;gap:var(--space-5);margin:0;padding:0;list-style:none}
.site-nav ul a,.menu summary{color:var(--ink);font:700 14px/18px var(--font-sans);letter-spacing:.4px;text-decoration:none}
.site-nav ul a:hover{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:3px;text-decoration-color:var(--blue)}
.nav-right{display:flex;align-items:center;gap:var(--space-3)}
.menu{position:relative}
.menu summary{list-style:none;cursor:pointer;padding:12px var(--space-4);border:2px solid var(--line-strong);border-radius:var(--radius-pill)}
.menu summary::-webkit-details-marker{display:none}
.menu nav{position:absolute;right:0;top:calc(100% + 8px);display:grid;min-width:200px;padding:var(--space-2);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}
.menu nav a{padding:12px var(--space-3);color:var(--ink);font:700 15px/20px var(--font-sans);text-decoration:none;border-radius:var(--radius-sm)}
.menu nav a:hover{background:var(--blue-soft)}
.gs-logo-chip img{height:34px}
@media(min-width:900px){.site-nav ul{display:flex}.menu{display:none}.gs-logo-chip img{height:38px}}
@media(max-width:420px){.nav-right .gs-btn{display:none}}

/* hero */
.hero{padding-block:40px 56px;overflow:hidden}
.hero-grid{display:grid;gap:var(--space-7);align-items:center}
@media(min-width:900px){.hero{padding-block:72px 96px}.hero-grid{grid-template-columns:1.05fr .95fr}}
.hero-grid>*{min-width:0}
.hero-copy{display:grid;gap:var(--space-5);justify-items:start}
.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.hero-facts{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.hero-visual{position:relative;display:grid;place-items:center;min-height:540px}
.blob{position:absolute;border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) var(--radius-tail)}
.blob--blue{background:var(--blue);width:min(86%,400px);height:440px;right:2%;top:36px;border-radius:56px 56px 56px var(--radius-tail)}
.blob--orange{background:var(--orange);width:112px;height:84px;left:4%;bottom:28px}
.blob--soft{background:var(--blue-soft);width:150px;height:64px;right:0;bottom:8px;border-radius:32px 32px 32px var(--radius-tail)}
.phone{position:relative;width:min(290px,78vw);padding:12px;background:var(--ink);border-radius:44px 44px 44px var(--radius-tail);box-shadow:var(--shadow-card)}
.screen,.screen-body,.screen .gs-field{min-width:0}
.screen .gs-field input{width:100%;min-width:0}
.screen{background:var(--surface);color:var(--ink);border-radius:34px 34px 34px 2px;overflow:hidden;min-height:480px;display:grid;grid-template-rows:auto 1fr}
.screen-bar{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-4) var(--space-3);font:700 16px/20px var(--font-display);background:var(--surface-raised);border-bottom:1px solid var(--line)}
.screen-body{grid-template-columns:minmax(0,1fr);display:grid;align-content:start;gap:var(--space-4);padding:var(--space-4)}
.screen .gs-field label{font-size:13px}
.screen .gs-field input{min-height:46px;font-size:16px}
.chips{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}
.chip{display:grid;place-items:center;min-height:46px;border:2px solid var(--line-strong);border-radius:var(--radius-md);font:700 15px/1 var(--font-sans);background:var(--surface);color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--blue);border-color:var(--blue);color:var(--on-blue)}
.screen .gs-btn{width:100%}
.float{position:absolute;display:none;max-width:210px;padding:var(--space-3) var(--space-4);font:700 15px/20px var(--font-sans);border-radius:24px 24px 24px var(--radius-tail);box-shadow:var(--shadow-card)}
.float--a{background:var(--orange-soft);color:var(--ink);left:0;top:96px;max-width:170px}
.float--b{background:var(--surface);color:var(--ink);border:1px solid var(--line);left:0;bottom:150px;max-width:170px}
@media(min-width:620px){.float{display:block}.hero-visual{justify-items:end}.hero-visual .blob--orange{left:0}}


.stats-band{border-block:1px solid var(--line);background:var(--surface)}
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5) var(--space-4);padding-block:var(--space-6)}
.stats>div{display:grid;gap:var(--space-1)}
.stat-num{font:700 32px/36px var(--font-display);letter-spacing:-.8px;font-variant-numeric:tabular-nums}
@media(min-width:900px){.stats{grid-template-columns:repeat(4,1fr);gap:var(--space-6);padding-block:var(--space-7)}.stat-num{font-size:44px;line-height:48px;letter-spacing:-1px}.stats>div+div{padding-left:var(--space-6);border-left:1px solid var(--line)}}
.more{display:inline-flex;align-items:center;gap:var(--space-2);margin-top:var(--space-4);color:var(--ink);font:700 15px/20px var(--font-sans);text-decoration:underline;text-decoration-color:var(--blue);text-decoration-thickness:3px;text-underline-offset:5px}
.more:hover{text-decoration-color:var(--ink)}
.tiers{display:grid;gap:var(--space-5)}
@media(min-width:900px){.tiers{grid-template-columns:repeat(3,1fr);gap:var(--space-6);align-items:stretch}}
.tier{display:grid;grid-template-rows:auto auto 1fr auto auto;gap:var(--space-4);justify-items:start;min-width:0;padding:var(--space-6);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) var(--radius-tail)}
.tier--feature{background:var(--blue-soft);border-color:transparent}
.tier h3,.tier p{margin:0}
.tier .list{align-self:start;gap:var(--space-3)}
.tier .list svg{color:var(--ink)}
.tier .gs-btn{margin-top:var(--space-2)}
.cta{display:grid;gap:var(--space-5);justify-items:start}
@media(min-width:900px){.cta{grid-template-columns:1fr auto;align-items:center}}

/* trust strip */
.trust{display:grid;gap:var(--space-4)}
.trust p{margin:0;display:flex;gap:var(--space-3);align-items:flex-start}
.trust svg{flex:none;margin-top:2px}
@media(min-width:900px){.trust{grid-template-columns:repeat(3,1fr);gap:var(--space-6)}}

/* cards */
.cards{display:grid;gap:var(--space-5)}
@media(min-width:900px){.cards{grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.cards--2{grid-template-columns:repeat(2,1fr)}}
.gs-card{min-width:0}
.gs-card .gs-icon{width:52px;height:52px}
.gs-card h3{font:600 24px/30px var(--font-display)}
@media(min-width:900px){.gs-card h3{font-size:28px;line-height:34px}}

/* steps */
.steps{display:grid;gap:var(--space-5);margin:0;padding:0;list-style:none;counter-reset:s}
.steps li{counter-increment:s;display:grid;grid-template-columns:auto 1fr;gap:var(--space-4);align-items:start}
.steps li::before{content:counter(s);display:grid;place-items:center;width:44px;height:44px;border-radius:22px 22px 22px var(--radius-tail);background:var(--blue);color:var(--on-blue);font:700 20px/1 var(--font-display)}
.steps h3{font:600 20px/26px var(--font-display);margin-bottom:var(--space-1)}
.steps p{margin:0}
.steps--orange li::before{background:var(--orange);color:var(--on-orange)}
.steps-grid{display:grid;gap:var(--space-7)}
@media(min-width:900px){.steps-grid{grid-template-columns:1fr 1fr;gap:var(--space-8)}.steps--wide{grid-template-columns:repeat(2,1fr);gap:var(--space-6) var(--space-8)}}
.steps--wide{display:grid}

/* split */
.split{display:grid;gap:var(--space-7);align-items:start}
.split>*{min-width:0}
@media(min-width:900px){.split{grid-template-columns:1fr 1fr;gap:var(--space-8)}}
.list{display:grid;gap:var(--space-4);margin:0;padding:0;list-style:none}
.list li{display:grid;grid-template-columns:auto 1fr;gap:var(--space-3);align-items:start}
.list svg{margin-top:1px}
.list strong{display:block}
.band--blue .eyebrow{color:var(--on-blue)}
.band--blue .panel{background:var(--surface);color:var(--ink);padding:var(--space-6);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) var(--radius-tail)}
.mono-num{font-variant-numeric:tabular-nums}

/* faq */
.faq{display:grid;gap:var(--space-3);max-width:820px}
.faq details{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-md)}
.faq summary{display:flex;justify-content:space-between;gap:var(--space-4);align-items:center;padding:var(--space-4) var(--space-5);font:600 18px/24px var(--font-display);cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--blue);color:var(--on-blue);font:700 20px/1 var(--font-sans)}
.faq details[open] summary::after{content:"\2212"}
.faq details p{margin:0;padding:0 var(--space-5) var(--space-5);max-width:62ch}
.gs-card .gs-btn,.callout-wrap .gs-btn{margin-top:var(--space-4)}

/* contact */
.contact-list{display:grid;gap:var(--space-4);margin:var(--space-5) 0 0;padding:0;list-style:none}
.contact-list li{display:grid;gap:2px}
.contact-list .num{font:700 24px/30px var(--font-display);letter-spacing:-.3px;font-variant-numeric:tabular-nums}
form.contact{display:grid;gap:var(--space-4);padding:var(--space-6);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) var(--radius-tail)}
.form-note{min-height:24px;margin:0;font-weight:700}

/* footer */
footer{background:var(--surface-sunken);border-top:1px solid var(--line);padding-block:var(--space-7)}

.foot>*{min-width:0}
.foot ul{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-2)}
.foot a{color:var(--ink)}
.foot h2{font:700 14px/18px var(--font-sans);letter-spacing:.4px;color:var(--ink-muted);margin:0 0 var(--space-3)}
.legal{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--line)}
.foot{display:grid;gap:var(--space-6)}
@media(min-width:760px){.foot{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.foot{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,.9fr) minmax(0,1.1fr);gap:var(--space-6)}}
.pay,.seals{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-bottom:var(--space-4)}
.pay-chip{display:inline-flex;align-items:center;padding:8px;background:#ffffff;border-radius:var(--radius-sm)}
.pay-chip img{display:block;width:auto;max-width:100%}
.foot-contact{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}
.foot-contact li{display:flex;gap:var(--space-3);align-items:center;font-variant-numeric:tabular-nums}
.foot-contact svg{color:var(--blue-text)}
.foot form.contact{padding:var(--space-4);gap:var(--space-3)}
.foot textarea{min-height:96px}
.gs-field{min-width:0}
.gs-field input,.gs-field textarea{width:100%;min-width:0}
.foot>*{min-width:0}
.readmore summary{cursor:pointer;font:700 14px/20px var(--font-sans);color:var(--blue-text);text-decoration:underline;text-underline-offset:3px}
.readmore p{margin-top:var(--space-3)}
.legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-3)}
.legal-links{display:flex;flex-wrap:wrap;gap:var(--space-4)}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.hero-slides{display:grid;gap:var(--space-5);justify-items:start}
.slide-ctl{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2)}
.slide-ctl button{min-width:44px;min-height:44px;border:2px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font:700 15px/1 var(--font-sans);cursor:pointer}
.dots{display:flex;gap:var(--space-2)}
.dots button{min-width:44px;padding:0 var(--space-3)}
.dots button[aria-current="true"]{background:var(--blue);border-color:var(--blue);color:var(--on-blue)}
.page-head{padding-block:48px 8px}
.prose{max-width:68ch}
.prose p{margin:0 0 var(--space-4)}
.prose h2{font:600 22px/28px var(--font-display);margin:var(--space-6) 0 var(--space-3)}
.prose ul{margin:0 0 var(--space-4);padding-left:1.2em;display:grid;gap:var(--space-2)}
.prose--legal{font-size:16px;line-height:24px}
.shots{display:block;width:100%;max-width:216px;height:auto;border-radius:20px}
.cookie{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--surface-raised);border-top:2px solid var(--line-strong);padding-block:var(--space-4);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px))}
.cookie .wrap{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center;justify-content:space-between}
.cookie h2{font:700 16px/22px var(--font-display);margin:0}
.cookie p{margin:0;max-width:62ch}
.cookie-actions{display:flex;gap:var(--space-3)}
.kenya{margin-bottom:var(--space-6)}
.nav-links a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:3px;text-decoration-color:var(--orange)}
.fine{border-left:4px solid var(--orange);padding-left:var(--space-4);margin:var(--space-4) 0}
.cta-row{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-5)}
