/* =========================================================================
   Riverbold — App-Family site. Dark + lime design system (class-based).
   Migrated from the hifi handoff prototypes. Self-hosted fonts.
   ========================================================================= */
@font-face{font-family:"Space Grotesk";src:url("/fonts/SpaceGrotesk.woff2") format("woff2");font-weight:300 700;font-style:normal;font-display:swap;}
@font-face{font-family:"Instrument Sans";src:url("/fonts/InstrumentSans.woff2") format("woff2");font-weight:400 700;font-style:normal;font-display:swap;}
@font-face{font-family:"Space Mono";src:url("/fonts/SpaceMono-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:"Space Mono";src:url("/fonts/SpaceMono-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap;}

:root{
  --bg:#0a0b09; --fg:#f2f3ee; --lime:#c7f24a; --lime-bright:#d9ff6b; --mlime:#9ab06a;
  --muted:#b6b9af; --muted2:#c9ccc2; --faint:#9a9d92; --faint2:#71756a; --faint3:#5b5e55;
  --display:"Space Grotesk",system-ui,sans-serif; --body:"Instrument Sans",system-ui,sans-serif; --mono:"Space Mono",ui-monospace,monospace;
  --glass-bg:rgba(255,255,255,.04); --glass-bd:rgba(255,255,255,.08);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:var(--lime);text-decoration:none;}
a:hover{color:var(--lime-bright);}
img,svg{display:block;max-width:100%;}
::selection{background:var(--lime);color:var(--bg);}
h1,h2,h3{margin:0;}

/* keyframes */
@keyframes sheen{0%{background-position:180% 0}100%{background-position:-80% 0}}
@keyframes stagePulse{0%,100%{opacity:.55;transform:translate(-50%,-50%) scale(1)}50%{opacity:.9;transform:translate(-50%,-50%) scale(1.12)}}
@keyframes ringBreathe{0%,100%{opacity:.35;transform:translateX(-50%) scaleX(1)}50%{opacity:.7;transform:translateX(-50%) scaleX(1.18)}}
@keyframes shimmer{0%{background-position:-160% 0}100%{background-position:260% 0}}
@keyframes sparkdraw{0%{stroke-dashoffset:520}45%{stroke-dashoffset:0}75%{stroke-dashoffset:0}100%{stroke-dashoffset:520}}
@keyframes river{0%{transform:translateX(0)}100%{transform:translateX(-33.33%)}}
@keyframes grain{0%,100%{transform:translate(0,0)}20%{transform:translate(-6%,4%)}40%{transform:translate(4%,-6%)}60%{transform:translate(-4%,-4%)}80%{transform:translate(6%,4%)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes iconPlane{0%,100%{transform:translate(0,0)}50%{transform:translate(4px,-4px)}}
@keyframes iconPen{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(8deg)}}
@keyframes iconLock{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@keyframes cubeSettle{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(3deg)}}
@keyframes caret{0%,100%{opacity:1}50%{opacity:0}}

/* overlays */
.grain{position:fixed;inset:-30%;z-index:60;pointer-events:none;opacity:.06;mix-blend-mode:overlay;background-size:180px 180px;animation:grain 1.2s steps(4) infinite;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");}
.spotlight{position:fixed;top:0;left:0;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(199,242,74,.16),transparent 62%);transform:translate(-50%,-50%);pointer-events:none;z-index:1;opacity:0;transition:opacity .4s;}
.skip-link{position:fixed;top:-60px;left:12px;z-index:200;background:var(--lime);color:var(--bg);padding:.6rem 1rem;border-radius:999px;font-weight:600;transition:top .2s;}
.skip-link:focus{top:12px;}

.wrap{max-width:1280px;margin:0 auto;padding:0 clamp(20px,4vw,56px);position:relative;z-index:3;}
.wrap--narrow{max-width:1080px;}
.eyebrow{font-family:var(--mono);font-size:12.5px;letter-spacing:.22em;color:var(--lime);text-transform:uppercase;}
.h2{font-family:var(--display);font-weight:700;font-size:clamp(28px,3.8vw,46px);letter-spacing:-.02em;margin:0;}
.sec{margin-bottom:120px;}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;font-weight:600;cursor:pointer;border:1px solid transparent;font-family:inherit;transition:transform .25s cubic-bezier(.2,.8,.2,1),background .2s,color .2s;}
.btn--lime{background:var(--lime);color:var(--bg);padding:15px 26px;font-size:15.5px;}
.btn--lime:hover{color:var(--bg);}
.btn--glass{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--fg);padding:15px 26px;font-size:15.5px;}
.btn--glass:hover{color:var(--fg);}
.btn--glass-sm{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14);color:var(--fg);padding:12px 22px;font-size:14.5px;align-self:flex-start;}
.btn--glass-sm:hover{color:var(--fg);}
.btn--dark{background:var(--bg);color:var(--fg);padding:16px 30px;font-size:16px;white-space:nowrap;}
.btn--dark:hover{color:var(--fg);}

/* nav */
.rb-nav{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;position:sticky;top:14px;z-index:50;border-radius:16px;border:1px solid transparent;transition:background .3s,border-color .3s,backdrop-filter .3s;margin-top:14px;}
.rb-nav.is-frost{background:rgba(12,14,10,.6);border-color:rgba(255,255,255,.08);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);}
.rb-brand{display:flex;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-size:19px;letter-spacing:-.02em;color:var(--fg);}
.rb-brand:hover{color:var(--fg);}
.rb-mark{width:22px;height:22px;border-radius:6px;background:var(--lime);display:inline-flex;align-items:center;justify-content:center;color:var(--bg);font-size:13px;flex:0 0 auto;}
.rb-nav__links{display:flex;align-items:center;gap:8px;}
.rb-nav__links a{color:var(--muted2);font-size:14.5px;padding:8px 14px;border-radius:999px;}
.rb-nav__links a:hover{color:var(--fg);background:rgba(255,255,255,.05);}
.rb-nav__links a.is-current{color:var(--fg);}
.rb-nav__contact{background:var(--fg)!important;color:var(--bg)!important;padding:9px 18px!important;font-weight:600;font-size:14px;}
.rb-nav__toggle{display:none;background:none;border:0;color:var(--fg);font-size:1.4rem;cursor:pointer;padding:6px;}

/* hero */
.rb-hero{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;min-height:82vh;padding:40px 0;}
.rb-hero__glow{position:absolute;top:48%;left:72%;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(199,242,74,.22),transparent 60%);filter:blur(20px);animation:stagePulse 6s ease-in-out infinite;pointer-events:none;z-index:0;}
.rb-hero__copy{position:relative;z-index:2;}
.rb-hero__copy .eyebrow{display:block;margin-bottom:26px;}
.rb-h1{font-family:var(--display);font-weight:700;font-size:clamp(46px,6.4vw,88px);line-height:.96;letter-spacing:-.03em;margin:0 0 26px;}
.wr{display:inline-block;overflow:hidden;padding:0 .04em;}
.wri{display:inline-block;transform:translateY(115%);transition:transform .8s cubic-bezier(.2,.8,.2,1);}
.sheenw{background:linear-gradient(100deg,#f2f3ee 0 42%,#eaffb0 50%,#f2f3ee 58% 100%);background-size:230% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:sheen 5s linear infinite;}
.sheenw.d{animation-delay:.3s;}
.rb-hero__sub{font-size:clamp(17px,1.5vw,20px);line-height:1.55;color:var(--muted);max-width:46ch;margin:0 0 36px;}
.rb-hero__cta{display:flex;gap:14px;flex-wrap:wrap;}
.hero-enter{opacity:0;transform:translateY(12px);transition:opacity .7s,transform .7s;}
.hero-enter.in{opacity:1;transform:none;}
.hero-enter.d1{transition-delay:.1s;} .hero-enter.d2{transition-delay:.5s;} .hero-enter.d3{transition-delay:.7s;}

/* phone cluster */
.scene{position:relative;height:540px;perspective:1700px;perspective-origin:50% 42%;z-index:2;}
.cluster{position:absolute;inset:0;transform-style:preserve-3d;display:flex;align-items:center;justify-content:center;}
.rb-phone{position:absolute;width:212px;height:440px;transform-style:preserve-3d;will-change:transform;}
.rb-phone--main{z-index:3;}
.rb-face{position:absolute;inset:0;border-radius:34px;background:linear-gradient(160deg,#16180f,#0f110c);border:1px solid rgba(255,255,255,.1);overflow:hidden;box-shadow:inset 0 0 0 5px #06070a,0 30px 60px rgba(0,0,0,.55);}
.rb-face--main{border-radius:36px;background:linear-gradient(160deg,#1b1e13,#101209);border-color:rgba(255,255,255,.12);box-shadow:inset 0 0 0 5px #06070a,0 34px 66px rgba(0,0,0,.6);}
.rb-slice{position:absolute;inset:0;pointer-events:none;}
.rb-notch{position:absolute;top:9px;left:50%;transform:translateX(-50%);width:70px;height:18px;background:#06070a;border-radius:999px;z-index:5;}
.rb-notch--main{top:10px;width:74px;height:20px;}
.rb-screen{position:absolute;inset:0;padding:32px 15px 15px;display:flex;flex-direction:column;gap:11px;}
.rb-screen--main{padding:34px 16px 16px;gap:12px;}
.ph-mono{font-family:var(--mono);font-size:9px;letter-spacing:.12em;color:var(--mlime);}
.ph-bar{height:20px;width:70%;border-radius:6px;background:rgba(255,255,255,.08);}
.ph-img{border-radius:14px;overflow:hidden;height:92px;background:repeating-linear-gradient(135deg,#14160f 0 7px,#101209 7px 14px);border:1px solid rgba(255,255,255,.08);}
.ph-lines{display:flex;flex-direction:column;gap:6px;}
.shim{background:linear-gradient(90deg,rgba(255,255,255,.06) 0%,rgba(255,255,255,.06) 30%,rgba(199,242,74,.28) 50%,rgba(255,255,255,.06) 70%,rgba(255,255,255,.06) 100%);background-size:260% 100%;animation:shimmer 2.4s linear infinite;border-radius:4px;}
.shim--l{height:8px;width:80%;} .shim--m{height:8px;width:64%;} .shim--s{height:7px;width:52%;} .shim--xs{height:7px;width:44%;}
.shim--sq{width:32px;height:32px;border-radius:9px;flex:0 0 auto;}
.ph-cta{margin-top:auto;height:38px;border-radius:12px;background:rgba(199,242,74,.14);border:1px solid rgba(199,242,74,.3);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:var(--lime);}
.ph-head{display:flex;align-items:center;justify-content:space-between;}
.ph-head__brand{display:flex;align-items:center;gap:7px;font-family:var(--display);font-weight:700;font-size:13px;}
.ph-head__dot{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 8px var(--lime);}
.ph-head__time{font-family:var(--mono);font-size:10px;color:var(--faint2);}
.ph-ask{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:12px;min-height:70px;}
.ph-ask__label{font-family:var(--mono);font-size:9px;letter-spacing:.1em;color:var(--mlime);margin-bottom:7px;}
.ph-ask__body{font-size:12.5px;line-height:1.45;color:#dfe4d4;min-height:36px;}
.ph-caret{display:inline-block;width:2px;height:14px;background:var(--lime);margin-left:1px;vertical-align:-2px;animation:caret 1s steps(1) infinite;}
.ph-row{display:flex;align-items:center;gap:9px;}
.ph-row__lines{flex:1;display:flex;flex-direction:column;gap:6px;}
.ph-weekly{margin-top:auto;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px 13px;}
.ph-weekly__top{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px;}
.ph-weekly__k{font-family:var(--mono);font-size:9px;letter-spacing:.1em;color:var(--faint);}
.ph-weekly__val{font-size:15px;font-weight:700;color:var(--lime);}
.ph-spark{width:100%;height:40px;display:block;overflow:visible;}
.ph-spark polyline{stroke-dasharray:520;animation:sparkdraw 6s ease-in-out infinite;}
.ring-shadow{position:absolute;bottom:2%;left:50%;width:70%;height:56px;border-radius:50%;background:radial-gradient(ellipse,rgba(199,242,74,.4),transparent 72%);filter:blur(9px);animation:ringBreathe 5s ease-in-out infinite;z-index:0;}

/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:40px 0 120px;}
.glass{background:var(--glass-bg);border:1px solid var(--glass-bd);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
.stat{border-radius:18px;padding:26px 24px;}
.stat__num{font-family:var(--display);font-weight:700;font-size:38px;color:var(--lime);letter-spacing:-.02em;}
.stat__label{color:var(--faint);font-size:14px;margin-top:4px;}

/* slider */
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:34px;gap:20px;flex-wrap:wrap;}
.sec-head .eyebrow{display:block;margin-bottom:14px;}
.sec-head h2{max-width:20ch;}
.slider-nav{display:none;gap:10px;}
.slider-nav.on{display:flex;}
.rb-arrow{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);color:var(--fg);cursor:pointer;font-size:16px;}
.slider{overflow:hidden;border-radius:24px;}
.track{display:flex;transition:transform .7s cubic-bezier(.65,.05,.2,1);}
.slide{min-width:100%;display:grid;grid-template-columns:1fr 1fr;background:rgba(255,255,255,.03);border:1px solid var(--glass-bd);}
.slide__copy{padding:48px;display:flex;flex-direction:column;justify-content:center;}
.slide__app{display:flex;align-items:center;gap:12px;margin-bottom:18px;}
.app-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:26px;flex:0 0 auto;}
.app-icon--lime{background:var(--lime);} .app-icon--fg{background:var(--fg);}
.slide__name{font-family:var(--display);font-weight:700;font-size:28px;margin:0;}
.slide__tag{font-family:var(--mono);font-size:11px;color:var(--faint);}
.slide__desc{color:var(--muted2);font-size:16px;line-height:1.6;margin:0 0 22px;max-width:40ch;}
.slide__shot{position:relative;min-height:340px;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,#14160f,#14160f 12px,#101209 12px,#101209 24px);}
.ring-dashed{position:absolute;width:200px;height:200px;border-radius:50%;border:1px dashed rgba(199,242,74,.4);animation:spin 22s linear infinite;}
.ring-solid{position:absolute;width:150px;height:150px;border-radius:50%;border:1px solid rgba(255,255,255,.08);animation:spin 16s linear infinite reverse;}
.ring-prog{position:absolute;width:110px;height:110px;border-radius:50%;border:2px solid rgba(255,255,255,.1);border-top-color:var(--lime);animation:spin 9s linear infinite;}
.shot-label{font-family:var(--mono);font-size:11px;color:var(--faint2);z-index:1;}
.dots{display:flex;gap:8px;justify-content:center;margin-top:20px;}
.dots button{width:9px;height:9px;border-radius:999px;border:none;cursor:pointer;padding:0;background:rgba(255,255,255,.2);transition:width .3s,background .3s;}
.dots button.on{width:24px;background:var(--lime);}

/* values */
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.valcard{border-radius:18px;padding:26px;}
.valcard__icon{width:46px;height:46px;border-radius:12px;background:rgba(199,242,74,.12);display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.valcard h3{font-family:var(--display);font-weight:600;font-size:18px;margin:0 0 8px;}
.valcard p{color:var(--muted);font-size:14px;line-height:1.6;margin:0;}
.ic-pen{transform-origin:4px 20px;}

/* studio ignite */
.ignite{font-family:var(--display);font-weight:600;font-size:clamp(26px,3.6vw,46px);line-height:1.24;letter-spacing:-.02em;margin:0;max-width:24ch;}
.ignite span{color:rgba(255,255,255,.16);transition:color .5s;}

/* cta */
.rb-cta{position:relative;overflow:hidden;background:var(--lime);color:var(--bg);border-radius:26px;padding:clamp(40px,5vw,72px);margin-bottom:90px;}
.rb-cta__river{position:absolute;inset:0;width:150%;height:100%;opacity:.35;pointer-events:none;animation:river 9s linear infinite;}
.rb-cta__inner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap;}
.rb-cta__inner .eyebrow{color:var(--bg);opacity:.7;display:block;margin-bottom:16px;}
.rb-cta h2{font-family:var(--display);font-weight:700;font-size:clamp(28px,3.5vw,44px);letter-spacing:-.02em;margin:0 0 14px;line-height:1.02;max-width:20ch;}
.rb-cta p{font-size:16.5px;line-height:1.55;margin:0;opacity:.8;max-width:32ch;}

/* footer */
.rb-footer{border-top:1px solid var(--glass-bd);padding:52px 0 40px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:32px;}
.rb-footer__blurb{color:var(--faint2);font-size:14px;line-height:1.55;margin:14px 0 0;max-width:34ch;}
.rb-footer h5{font-family:var(--mono);font-size:11px;letter-spacing:.15em;color:var(--faint2);margin:0 0 16px;font-weight:400;}
.rb-footer__col a{display:block;color:var(--muted2);font-size:14.5px;margin-bottom:11px;}
.rb-footer__col a:hover{color:var(--fg);}
.rb-footer__bottom{border-top:1px solid var(--glass-bd);padding:22px 0 40px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;color:var(--faint3);font-size:13px;font-family:var(--mono);}
.rb-footer__bottom a{color:var(--faint3);} .rb-footer__bottom span{display:flex;gap:18px;}

/* reveal */
[data-reveal]{opacity:0;transform:translateY(48px);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1);}
[data-reveal].in{opacity:1;transform:none;}

/* =============== sub-pages =============== */
.subhero{padding:120px 0 40px;}
.subhero .eyebrow{display:block;margin-bottom:20px;}
.subhero h1{font-family:var(--display);font-weight:700;font-size:clamp(40px,6vw,76px);line-height:1;letter-spacing:-.03em;margin:0 0 20px;max-width:18ch;}
.subhero__lede{color:var(--muted);font-size:clamp(16px,1.6vw,19px);line-height:1.6;max-width:56ch;margin:0;}
.subhero__meta{font-family:var(--mono);font-size:12.5px;letter-spacing:.15em;color:var(--faint2);margin-top:16px;}

/* apps feature rows */
.feature{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-bottom:100px;}
.feature.alt .feature__shot{order:-1;}
.feature__app{display:flex;align-items:center;gap:14px;margin-bottom:20px;}
.feature__name{font-family:var(--display);font-weight:700;font-size:clamp(26px,3vw,36px);margin:0;}
.feature__tag{font-family:var(--mono);font-size:11px;color:var(--faint);}
.feature p{color:var(--muted2);font-size:16px;line-height:1.65;margin:0 0 22px;max-width:44ch;}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;}
.chip{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--muted2);background:rgba(255,255,255,.05);border:1px solid var(--glass-bd);padding:6px 12px;border-radius:999px;}
.feature__shot{position:relative;min-height:380px;border-radius:24px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:repeating-linear-gradient(135deg,#14160f,#14160f 12px,#101209 12px,#101209 24px);border:1px solid var(--glass-bd);}

/* about */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;}
.belief{margin-bottom:28px;} .belief h3{font-family:var(--display);font-weight:600;font-size:20px;margin:0 0 8px;} .belief p{color:var(--muted);font-size:15px;line-height:1.6;margin:0;}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.metric__num{font-family:var(--display);font-weight:700;font-size:36px;color:var(--lime);}
.metric__label{color:var(--faint);font-size:14px;margin-top:4px;}
.team{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.member__photo{aspect-ratio:1;border-radius:18px;background:repeating-linear-gradient(135deg,#14160f,#14160f 10px,#101209 10px,#101209 20px);border:1px solid var(--glass-bd);margin-bottom:12px;}
.member__name{font-family:var(--display);font-weight:600;font-size:16px;} .member__role{color:var(--faint);font-size:13px;font-family:var(--mono);}

/* careers */
.perks{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.perk{border-radius:18px;padding:28px;} .perk h3{font-family:var(--display);font-weight:600;font-size:19px;margin:0 0 8px;} .perk p{color:var(--muted);font-size:14.5px;line-height:1.6;margin:0;}
.perk__icon{width:46px;height:46px;border-radius:12px;background:rgba(199,242,74,.12);color:var(--lime);display:grid;place-items:center;margin-bottom:18px;}
.roles{display:flex;flex-direction:column;border-top:1px solid var(--glass-bd);}
.role{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:26px 8px;border-bottom:1px solid var(--glass-bd);transition:transform .3s cubic-bezier(.2,.8,.2,1),padding .3s;}
.role:hover{transform:translateX(10px);padding-left:20px;}
.role__title{font-family:var(--display);font-weight:600;font-size:clamp(19px,2vw,24px);}
.role__meta{font-family:var(--mono);font-size:12px;color:var(--faint);}
.role__arrow{color:var(--lime);font-size:20px;}

/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;}
.email-block{margin-bottom:24px;} .email-block__k{font-family:var(--mono);font-size:11px;letter-spacing:.15em;color:var(--faint2);margin-bottom:6px;} .email-block a{font-size:17px;}
.form-card{border-radius:22px;padding:32px;}
.field{margin-bottom:16px;} .field label{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--faint);margin-bottom:8px;text-transform:uppercase;}
.field input,.field textarea{width:100%;background:rgba(255,255,255,.05);border:1px solid var(--glass-bd);border-radius:12px;padding:12px 14px;color:var(--fg);font:inherit;font-size:15px;}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--lime);}
.field textarea{min-height:120px;resize:vertical;}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.segbar{display:flex;flex-wrap:wrap;gap:8px;}
.seg{font-size:13px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid var(--glass-bd);color:var(--muted2);cursor:pointer;font-family:inherit;}
.seg.on{background:var(--lime);color:var(--bg);border-color:transparent;font-weight:600;}
.form-note{color:var(--faint);font-size:13px;margin:14px 0 0;}
.form-ok{display:none;background:rgba(199,242,74,.12);border:1px solid rgba(199,242,74,.4);border-radius:14px;padding:18px;color:var(--muted2);font-size:15px;}
.form-ok.show{display:block;}

/* legal */
.legal-grid{display:grid;grid-template-columns:220px 1fr;gap:48px;align-items:start;}
.toc{position:sticky;top:90px;border-radius:18px;padding:22px;}
.toc h5{font-family:var(--mono);font-size:11px;letter-spacing:.15em;color:var(--faint2);margin:0 0 14px;font-weight:400;}
.toc a{display:block;color:var(--muted2);font-size:14px;margin-bottom:10px;}
.toc a:hover{color:var(--fg);}
.legal-body h2{font-family:var(--display);font-weight:600;font-size:22px;margin:36px 0 12px;scroll-margin-top:90px;}
.legal-body h2:first-child{margin-top:0;}
.legal-body p,.legal-body li{color:var(--muted);font-size:15px;line-height:1.75;}
.legal-body p{margin:0 0 14px;} .legal-body ul{margin:0 0 16px;padding-left:20px;display:flex;flex-direction:column;gap:8px;}
.legal-body strong{color:var(--fg);}
.shield-callout{display:flex;gap:14px;align-items:flex-start;background:rgba(199,242,74,.1);border:1px solid rgba(199,242,74,.3);border-radius:16px;padding:18px 20px;margin:0 0 28px;}
.shield-callout__i{color:var(--lime);flex:0 0 auto;}
.shield-callout p{margin:0;color:var(--muted2);font-size:14.5px;}

.center-cta{text-align:center;padding:20px 0;}
.center-cta h2{margin-bottom:16px;}
.card-sm{padding:22px;border-radius:16px;}
.card-md{padding:26px;border-radius:18px;}
.eyebrow--block{display:block;margin-bottom:16px;}

/* responsive */
@media (max-width:900px){
  .rb-hero{grid-template-columns:1fr;} .scene{height:440px;order:-1;}
  .stats,.values-grid,.metrics,.team{grid-template-columns:1fr 1fr;}
  .slide,.feature,.two-col,.contact-grid,.legal-grid{grid-template-columns:1fr;}
  .feature.alt .feature__shot{order:0;} .perks{grid-template-columns:1fr;}
  .toc{position:static;} .rb-footer{grid-template-columns:1fr 1fr;}
  .slide__shot,.feature__shot{min-height:260px;}
}
@media (max-width:640px){
  .rb-nav__links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:2px;background:rgba(12,14,10,.96);backdrop-filter:blur(14px);padding:12px;border-radius:16px;margin-top:8px;}
  .rb-nav__links.open{display:flex;}
  .rb-nav{position:relative;flex-wrap:wrap;}
  .rb-nav__toggle{display:block;}
  .stats,.values-grid,.metrics,.team{grid-template-columns:1fr;}
  .slide__copy,.form-card{padding:28px;} .field-row{grid-template-columns:1fr;}
  .rb-footer{grid-template-columns:1fr;}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;}
  html{scroll-behavior:auto;}
  .wri{transform:none;} .sheenw{-webkit-text-fill-color:#f2f3ee;color:#f2f3ee;background:none;}
  [data-reveal]{opacity:1;transform:none;} .hero-enter{opacity:1;transform:none;}
  .ignite span{color:#f2f3ee;}
}
