:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color-scheme:light dark;--bg:#f6f7f8;--fg:#15202b;--accent:#145a40;--panel:#fff;--focus:#f59e0b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);line-height:1.55}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip-link{position:absolute;top:-100px;left:1rem;background:white;color:black;padding:.65rem;z-index:5}.skip-link:focus{top:1rem}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1rem max(1rem,calc((100vw - 70rem)/2));background:var(--panel);border-bottom:1px solid #a6b1b5}.brand{display:flex;align-items:center;gap:.7rem;font-size:1.3rem;font-weight:750}.brand a{text-decoration:none}.preview{font-size:.72rem;font-weight:650;border:1px solid currentColor;border-radius:100px;padding:.1rem .5rem}nav{display:flex;flex-wrap:wrap;gap:.5rem}nav a{padding:.5rem .65rem;border-radius:.4rem;text-decoration:none}nav a[aria-current=page]{text-decoration:underline;text-underline-offset:.35em;font-weight:700}.availability{background:#fbe7aa;color:#382800;padding:.85rem 1rem;text-align:center;font-weight:650}main{max-width:70rem;margin:0 auto;padding:clamp(1.25rem,4vw,3rem);min-height:55vh}.panel{background:var(--panel);border:1px solid #aeb9bd;border-radius:1rem;padding:clamp(1.2rem,3vw,2rem);max-width:44rem}.muted{opacity:.84}.status{font-weight:750}.actions{display:flex;gap:.8rem;flex-wrap:wrap}button,.button{font:inherit;padding:.7rem 1rem;border-radius:.45rem;border:2px solid var(--accent);background:var(--accent);color:white;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}#menu-toggle{display:none}footer{border-top:1px solid #aeb9bd;padding:1.25rem;text-align:center;font-size:.85rem}@media(max-width:650px){#menu-toggle{display:block}nav{display:none;flex-basis:100%;flex-direction:column}nav.open{display:flex}nav a{padding:.8rem}main{padding:1rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important}}@media(prefers-color-scheme:dark){:root{--bg:#10191e;--fg:#edf3f4;--accent:#78cfa6;--panel:#1b282e;--focus:#ffd166}button,.button{background:#174f3b;color:white;border-color:#78cfa6}.site-header,.panel,footer{border-color:#65777d}}

/* L02.2: rider accessibility, communication and privacy settings */
.preference-row{display:flex;align-items:center;gap:.6rem;min-height:2.75rem;padding:.35rem 0;cursor:pointer}.preference-row input{width:1.3rem;height:1.3rem;accent-color:var(--accent);flex:0 0 auto}.panel form{display:grid;gap:.6rem}.panel form label{font-weight:500}.panel form select{font:inherit;max-width:100%;padding:.6rem;border:2px solid currentColor;background:var(--panel);color:var(--fg);border-radius:.35rem}.panel form button{justify-self:start;min-width:10rem}.panel form button+button{background:transparent;color:var(--fg)}

/* PT-10: every keyboard control receives an obvious focus indicator and usable touch sizing. */
input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
input,select,textarea{font:inherit;max-width:100%;min-height:2.75rem;border:2px solid currentColor;border-radius:.35rem;background:var(--panel);color:var(--fg);padding:.45rem}
button,nav a{min-height:2.75rem;min-width:2.75rem}
.panel{min-width:0;overflow-wrap:anywhere}.panel label{display:block;max-width:100%}
[aria-invalid=true]{border-color:#b32b2b;outline-color:#b32b2b}
@media(max-width:650px){.panel{width:100%;padding:1rem}.panel button{max-width:100%;white-space:normal}}

/* Public rider landing: decorative layout only, independent of authenticated rider operations. */
.brand-logo{display:block;width:clamp(7rem,14vw,11rem);height:auto;object-fit:contain}.footer-logo{display:block;width:9rem;height:auto;object-fit:contain;margin:0 auto 1rem}
main.rider-landing-root{max-width:none;padding:0;min-height:0}.rider-landing{--lime:#7bf36e;background:#fffcf3;color:#061b1a}
.rider-hero{position:relative;isolation:isolate;min-height:clamp(520px,64vw,760px);color:white;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.rider-hero-image,.rider-hero-shade{position:absolute;inset:0;width:100%;height:100%}.rider-hero-image{z-index:-2;object-fit:cover;object-position:center}.rider-hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(0,15,15,.86),rgba(0,15,15,.15) 76%),linear-gradient(0deg,rgba(0,13,13,.9),transparent 43%)}
.rider-hero-content{padding:clamp(2rem,6vw,6rem) clamp(1.2rem,5vw,5rem) 2rem}.rider-hero h1{font-size:clamp(3.1rem,6.3vw,7rem);letter-spacing:-.06em;line-height:.94;font-weight:950;margin:0 0 1rem}.rider-hero h1 span{color:var(--lime)}.rider-subtitle{font-size:clamp(.9rem,1.4vw,1.3rem);letter-spacing:.16em;font-weight:650}
.rider-cta{display:inline-flex;align-items:center;justify-content:center;gap:1rem;min-height:3.3rem;margin-top:.5rem;border-radius:999px;padding:.85rem 2rem;background:var(--lime);color:#001914!important;text-decoration:none;font-weight:850}.rider-cta:hover{background:#a5ff9b}
.rider-promises{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;list-style:none;text-align:center;padding:1.1rem max(1rem,6vw);margin:0}.rider-promises li{display:flex;flex-direction:column;align-items:center}.rider-promises li>span{font-size:2.2rem;line-height:1.2;color:var(--lime);margin-bottom:.3rem}.rider-promises strong{font-size:1.07rem}.rider-promises small{font-size:.89rem}
.rider-more{padding:clamp(1.5rem,4vw,4rem) max(1rem,calc((100vw - 90rem)/2));display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.7fr);gap:2rem;align-items:start}.rider-kicker{color:#178449;letter-spacing:.2em;font-size:.8rem;font-weight:800;margin:0 0 .9rem}.rider-intro h2{font-size:clamp(2rem,3.1vw,3.65rem);line-height:1.02;letter-spacing:-.055em;margin:0 0 .8rem}.rider-intro>p:not(.rider-kicker){line-height:1.55}.rider-launch-notice{font-size:.83rem;opacity:.9}.rider-cta-small{margin-top:1rem}
.rider-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.rider-feature{position:relative;isolation:isolate;min-height:330px;border-radius:1rem;overflow:hidden;color:white;background:#001614}.rider-feature>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.rider-feature:before{content:"";position:absolute;inset:25% 0 0;z-index:-1;background:linear-gradient(transparent,rgba(0,13,13,.95))}.rider-feature-body{position:absolute;left:.7rem;right:.7rem;bottom:1.2rem;text-align:center}.rider-feature h3{font-size:1rem;margin:0 0 .4rem}.rider-feature p{font-size:.88rem;line-height:1.45;margin:0}
@media(max-width:900px){.rider-more{grid-template-columns:1fr}.rider-card-grid{max-width:100%}}@media(max-width:560px){.rider-promises{gap:.4rem;padding:.9rem .5rem}.rider-promises strong{font-size:.8rem}.rider-promises small{font-size:.72rem}.rider-promises li>span{font-size:1.6rem}.rider-card-grid{grid-template-columns:1fr}.rider-feature{min-height:290px}.rider-hero h1{font-size:clamp(2.8rem,11vw,4.7rem)}}
