:root{
  /* 8th replay is black and white only. Color belongs to the products: lightbreak, larkfeed, greetform. */
  --brand:#0B0D10;--on-brand:#fff;--brand-rgb:11,13,16;--brand-deep-rgb:11,13,16;
  --b50:#F4F5F7;--b100:#E3E5E9;--b200:#C9CDD3;--b300:#9AA0A8;--b700:#23262C;--b900:#0B0D10;
  --lb:#F2622E;--lf:#2F5BEA;--gf:#1DB364;
  --ink:#0B0D10;--ink2:#15181D;--ink3:#23262C;--white:#fff;--slate:#8A9099;--gray:#50565F;--line:#E3E5E9;--mist:#F4F5F7;
  --display:"Mona Sans",system-ui,sans-serif;--body:"Geist",system-ui,sans-serif;--mono:"Geist Mono",ui-monospace,monospace;
  --pad:clamp(20px,4vw,48px);--max:1344px;--r:10px;--ease:cubic-bezier(.2,.8,.2,1);
}
/* 8th replay SaaS site kit. Brand colors come from tokens-<brand>.css */
/* lightbreak.ai · SaaS sales page v2 */

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--white);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video,svg{display:block;max-width:100%}
[hidden]{display:none!important}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
h1,h2,h3,h4{text-wrap:balance}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.mono{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:500}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:10px 14px;border-radius:8px;z-index:100}
.skip:focus{left:8px}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}

/* buttons: rounded rectangles, never pills, no arrows */
.btn{display:inline-flex;align-items:center;justify-content:center;height:54px;padding:0 26px;border-radius:var(--r);font-weight:600;font-size:16px;line-height:1;white-space:nowrap;transition:transform .15s ease,background .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px)}
.btn-ink{background:var(--ink);color:#fff}.btn-ink:hover{background:#23262c}
.btn-line{box-shadow:inset 0 0 0 1.5px var(--ink)}.btn-line:hover{background:rgba(11,13,16,.06)}
.btn-white{background:#fff;color:var(--ink)}
.btn-brand{background:var(--brand);color:var(--ink)}
.btn-ghost-w{box-shadow:inset 0 0 0 1.5px #3A3F47;color:#fff}.btn-ghost-w:hover{background:rgba(255,255,255,.06)}
.btn-sm{height:42px;padding:0 18px;font-size:14.5px;border-radius:9px}

/* nav: logo | centered links | actions */
.nav{position:relative;z-index:20;height:84px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.logo{display:flex;align-items:center;gap:10px;flex:none;justify-self:start}
.logo .ic{height:38px;width:auto}.logo .wm{height:24px;width:auto}
.nav .links{display:flex;gap:34px;font-size:15px;font-weight:500}
.nav .links a{position:relative;padding:6px 0}
.nav .links a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}
.nav .links a:hover::after{transform:scaleX(1)}
.nav .r{justify-self:end;display:flex;gap:22px;align-items:center;font-size:15px;font-weight:500}
.menu-btn{display:none;width:42px;height:42px;border-radius:9px;box-shadow:inset 0 0 0 1.5px var(--ink);place-items:center}
.menu-btn span{display:block;width:18px;height:2px;background:var(--ink);box-shadow:0 -6px 0 var(--ink),0 6px 0 var(--ink)}
.mobile-menu{display:none}

/* hero */
.hero-top{background:var(--brand);position:relative;z-index:20}
.hero{background:var(--brand);position:relative;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,760px);gap:40px;padding-top:20px;padding-bottom:40px;align-items:start}
.hero .eyebrow{margin:28px 0 22px}
.hero h1{font-family:var(--display);font-weight:900;font-size:clamp(52px,6.3vw,94px);line-height:.9;letter-spacing:-.05em}
.hero h1 .ln{display:block;white-space:nowrap}
.hero h1 .w{color:#fff}
.hero .sub{margin-top:34px;max-width:490px;font-size:20px;line-height:1.5}
.hero .sub b{font-weight:650}
.hero .ctas{margin-top:34px;display:flex;gap:12px;flex-wrap:wrap}
.hero .fine{margin-top:18px;font-size:14px;opacity:.85}

.flow{position:relative;display:grid;grid-template-columns:282px 1fr 362px;min-height:760px;margin-top:4px}
.flow .lbl{position:absolute;top:0;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:500}
.cards{grid-column:1;display:flex;flex-direction:column;gap:22px;padding-top:26px;position:relative;z-index:4}
.src{height:94px;background:#fff;border-radius:14px;display:flex;align-items:center;gap:14px;padding:10px 14px 10px 10px;box-shadow:0 1px 0 rgba(0,0,0,.05),0 16px 32px -18px rgba(80,20,0,.55);opacity:0;transform:translateX(-14px);animation:cardIn .6s var(--ease) forwards;position:relative;transition:box-shadow .35s,transform .35s}
.src img{width:74px;height:74px;border-radius:9px;object-fit:cover;flex:none}
.src .cat{font-family:var(--display);font-weight:900;font-size:19px;letter-spacing:-.03em;line-height:1;display:flex;align-items:center;gap:8px}
.src .cat i{width:8px;height:8px;border-radius:2px;background:var(--brand)}
.src .t{font-size:12.5px;line-height:17px;color:var(--gray);margin-top:5px}
.src .from{position:absolute;right:10px;top:9px;font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--slate)}
.src .ok{position:absolute;right:10px;bottom:9px;font-size:11px;font-weight:700;color:#fff;background:var(--ink);border-radius:5px;padding:3px 7px;opacity:0;transform:translateY(4px);transition:opacity .3s,transform .3s}
.src.on{transform:translateX(6px) !important;box-shadow:0 0 0 2.5px var(--ink),0 22px 40px -18px rgba(80,20,0,.6)}
.src.on .ok{opacity:1;transform:none}
@keyframes cardIn{to{opacity:1;transform:none}}
svg.wires{position:absolute;inset:0;width:100%;height:100%;z-index:3;overflow:visible;pointer-events:none}
svg.wires .base{fill:none;stroke:var(--ink);stroke-width:2;opacity:.9}
svg.wires .pulse{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-dasharray:6 120;animation:flow 2.4s linear infinite}
svg.wires .hot{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;opacity:0;transition:opacity .3s}
svg.wires .hot.on{opacity:1}
@keyframes flow{to{stroke-dashoffset:-126}}
.hub{position:absolute;z-index:5;width:22px;height:22px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 5px var(--brand),0 0 0 7px var(--ink);transform:translate(-50%,-50%)}
.hub.ping{animation:ping .6s var(--ease)}
@keyframes ping{50%{box-shadow:0 0 0 9px var(--brand),0 0 0 11px var(--ink)}}
.issue{grid-column:3;position:relative;z-index:5;margin-top:26px;border-radius:18px;background:var(--ink);padding:10px;box-shadow:0 50px 100px -40px rgba(var(--brand-deep-rgb),.8);align-self:start}
.issue .bar{height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 8px;color:#fff}
.issue .bar b{font-size:13.5px;font-weight:600;display:flex;gap:9px;align-items:center}
.issue .bar b img{height:20px;width:auto}
.issue .bar span{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:#9AA0A8}
.issue .scr{height:674px;border-radius:10px;overflow:hidden;background:#fff;position:relative}
.issue .scr img{width:100%;height:auto;will-change:transform}
.issue .scr .fade{position:absolute;inset:0;background:#fff;opacity:0;transition:opacity .6s;pointer-events:none}
.issue .built{position:absolute;left:50%;bottom:-16px;transform:translateX(-50%);background:#fff;border-radius:10px;padding:9px 14px;font-size:13px;font-weight:600;white-space:nowrap;box-shadow:0 14px 30px -12px rgba(0,0,0,.45);display:flex;gap:8px;align-items:center}
.issue .built i{width:8px;height:8px;border-radius:50%;background:#16A34A;box-shadow:0 0 0 4px rgba(22,163,74,.18)}
.hero-meta{display:flex;justify-content:space-between;gap:20px;border-top:1.5px solid var(--ink);padding:14px 0 36px;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase}

/* proof bar */
.proof{background:var(--ink);color:#fff}
.proof .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:44px 0 40px 28px;border-left:1px solid #23262c}
.stat:first-child{border-left:0;padding-left:0}
.stat .n{font-family:var(--display);font-weight:900;font-size:clamp(44px,5vw,68px);letter-spacing:-.045em;line-height:1}
.stat .n em{font-style:normal;color:var(--brand)}
.stat .l{margin-top:10px;color:#9AA0A8;font-size:15px}

/* shared section heads */
section.s{padding:clamp(80px,10vw,140px) 0}
.kick{display:flex;align-items:center;gap:10px;margin-bottom:22px}
.kick i{width:9px;height:9px;border-radius:2px;background:var(--brand)}
h2.big{font-family:var(--display);font-weight:900;font-size:clamp(42px,5.6vw,80px);line-height:.95;letter-spacing:-.045em;max-width:14ch}
.lede{font-size:20px;line-height:1.5;color:var(--gray);max-width:560px}
.head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);align-items:end;gap:40px;margin-bottom:64px}
.head .lede{padding-bottom:8px}

/* ===== demo player ===== */

.player{position:relative;border-radius:22px;background:var(--ink);padding:12px;box-shadow:0 60px 120px -50px rgba(11,13,16,.55)}
.screen{--z:1.22;position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#F4F5F7;color:var(--ink);font-size:14px}
.app{position:absolute;inset:0;zoom:var(--z,1);display:grid;grid-template-columns:200px 1fr;grid-template-rows:54px 1fr}
.app .side{grid-row:1/3;background:#fff;border-right:1px solid var(--line);padding:16px 12px;display:flex;flex-direction:column;gap:4px}
.app .side .brand{display:flex;align-items:center;gap:8px;padding:2px 8px 16px}
.app .side .brand img{height:26px;width:auto}
.app .side .brand b{font-family:var(--display);font-weight:800;font-size:17px;letter-spacing:-.04em}
.app .side .brand b span{color:var(--brand)}
.app .side a{display:flex;align-items:center;gap:10px;height:36px;padding:0 10px;border-radius:8px;font-weight:550;font-size:13.5px;color:var(--gray);transition:background .3s,color .3s}
.app .side a i{width:16px;height:16px;border-radius:4px;background:var(--line);transition:background .3s}
.app .side a.on{background:var(--b50);color:var(--ink)}
.app .side a.on i{background:var(--brand)}
.app .top{display:flex;align-items:center;gap:14px;padding:0 20px;background:#fff;border-bottom:1px solid var(--line)}
.app .top b{font-weight:650;font-size:14px}
.app .top .pill{font-size:11.5px;font-weight:600;padding:4px 8px;border-radius:6px;background:var(--mist);color:var(--gray)}
.app .top .timer{margin-left:auto;font-family:var(--mono);font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px}
.app .top .timer i{width:8px;height:8px;border-radius:50%;background:var(--brand);animation:blink 1s steps(2) infinite}
@keyframes blink{50%{opacity:.2}}
.app .main{position:relative;padding:18px 20px;overflow:hidden}
.scene{position:absolute;inset:18px 20px;opacity:0;transform:translateY(10px);transition:opacity .5s var(--ease),transform .5s var(--ease);pointer-events:none}
.scene.on{opacity:1;transform:none}
.rows{display:flex;flex-direction:column;gap:8px}
.row{display:grid;grid-template-columns:22px 48px 1fr auto;gap:12px;align-items:center;background:#fff;border-radius:10px;padding:8px 12px;box-shadow:0 1px 0 rgba(0,0,0,.04);opacity:0;transform:translateX(-10px);transition:opacity .4s,transform .4s,box-shadow .3s}
.scene.on .row{opacity:1;transform:none}
.row .ck{width:18px;height:18px;border-radius:5px;box-shadow:inset 0 0 0 1.5px #C9CDD3;display:grid;place-items:center;transition:background .2s}
.row.sel .ck{background:var(--ink);box-shadow:none}
.row.sel .ck::after{content:"";width:8px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}
.row.sel{box-shadow:0 0 0 2px var(--ink)}
.row img{width:48px;height:36px;border-radius:6px;object-fit:cover}
.row b{display:block;font-size:13.5px;line-height:1.25}
.row small{font-size:11.5px;color:var(--slate)}
.tag{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:4px 7px;border-radius:5px;background:var(--mist);color:var(--gray);white-space:nowrap}
.compose{display:grid;grid-template-columns:1fr 1fr;gap:16px;height:100%}
.doc{background:#fff;border-radius:12px;padding:18px;box-shadow:0 1px 0 rgba(0,0,0,.04)}
.doc .sec{font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--brand);font-weight:600}
.doc h5{font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:-.02em;line-height:1.15;margin:8px 0 10px}
.doc p{font-size:13px;line-height:1.55;color:#3A3F47}
.doc p b{color:var(--ink)}
.type::after{content:"";display:inline-block;width:2px;height:14px;background:var(--brand);margin-left:2px;vertical-align:-2px;animation:blink .8s steps(2) infinite}
.voice{display:flex;flex-direction:column;gap:10px}
.voice .opt{background:#fff;border-radius:10px;padding:12px 14px;font-size:13px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px 0 rgba(0,0,0,.04)}
.voice .opt.on{box-shadow:0 0 0 2px var(--ink)}
.ledger2{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 0 rgba(0,0,0,.04)}
.ledger2 .lr{display:grid;grid-template-columns:1.1fr 1.4fr .8fr .6fr;gap:10px;padding:13px 16px;border-top:1px solid var(--line);align-items:center;font-size:13.5px}
.ledger2 .lr:first-child{border-top:0;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);background:var(--mist)}
.ledger2 .lr span:last-child{text-align:right;font-variant-numeric:tabular-nums}
.st{font-size:11.5px;font-weight:700;padding:4px 8px;border-radius:5px;background:var(--mist);color:var(--gray);transition:all .3s}
.st.bk{background:var(--b100);color:var(--b700)}
.ledger2 .tot{display:flex;justify-content:space-between;padding:14px 16px;font-weight:700;background:var(--b50)}
.ledger2 .tot b{font-family:var(--display);font-size:20px;color:var(--b700)}
.publish{display:grid;grid-template-columns:1.1fr 1fr;gap:16px;align-items:start}
.plist{display:flex;flex-direction:column;gap:8px}
.plist .p{background:#fff;border-radius:10px;height:54px;display:flex;align-items:center;gap:12px;padding:0 14px;font-weight:650;box-shadow:0 1px 0 rgba(0,0,0,.04)}
.plist .p .lg{width:30px;height:30px;border-radius:7px;background:var(--ink);color:#fff;display:grid;place-items:center;font-family:var(--display);font-weight:900;font-size:12px}
.plist .p.on{box-shadow:0 0 0 2px var(--ink)}
.plist .p em{margin-left:auto;font-style:normal;font-size:12px;color:var(--slate);font-weight:500}
.sendcard{background:var(--ink);color:#fff;border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:14px}
.sendcard .big{font-family:var(--display);font-weight:900;font-size:44px;letter-spacing:-.04em;line-height:1}
.sendcard .big em{font-style:normal;color:var(--brand)}
.sendbtn{height:46px;border-radius:9px;background:var(--brand);color:var(--ink);font-weight:700;display:grid;place-items:center;transition:transform .15s}
.sendbtn.press{transform:scale(.96)}
.toast{position:absolute;right:22px;bottom:22px;background:var(--ink);color:#fff;border-radius:12px;padding:14px 16px;display:flex;gap:12px;align-items:center;font-size:13.5px;box-shadow:0 20px 40px -12px rgba(0,0,0,.5);opacity:0;transform:translateY(12px);transition:all .4s var(--ease)}
.toast.on{opacity:1;transform:none}
.toast i{width:26px;height:26px;border-radius:50%;background:#16A34A;display:grid;place-items:center;flex:none}
.toast i::after{content:"";width:10px;height:6px;border-left:2.5px solid #fff;border-bottom:2.5px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}
.cursor{position:absolute;width:22px;height:22px;z-index:9;pointer-events:none;transition:left .7s var(--ease),top .7s var(--ease);left:60%;top:60%}
.cursor svg{filter:drop-shadow(0 3px 4px rgba(0,0,0,.35))}
.cursor.click::after{content:"";position:absolute;left:-10px;top:-10px;width:30px;height:30px;border-radius:50%;background:rgba(var(--brand-rgb),.35);animation:clk .45s ease-out}
@keyframes clk{from{transform:scale(.3);opacity:1}to{transform:scale(1.4);opacity:0}}
.caption{position:absolute;left:24px;bottom:24px;z-index:8;max-width:62%;pointer-events:none}
.caption .cap{display:inline-block;background:var(--brand);color:var(--ink);font-family:var(--display);font-weight:900;font-size:clamp(20px,2.6vw,38px);letter-spacing:-.04em;line-height:1;padding:12px 16px;border-radius:10px;box-shadow:0 20px 40px -14px rgba(0,0,0,.45);opacity:0;transform:translateY(14px) rotate(-1.5deg);transition:all .45s var(--ease)}
.caption .cap.on{opacity:1;transform:rotate(-1.5deg)}
.chapters{display:grid;grid-template-columns:auto repeat(5,1fr);gap:8px;margin-top:14px;align-items:stretch}
.chapters .pp{width:54px;border-radius:10px;background:#1A1D22;box-shadow:inset 0 0 0 1px #2A2E35;display:grid;place-items:center}
.chapters .pp svg{width:16px;height:16px}
.chap{position:relative;text-align:left;border-radius:10px;background:#1A1D22;box-shadow:inset 0 0 0 1px #2A2E35;padding:12px 14px 14px;color:#A3A9B2;overflow:hidden;transition:color .2s}
.chap b{display:block;color:#fff;font-weight:600;font-size:14.5px;margin-top:2px}
.chap .mono{font-size:10.5px}
.chap .bar{position:absolute;left:0;bottom:0;height:3px;background:var(--brand);width:0}
.chap.on{color:#fff}
.chap.done .bar{width:100%}
.demo-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:40px;flex-wrap:wrap}
.demo-foot p{color:var(--gray);font-size:17px}
.demo-foot p b{color:var(--ink)}

/* ===== section backgrounds: every section differs from its neighbors ===== */
.demo{background:#fff}
.build{background:var(--mist)}
.gifs{background:var(--ink);color:#fff}
.sources{background:#fff}
.tech{background:var(--ink);color:#fff}
.tech .kick{color:#fff}.tech .lede{color:#A3A9B2}
.cust{background:#fff}
.pricing{background:var(--ink);color:#fff}
.about-sec{background:var(--mist)}

/* ===== pinned drag-and-drop builder ===== */
.pin{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:64px;position:relative}
.pin-left{align-self:start;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:center;gap:28px}
.pin-left h2{font-family:var(--display);font-weight:900;font-size:clamp(40px,4.4vw,64px);line-height:.95;letter-spacing:-.045em}
.steps2{list-style:none;display:flex;flex-direction:column;gap:6px}
.step2{display:grid;grid-template-columns:52px 1fr;gap:12px;padding:14px 18px;border-radius:14px;transition:background .35s,opacity .35s,box-shadow .35s;opacity:.4;cursor:pointer}
.step2 .num{font-family:var(--display);font-weight:900;font-size:42px;line-height:.9;letter-spacing:-.05em;color:var(--slate)}
.step2 b{font-family:var(--display);font-weight:800;font-size:21px;letter-spacing:-.03em;display:block;line-height:1.15}
.step2 p{font-size:15.5px;color:var(--gray);margin-top:4px;max-height:0;overflow:hidden;transition:max-height .45s var(--ease)}
.step2.on{opacity:1;background:#fff;box-shadow:0 20px 40px -26px rgba(11,13,16,.35)}
.step2.on .num{color:var(--brand)}
.step2.on p{max-height:120px}
.pin-stage{position:sticky;top:0;height:100vh;display:flex;align-items:center}
.builder{position:relative;width:100%;background:#fff;border-radius:22px;box-shadow:0 50px 100px -50px rgba(11,13,16,.45),0 0 0 1px var(--line);overflow:hidden;font-size:14px}
.b-top{height:50px;display:flex;align-items:center;gap:14px;padding:0 18px;border-bottom:1px solid var(--line)}
.b-dots{display:flex;gap:6px}.b-dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.b-top b{font-size:14px}
.b-save{margin-left:auto;font-size:12px;font-weight:600;color:#16A34A}
.b-body{display:grid;grid-template-columns:250px 1fr;height:min(66vh,600px)}
.rail{background:var(--mist);border-right:1px solid var(--line);padding:14px;display:flex;flex-direction:column;gap:12px;position:relative;overflow:hidden}
.tabs{display:flex;flex-wrap:wrap;gap:5px}
.tabs span{font-size:11.5px;font-weight:600;padding:5px 9px;border-radius:7px;background:#fff;color:var(--gray);transition:all .3s}
.builder[data-step="0"] .t0,.builder[data-step="1"] .t1,.builder[data-step="2"] .t2,.builder[data-step="3"] .t2{background:var(--ink);color:#fff}
.rl{display:none;flex-direction:column;gap:8px}
.builder[data-step="0"] .rl[data-for="0"],.builder[data-step="1"] .rl[data-for="1"],.builder[data-step="2"] .rl[data-for="2"],.builder[data-step="3"] .rl[data-for="2"]{display:flex;animation:gfIn .4s var(--ease)}
.it{display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:center;background:#fff;border-radius:10px;padding:7px;box-shadow:0 1px 0 rgba(0,0,0,.05)}
.it img{width:44px;height:44px;border-radius:7px;object-fit:cover}
.it b{display:block;font-size:12.5px;line-height:1.25}.it small{font-size:11px;color:var(--slate)}
.it.lift{box-shadow:0 0 0 2px var(--ink);opacity:.35}
.canvas{padding:16px 22px 16px;display:flex;flex-direction:column;gap:12px;overflow:hidden;background:#fff}
.mast{font-family:var(--display);font-weight:900;font-size:26px;letter-spacing:-.03em;color:#1E4FA8;border-bottom:2px solid #1E4FA8;padding-bottom:8px;display:flex;justify-content:space-between;align-items:baseline}
.mast small{font-family:var(--body);font-size:11px;font-weight:600;letter-spacing:0;color:var(--gray)}
.blk{border-radius:12px;box-shadow:inset 0 0 0 1.5px var(--line);padding:12px 14px;display:none;position:relative}
.blk .sec{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;color:var(--brand);font-weight:600}
.blk h5{font-family:var(--display);font-weight:800;font-size:16px;letter-spacing:-.02em;line-height:1.2;margin:3px 0 5px}
.blk p{font-size:12px;line-height:1.5;color:#3A3F47}
.blk.media{grid-template-columns:150px 1fr;gap:12px;align-items:center}
.blk.media img{width:130px;height:84px;border-radius:8px;object-fit:cover}
.blk.home{padding:0;overflow:hidden}
.blk.home img{width:100%;height:118px;object-fit:cover}
.blk.home .hp{display:flex;align-items:baseline;gap:12px;padding:10px 14px}
.blk.home .hp b{font-family:var(--display);font-weight:900;font-size:22px;letter-spacing:-.03em}
.blk.home .hp span{font-size:12.5px;color:var(--gray)}.blk.home .hp em{margin-left:auto;font-style:normal;font-size:12px;font-weight:600}
.gifb{position:absolute;right:10px;top:10px;font-size:10.5px;font-weight:800;padding:3px 7px;border-radius:5px;background:var(--brand);color:var(--ink)}
.blk.show{display:block;animation:land .55s var(--ease)}
.blk.media.show{display:grid}
@keyframes land{from{opacity:0;transform:translateY(-10px) scale(.97)}to{opacity:1;transform:none}}
.drop{border:2px dashed #C9CDD3;border-radius:12px;min-height:56px;display:grid;place-items:center;color:var(--slate);font-size:12.5px;font-weight:600;transition:all .3s;flex:none}
.drop.hot{border-color:var(--brand);background:var(--b50);color:var(--b700)}
.b-send{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 18px;border-top:1px solid var(--line);background:var(--ink);color:#fff;transform:translateY(100%);transition:transform .5s var(--ease);position:absolute;left:0;right:0;bottom:0}
.b-send .mono{font-size:10px;color:#9AA0A8;display:block;margin-bottom:3px}
.b-send b{font-size:15px}
.builder[data-step="3"] .b-send{transform:none}
.builder[data-step="2"] .drop,.builder[data-step="3"] .drop{display:none}
.builder[data-step="3"] .b-send .btn{animation:pulse 1.4s ease-in-out infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(var(--brand-rgb),.25)}}
.ghost{position:absolute;z-index:5;pointer-events:none;border-radius:10px;background:#fff;box-shadow:0 24px 50px -16px rgba(11,13,16,.55),0 0 0 2px var(--ink);display:none;grid-template-columns:44px 1fr;gap:10px;align-items:center;padding:7px;width:222px}
.ghost img{width:44px;height:44px;border-radius:7px;object-fit:cover}
.ghost b{font-size:12.5px;line-height:1.25}

/* ===== auto GIFs (signature feature) ===== */
.gif-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:40px;align-items:end;margin-bottom:64px}
.gifs .kick{color:#fff}.gifs .lede{color:#A3A9B2}
.gifs h2.big{max-width:13ch}
.gif-row{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start}
.gcard{background:#fff;color:var(--ink);border-radius:20px;padding:14px 14px 18px;box-shadow:0 40px 80px -40px rgba(var(--brand-rgb),.55)}
.gcard:nth-child(2){margin-top:56px}.gcard:nth-child(3){margin-top:112px}
.gsec{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--brand);font-weight:600;padding:4px 4px 10px}
.gcard img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:12px}
.gcard figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:12px 4px 0}
.gcard figcaption b{font-family:var(--display);font-weight:800;font-size:19px;letter-spacing:-.02em}
.gcard figcaption span{font-size:13px;color:var(--slate)}

/* ===== sources mosaic ===== */
.mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:12px}
.mt{border-radius:18px;position:relative;overflow:hidden;padding:18px;display:flex;flex-direction:column;justify-content:flex-end;background-size:cover;background-position:center}
.mt.big{grid-column:span 2;grid-row:span 2}
.mt.photo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,13,16,0) 35%,rgba(11,13,16,.82))}
.mt.photo{color:#fff;transition:transform .5s var(--ease)}
.mt.photo:hover{transform:scale(1.015)}
.mtx{position:relative;z-index:1}
.mtx b{display:block;font-family:var(--display);font-weight:900;font-size:26px;letter-spacing:-.035em;line-height:1}
.mt.big .mtx b{font-size:46px}
.mtx span{font-size:14px;opacity:.85}
.mt em{position:absolute;z-index:1;right:14px;top:14px;font-style:normal;font-size:12px;font-weight:700;padding:5px 9px;border-radius:7px;background:#fff;color:var(--ink);display:flex;align-items:center;gap:6px}
.mt em::before{content:"";width:7px;height:7px;border-radius:50%;background:#16A34A}
.mt.ink{background:var(--ink);color:#fff}
.mt.orange{background:var(--brand);color:var(--ink)}
.mt.tint{background:var(--b100);color:var(--ink)}
.jobs{display:flex;flex-direction:column;gap:6px;margin-bottom:auto;margin-top:26px}
.jobs div{background:#1A1D22;border-radius:8px;padding:7px 10px;font-size:12px;display:flex;flex-direction:column}
.jobs b{font-size:12.5px}.jobs span{color:#9AA0A8;font-size:11px}
.yt,.docs{margin-bottom:auto;margin-top:22px}
.docs{display:flex;gap:8px}.docs i{width:46px;height:58px;border-radius:6px;background:#fff;box-shadow:0 8px 16px -8px rgba(81,42,32,.5);position:relative}
.docs i::after{content:"";position:absolute;left:8px;right:8px;top:12px;height:28px;background:repeating-linear-gradient(var(--b200) 0 3px,transparent 3px 8px)}

/* ===== money: sponsors + send ===== */
.money-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,600px);gap:64px;align-items:center}
.money h2.big{max-width:12ch}
.sendto{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:34px}
.stt{background:#fff;border-radius:14px;padding:16px;display:flex;align-items:center;gap:12px;box-shadow:0 14px 30px -20px rgba(81,42,32,.4)}
.stt .lg{width:42px;height:42px;border-radius:10px;background:var(--ink);color:#fff;display:grid;place-items:center;font-family:var(--display);font-weight:900;font-size:15px;flex:none}
.stt b{display:block;font-size:16px}.stt small{font-size:13px;color:var(--gray)}
.stt em{margin-left:auto;font-style:normal;font-size:12px;font-weight:700;color:#16A34A}
.ledger{background:var(--ink);color:#fff;border-radius:22px;padding:10px 0 6px;font-size:15px;box-shadow:0 50px 100px -40px rgba(81,42,32,.55)}
.lhead{display:flex;justify-content:space-between;align-items:center;padding:14px 22px 12px}
.lhead b{font-family:var(--display);font-weight:800;font-size:19px;letter-spacing:-.02em}.lhead .mono{color:#7C838D;font-size:11px}
.ledger .row3{display:grid;grid-template-columns:1.1fr 1.4fr .8fr .6fr;gap:10px;padding:13px 22px;border-top:1px solid #23262c;align-items:center}
.ledger .row3:nth-child(2){font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#7C838D}
.ledger .row3 span:last-child{text-align:right;font-variant-numeric:tabular-nums}
.pill-s{display:inline-block;font-size:12px;font-weight:600;padding:3px 8px;border-radius:5px;background:#23262c;font-style:normal;transition:all .4s}
.pill-s.bk{background:rgba(var(--brand-rgb),.2);color:#FF8A5E}
.ledger .tot{display:flex;justify-content:space-between;align-items:center;padding:16px 22px 12px;border-top:1px solid #23262c;font-weight:700}
.ledger .tot b{font-family:var(--display);font-size:30px;letter-spacing:-.03em;color:var(--brand);font-variant-numeric:tabular-nums}

/* ===== customers ===== */
.quotes{display:grid;grid-template-columns:1.2fr 1fr;gap:14px;align-items:stretch}
.q{border-radius:22px;padding:36px;display:flex;flex-direction:column;gap:22px;position:relative;overflow:hidden}
.q.feat{background:var(--brand)}
.q.dark{background:var(--ink);color:#fff}
.q.soft{background:var(--b100)}
.q .qm{font-family:var(--display);font-weight:900;font-size:180px;line-height:.6;height:78px;letter-spacing:-.05em;color:var(--brand)}
.q.feat .qm{color:#fff}.q.soft .qm{color:var(--b700)}
.q blockquote{font-family:var(--display);font-weight:800;letter-spacing:-.03em;line-height:1.18;font-size:23px}
.q.feat blockquote{font-size:clamp(30px,3.2vw,44px);line-height:1.08;letter-spacing:-.04em}
.q .res{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.q .res span{font-size:14px;font-weight:650;padding:8px 12px;border-radius:9px;background:#fff;color:var(--ink)}
.q .res span.was{color:var(--slate);text-decoration:line-through;text-decoration-thickness:2px}
.q.dark .res span{background:#23262C;color:#fff}.q.dark .res span.was{color:#7C838D}
.q .res em{font-style:normal;font-family:var(--display);font-weight:900;font-size:18px}
.q .who{margin-top:auto;display:flex;align-items:center;gap:14px;padding-top:18px;border-top:1.5px solid rgba(11,13,16,.14)}
.q.dark .who{border-color:#2A2E35}
.q .mast{display:flex;flex-direction:column;align-items:center;font-family:var(--display);font-weight:900;font-size:15px;letter-spacing:-.02em;background:var(--ink);color:#fff;border-radius:10px;padding:10px 12px;line-height:1.05;text-align:center;min-width:92px}
.q.dark .mast{background:var(--brand);color:var(--ink)}
.q .mast small{display:block;font-family:var(--mono);font-size:8.5px;letter-spacing:.12em;font-weight:500;opacity:.7;margin-top:4px}
.q .who b{display:block;font-weight:650;font-size:16px}
.q .who div span{font-size:14px;opacity:.75}

/* ===== pricing ===== */
.pr-head{margin-bottom:48px}
.pr-head h2{font-family:var(--display);font-weight:900;font-size:clamp(42px,5.4vw,78px);line-height:.95;letter-spacing:-.045em;max-width:16ch}
.pricing .kick{color:#fff}
.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}
.receipt{background:#FFFDF9;color:var(--ink);border-radius:18px 18px 0 0;padding:34px 34px 30px;position:relative;display:flex;flex-direction:column;gap:22px;transform:rotate(-1deg);box-shadow:0 40px 80px -40px rgba(var(--brand-rgb),.5)}
.receipt::after{content:"";position:absolute;left:0;right:0;bottom:-14px;height:14px;background:linear-gradient(-45deg,transparent 10px,#FFFDF9 0) 0 0/20px 14px repeat-x,linear-gradient(45deg,transparent 10px,#FFFDF9 0) 10px 0/20px 14px repeat-x}
.rc-top{display:flex;justify-content:space-between;align-items:center;border-bottom:2px dashed #C9CDD3;padding-bottom:18px}
.rc-top img{height:28px;width:auto}
.rc-lines{display:flex;flex-direction:column;gap:13px;font-size:16.5px}
.rc-lines div{display:flex;align-items:baseline;gap:10px}
.rc-lines i{flex:1;border-bottom:2px dotted #C9CDD3;transform:translateY(-4px)}
.rc-lines b{font-family:var(--mono);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--b700)}
.rc-lines .z b{font-family:var(--display);font-size:24px;letter-spacing:-.03em;color:var(--brand);text-transform:none}
.rc-total{margin-top:auto;border-top:2px solid var(--ink);padding-top:16px;display:flex;justify-content:space-between;align-items:baseline;gap:20px}
.rc-total span{font-weight:650}
.rc-total b{font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:-.02em;text-align:right;max-width:18ch;line-height:1.15}
.rc-foot{font-size:10.5px;color:var(--slate);text-align:center}
.gf{background:#fff;color:var(--ink);border-radius:22px;padding:34px;display:flex;flex-direction:column;box-shadow:0 50px 100px -40px rgba(var(--brand-rgb),.45)}
.gf-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
.gf-top b{font-family:var(--display);font-weight:800;font-size:28px;letter-spacing:-.03em}
.gf-prog{display:flex;gap:6px}.gf-prog i{width:30px;height:5px;border-radius:3px;background:var(--line);transition:background .3s}.gf-prog i.on{background:var(--ink)}
.gf-step{display:none;flex-direction:column;gap:14px;animation:gfIn .45s var(--ease)}
.gf-step.on{display:flex;flex:1}
.gf-step[data-s="0"] .chips{flex:1;grid-auto-rows:minmax(64px,1fr)}
.gf-step[data-s="0"] .chip{height:auto;font-size:19px;font-family:var(--display);font-weight:800;letter-spacing:-.02em}
@keyframes gfIn{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}
.gf-q{font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:-.02em;line-height:1.2}
.gf-hint{font-size:14px;color:var(--gray);margin-top:-8px}
.chips{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.chip{height:64px;border-radius:12px;box-shadow:inset 0 0 0 1.5px var(--line);font-weight:650;font-size:17px;text-align:left;padding:0 18px;display:flex;align-items:center;transition:box-shadow .2s,background .2s}
.chip:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}
.chip.on{box-shadow:inset 0 0 0 2.5px var(--ink);background:var(--b50)}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:13.5px;font-weight:600}
.field input{height:52px;border-radius:12px;border:0;box-shadow:inset 0 0 0 1.5px var(--line);padding:0 16px;font:inherit;font-size:16px;outline:none;transition:box-shadow .2s}
.field input:focus{box-shadow:inset 0 0 0 2px var(--ink)}
.dd{position:relative}
.dd-btn{width:100%;height:56px;border-radius:12px;box-shadow:inset 0 0 0 1.5px var(--line);padding:0 14px 0 16px;display:flex;align-items:center;justify-content:space-between;font-size:16px;font-weight:500;text-align:left}
.dd-btn:hover,.dd.open .dd-btn{box-shadow:inset 0 0 0 2px var(--ink)}
.dd-btn svg{transition:transform .2s}.dd.open .dd-btn svg{transform:rotate(180deg)}
.dd-btn .ph{color:var(--slate)}
.dd-list{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border-radius:12px;padding:6px;box-shadow:0 24px 50px -18px rgba(11,13,16,.4),inset 0 0 0 1px var(--line);z-index:30;display:none;list-style:none}
.dd.open .dd-list{display:block;animation:gfIn .2s var(--ease)}
.dd-list li{height:44px;border-radius:8px;display:flex;align-items:center;gap:10px;padding:0 12px;font-size:15px;cursor:pointer}
.dd-list li:hover,.dd-list li.act{background:var(--mist)}
.dd-list li i{width:8px;height:8px;border-radius:2px;background:transparent}
.dd-list li[aria-selected="true"]{font-weight:650}
.dd-list li[aria-selected="true"] i{background:var(--brand)}
.gf-nav{display:flex;justify-content:space-between;align-items:center;margin-top:18px}
.gf-nav .back{font-weight:600;font-size:15px;color:var(--gray)}
.gf-nav .btn[disabled]{opacity:.35;pointer-events:none}
.gf-done .big{font-family:var(--display);font-weight:900;font-size:36px;letter-spacing:-.04em;line-height:1}
.gf-done .btn{align-self:flex-start}
.gf-trust{margin-top:auto;padding-top:26px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.gf-trust div{background:var(--mist);border-radius:12px;padding:12px 14px}
.gf-trust b{display:block;font-family:var(--display);font-weight:800;font-size:17px;letter-spacing:-.02em}
.gf-trust span{font-size:13px;color:var(--gray)}

/* ===== about + faq ===== */
.about{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.about p{font-size:19px;line-height:1.6;color:var(--gray);margin-top:22px;max-width:52ch}
.about p b{color:var(--ink);font-weight:600}
.faq details{border-top:1.5px solid var(--ink)}
.faq details:last-child{border-bottom:1.5px solid var(--ink)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-family:var(--display);font-weight:800;font-size:21px;letter-spacing:-.025em}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pm{width:28px;height:28px;border-radius:7px;box-shadow:inset 0 0 0 1.5px var(--ink);position:relative;flex:none;transition:background .15s}
.faq summary .pm::before,.faq summary .pm::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;background:var(--ink);transform:translate(-50%,-50%)}
.faq summary .pm::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .2s}
.faq details[open] .pm{background:var(--brand);box-shadow:none}
.faq details[open] .pm::after{transform:translate(-50%,-50%) rotate(0)}
.faq .a{padding:0 48px 24px 0;color:var(--gray);font-size:17px}

/* ===== final cta ===== */
.final{background:var(--brand);position:relative;overflow:hidden}
.final .wrap{padding-top:clamp(90px,11vw,150px);padding-bottom:clamp(90px,11vw,150px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:48px;align-items:center}
.final h2{font-family:var(--display);font-weight:900;font-size:clamp(56px,8vw,124px);line-height:.88;letter-spacing:-.055em}
.final h2 span{color:#fff}
.final p{font-size:20px;max-width:480px;margin-top:30px}
.final .ctas{margin-top:34px;display:flex;gap:12px;flex-wrap:wrap}
.stack{position:relative;height:520px}
.pg{position:absolute;width:300px;height:auto;border-radius:12px;box-shadow:0 40px 80px -30px rgba(81,42,32,.7);border:8px solid #fff;background:#fff;transition:transform .8s var(--ease)}
.p0{left:0;top:50px;transform:rotate(-9deg)}
.p1{left:110px;top:20px;transform:rotate(-2deg)}
.p2{left:220px;top:40px;transform:rotate(6deg)}
.final.in .p0{transform:rotate(-12deg) translateX(-14px)}
.final.in .p2{transform:rotate(9deg) translateX(14px)}
.stamp{position:absolute;right:-6px;bottom:30px;width:128px;height:128px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;text-align:center;font-size:13px;font-weight:600;line-height:1.1;transform:rotate(-10deg);box-shadow:0 20px 40px -12px rgba(0,0,0,.5)}
.stamp b{display:block;font-family:var(--display);font-weight:900;font-size:32px;letter-spacing:-.04em;color:var(--brand)}

/* ===== 8th replay family ===== */
.family{background:var(--mist);color:var(--ink);padding:clamp(90px,10vw,140px) 0}
.fam-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px;margin-bottom:56px}
.fam-logo{height:88px;width:auto;margin-bottom:22px}
.fam-head h2{font-family:var(--display);font-weight:900;font-size:clamp(32px,3.6vw,48px);letter-spacing:-.04em;line-height:1}
.fam-head p{color:var(--gray);font-size:19px;max-width:620px}
.fam-site{font-family:var(--display);font-weight:800;font-size:clamp(24px,2.4vw,32px);letter-spacing:-.035em;border-bottom:3px solid var(--ink);padding-bottom:2px;margin-top:6px}
.fam-cards{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.fam-card{background:#fff;color:var(--ink);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s var(--ease);box-shadow:0 30px 60px -40px rgba(11,13,16,.4)}
.fam-card:hover{transform:translateY(-4px)}
.fam-art{height:230px;position:relative;overflow:hidden}
.fam-body{padding:28px 30px 30px;display:flex;flex-direction:column;gap:16px;flex:1}
.fam-lock{height:44px;width:auto;align-self:flex-start}
.fam-pitch{font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:-.025em;line-height:1.2}
.fam-body ul{list-style:none;display:flex;flex-direction:column;gap:9px;font-size:16px;color:#3A3F47}
.fam-body li{display:flex;gap:10px;align-items:baseline}
.fam-body li i{width:8px;height:8px;border-radius:2px;flex:none;transform:translateY(-1px)}
.fam-body .btn{margin-top:auto;align-self:flex-start;height:48px;font-size:15.5px}

/* footer */
footer{background:var(--ink);color:#fff;padding:0 0 36px}
footer .wrap{border-top:1px solid #23262c;padding-top:64px}
.f-top{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:40px}
.f-top .logo .wm{height:26px}
.f-top .ftag{color:#A3A9B2;margin-top:18px;max-width:34ch;font-size:15.5px}
.f-col h4{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:#7C838D;font-weight:500;margin-bottom:16px}
.f-col a{display:block;font-size:15.5px;padding:5px 0;color:#E3E5E9}
.f-col a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.f-bot{margin-top:56px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:#7C838D;font-size:14px}
.f-bot a:hover{color:#fff}

/* modal (walkthrough) */
.modal{position:fixed;inset:0;z-index:200;background:rgba(11,13,16,.85);display:none;place-items:center;padding:24px}
.modal.open{display:grid}
.modal .box{width:min(1100px,100%);aspect-ratio:16/9;background:#000;border-radius:16px;overflow:hidden;position:relative}
.modal iframe,.modal video{width:100%;height:100%;border:0}
.modal .x{position:absolute;right:12px;top:12px;width:40px;height:40px;border-radius:9px;background:#fff;color:var(--ink);font-weight:700;z-index:2}

/* reveal */
.rv{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .src,.rv,.snd{opacity:1;transform:none}
  .feed-in{transform:none}
}

/* legal pages */
.lg-hero{background:var(--brand)}
.lg-hero .t{padding-top:56px;padding-bottom:64px}
.lg-hero h1{font-family:var(--display);font-weight:900;font-size:clamp(52px,7vw,96px);letter-spacing:-.05em;line-height:.92;margin:18px 0 16px}
.legal-body{padding:64px 0 120px}
.legal-body .page{max-width:var(--max);margin:0 auto;padding:0 var(--pad);display:grid;grid-template-columns:240px minmax(0,720px);column-gap:72px;align-items:start}
.legal-body .page>*:not(.legal-nav){grid-column:2;min-width:0}
.legal-nav{grid-column:1;grid-row:1 / span 999;align-self:start;position:sticky;top:28px;display:flex;flex-direction:column;border-top:1.5px solid var(--ink)}
.legal-body .legal-nav a{padding:12px 0;border-bottom:1px solid var(--line);font-weight:550;font-size:15px;text-decoration:none}
.legal-nav a:hover{color:var(--brand)}
.tldr{background:var(--b50);border-radius:16px;padding:28px 30px;margin-bottom:40px}
.tldr .ctag,.legal-contact .label{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin-bottom:10px}
.tldr p{font-size:18px;color:var(--ink)}
.tldr p+p{margin-top:12px}
.legal-body h2{font-family:var(--display);font-weight:800;font-size:30px;letter-spacing:-.035em;line-height:1.1;margin:52px 0 14px;scroll-margin-top:24px}
.legal-body h3{font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:-.02em;margin:28px 0 8px}
.legal-body p,.legal-body li{color:#2B2F35;font-size:17px;line-height:1.65}
.legal-body p+p{margin-top:12px}
.legal-body ul,.legal-body ol{padding-left:22px;margin:10px 0 14px}
.legal-body li{margin:5px 0}
.legal-body a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--brand)}
.callout-strong{background:var(--ink);color:#fff!important;border-radius:12px;padding:20px 22px;margin:16px 0}
.callout-strong *{color:#fff!important}
.legal-contact{margin-top:18px;border:1.5px solid var(--ink);border-radius:14px;padding:22px 24px}
.legal-contact .who{font-weight:650;color:var(--ink)}
.legal-contact p{margin:2px 0!important}

/* responsive */
@media (max-width:1240px){
  .screen{--z:1}
  .hero-grid{grid-template-columns:1fr}
  .flow{max-width:760px}
  .hero h1{max-width:12ch}.hero h1 br{display:none}
  .nav{grid-template-columns:auto 1fr auto}.nav .links{justify-self:center;gap:24px}
}
@media (max-width:1060px){
  .nav .links{display:none}
  .pin{grid-template-columns:1fr}
  .pin-left{position:static;height:auto;padding-bottom:10px}
  .pin-stage{position:static;height:auto;display:block}
  .step2 p{max-height:none}
  .step2{opacity:1}
  .panel-wrap{aspect-ratio:auto;max-height:none;height:auto;display:flex;flex-direction:column;gap:14px}
  .panel{position:relative;opacity:1;transform:none;inset:auto}
  .app{grid-template-columns:150px 1fr}
}
@media (max-width:980px){
  .head{grid-template-columns:1fr;gap:22px}
  .tile.a,.tile.b,.tile.c,.tile.d{grid-column:span 12}
  .quotes{grid-template-columns:1fr}.q.feat{grid-row:auto}
  .about{grid-template-columns:1fr;gap:48px}
  .price-grid{grid-template-columns:1fr}
  .ba{grid-template-columns:1fr}
  .final .wrap{grid-template-columns:1fr}
  .fam-cards{grid-template-columns:1fr}
  .f-top{grid-template-columns:1fr 1fr}
  .chapters{grid-template-columns:auto repeat(5,minmax(120px,1fr));overflow-x:auto}
}
@media (max-width:760px){
  body{font-size:16px}
  .nav{height:72px;display:flex;justify-content:space-between}
  .nav .r .signin,.nav .r .btn{display:none}
  .menu-btn{display:grid}
  .mobile-menu.open{display:flex;flex-direction:column;gap:4px;position:absolute;left:var(--pad);right:var(--pad);top:70px;background:#fff;border-radius:14px;padding:12px;z-index:30;box-shadow:0 30px 60px -20px rgba(0,0,0,.4)}
  .mobile-menu a{padding:12px;font-weight:600;border-radius:8px}
  .mobile-menu a:hover{background:var(--mist)}
  .mobile-menu .btn{margin-top:6px}
  .hero .eyebrow{margin:12px 0 18px}
  .hero .sub{font-size:18px;margin-top:24px}
  .hero .ctas .btn{flex:1}
  .flow{display:block;min-height:0;margin-top:20px}
  .flow .lbl,.hub,svg.wires{display:none}
  .cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:0}
  .src{height:auto;flex-direction:column;align-items:flex-start;padding:10px;gap:10px}
  .src img{width:100%;height:84px}
  .src .from,.src .ok{display:none}
  .src .cat{font-size:17px}
  .src .t{font-size:12.5px;line-height:17px;margin-top:4px}
  .issue{margin:26px auto 30px;max-width:362px}
  .issue .scr{height:560px}
  .hero-meta{flex-direction:column;gap:6px}
  .hero-meta span:nth-child(2){display:none}
  .proof .wrap{grid-template-columns:1fr 1fr}
  .stat{padding:30px 0;border-left:0;padding-left:0!important;border-top:1px solid #23262c}
  .stat:nth-child(-n+2){border-top:0}
  .stat:nth-child(even){padding-left:20px!important;border-left:1px solid #23262c}
  .player{padding:6px;border-radius:14px}
  .screen{aspect-ratio:4/5}
  .app{grid-template-columns:1fr;grid-template-rows:48px 1fr}
  .app .side{display:none}
  .compose,.publish{grid-template-columns:1fr}
  .compose .voice{display:none}
  .publish .plist{display:none}
  .ledger2 .lr{grid-template-columns:1fr 1.2fr .7fr;font-size:12.5px}
  .ledger2 .lr span:nth-child(3){display:none}
  .caption{left:12px;bottom:12px;max-width:90%}
  .chapters{grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}
  .chapters .pp{width:auto;min-height:52px}
  .chap{padding:10px 12px 12px}.chap b{font-size:13.5px}
  .srcgrid{grid-template-columns:1fr 1fr}
  .tplpick{grid-template-columns:1fr 1fr}.tplpick .tp:nth-child(3){display:none}
  .pub{grid-template-columns:1fr}
  .story{grid-template-columns:1fr}.story img{width:100%;height:140px}
  .bacard{padding:24px}
  .bacard .t .dur{font-size:40px}
  .tile{padding:24px}
  .ledger .row3{grid-template-columns:1fr 1.2fr .7fr;font-size:13px;padding:10px 14px}
  .ledger .row3 span:nth-child(3){display:none}
  .plats{grid-template-columns:1fr}
  .q{padding:26px}.q .qm{font-size:130px;height:58px}
  .incl{grid-template-columns:1fr}
  .gf{padding:22px}
  .chips{grid-template-columns:1fr}
  .snd:nth-child(2),.snd:nth-child(3){margin-left:0}
  .faq summary{font-size:18px}
  .f-top>div:first-child{grid-column:1 / -1}
  .fam-art{height:190px}
  .legal-body .page{grid-template-columns:1fr;gap:0}
  .legal-body .page>*{grid-column:1!important}
  .legal-nav{position:static;grid-row:auto;margin-bottom:36px}
}

/* demo publish: subject line */
.subj{background:#fff;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;box-shadow:0 0 0 2px var(--brand)}
.subj .mono{font-size:9.5px;color:var(--b700)}
.subj b{font-size:14px}.subj small{font-size:12px;color:var(--slate)}

/* ===== responsive for v3 sections ===== */
@media (max-width:1240px){
  .gif-head{grid-template-columns:1fr;gap:22px}
  .money-grid{grid-template-columns:1fr;gap:40px}
  .final .wrap{grid-template-columns:1fr}
  .stack{height:460px;max-width:540px}
}
@media (max-width:1060px){
  .pin{grid-template-columns:1fr;gap:24px}
  .pin-left,.pin-stage{position:static;height:auto;display:block}
  .pin-left{padding-top:80px}
  .pin-stage{padding-bottom:80px}
  .steps2{margin-top:22px}
  .step2{opacity:1}.step2 p{max-height:none}.step2 .num{color:var(--brand)}
  .blk{display:block}.blk.media{display:grid}
  .b-send{position:static;transform:none}
  .b-body{height:auto}
  .drop{display:none}
  .mosaic{grid-template-columns:repeat(2,1fr)}
  .price-grid{grid-template-columns:1fr}
  .receipt{transform:none}
}
@media (max-width:760px){
  .hero h1{font-size:clamp(44px,12.5vw,60px)}
  .b-body{grid-template-columns:1fr}
  .rail{display:none}
  .blk.media{grid-template-columns:1fr}.blk.media img{width:100%;height:140px}
  .b-send{flex-direction:column;align-items:flex-start}
  .gif-row{grid-template-columns:1fr}
  .gcard:nth-child(2),.gcard:nth-child(3){margin-top:0}
  .mosaic{grid-auto-rows:170px}
  .mt.big{grid-column:span 2;grid-row:span 1}
  .mt.big .mtx b{font-size:32px}
  .mtx b{font-size:21px}
  .jobs div:nth-child(n+2){display:none}
  .sendto{grid-template-columns:1fr}
  .ledger .row3{grid-template-columns:1fr 1.2fr .7fr;font-size:13px;padding:11px 16px}
  .ledger .row3 span:nth-child(3){display:none}
  .lhead{padding:12px 16px}
  .receipt{padding:26px 22px}
  .rc-lines{font-size:15px}
  .rc-total{flex-direction:column;gap:6px}.rc-total b{text-align:left}
  .gf{padding:24px}
  .gf-trust{grid-template-columns:1fr 1fr 1fr;gap:6px}.gf-trust div{padding:10px}.gf-trust b{font-size:14px}.gf-trust span{font-size:11.5px}
  .stack{height:380px}
  .pg{width:190px;border-width:5px}
  .p1{left:70px}.p2{left:140px}
  .stamp{width:96px;height:96px;font-size:11px;right:0}.stamp b{font-size:24px}
  .fam-logo{height:56px}
}

/* demo: review scene */
.review{background:#fff;border-radius:12px;padding:6px 16px 10px;box-shadow:0 1px 0 rgba(0,0,0,.04)}
.rv-head{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.rv-head b{font-size:15px}
.chk{display:grid;grid-template-columns:26px 1fr auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);opacity:.45;transition:opacity .3s}
.chk:last-child{border-bottom:0}
.chk i{width:22px;height:22px;border-radius:50%;box-shadow:inset 0 0 0 2px #C9CDD3;display:grid;place-items:center;transition:all .3s}
.chk b{display:block;font-size:14px}.chk small{font-size:12px;color:var(--slate)}
.chk em{font-style:normal;font-size:12px;font-weight:700;color:var(--slate)}
.chk.done{opacity:1}
.chk.done i{background:#16A34A;box-shadow:none}
.chk.done i::after{content:"";width:9px;height:5px;border-left:2.5px solid #fff;border-bottom:2.5px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}
.chk.done em{color:#16A34A}
.chk.fix.done i{background:var(--brand)}.chk.fix.done em{color:var(--b700)}

/* sources: designed cards, no photos */
.mt{justify-content:space-between}
.mt .mtx b{font-size:24px}
.mt.big .mtx b{font-size:44px}
.c-ink{background:var(--ink);color:#fff}
.c-orange{background:var(--brand);color:var(--ink)}
.c-tint{background:var(--b100);color:var(--ink)}
.c-tint2{background:#FFF3EF;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--b200)}
.c-line{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}
.mt em{box-shadow:0 1px 0 rgba(0,0,0,.06)}
.c-line em,.c-tint2 em{background:var(--mist)}
.art{margin-top:30px;display:flex;flex-direction:column;gap:4px}
.art .nm{font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:-.03em;line-height:1.05}
.art small{font-size:13px;opacity:.75}
.art .price{font-family:var(--display);font-weight:900;font-size:48px;letter-spacing:-.05em;line-height:.9;color:var(--b700)}
.badge{align-self:flex-start;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:4px 8px;border-radius:6px;background:var(--ink);color:#fff;margin-bottom:6px}
.c-orange .badge{background:#fff;color:var(--ink)}
.badge.dk{background:var(--brand);color:var(--ink)}
.art.news{gap:10px;margin-top:40px}
.nl{background:#1A1D22;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.nl b{font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:-.02em;line-height:1.15}
.tg{align-self:flex-start;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--brand);font-weight:600}
.art.cal{flex-direction:row;align-items:center;gap:12px}
.dt{width:58px;height:62px;border-radius:10px;background:var(--brand);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none}
.dt small{font-family:var(--mono);font-size:10px;font-weight:600;opacity:1}.dt b{font-family:var(--display);font-weight:900;font-size:28px;line-height:.9}
.art.cal div b{font-size:15px}
.art.pet{flex-direction:row;align-items:center;gap:12px}
.docs i{box-shadow:0 8px 16px -8px rgba(11,13,16,.3),inset 0 0 0 1px var(--line)}

/* tech section */
.tech-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;align-items:stretch}
.agent{background:#fff;color:var(--ink);border-radius:22px;padding:26px 28px;display:flex;flex-direction:column;box-shadow:0 50px 100px -40px rgba(var(--brand-rgb),.45)}
.ag-top{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.ag-ic{width:46px;height:46px;border-radius:12px;background:var(--brand);display:grid;place-items:center;flex:none}
.ag-ic img{height:30px;width:auto}
.ag-top b{display:block;font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:-.02em}
.ag-top small{font-size:13px;color:var(--slate)}
.ag-st{margin-left:auto;font-size:12.5px;font-weight:700;padding:6px 10px;border-radius:8px;background:var(--mist);color:var(--gray)}
.ag-st.ok{background:#DCFCE7;color:#166534}
.ag-row{display:grid;grid-template-columns:28px 1fr auto;gap:14px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);opacity:.4;transition:opacity .4s}
.ag-row i{width:24px;height:24px;border-radius:50%;box-shadow:inset 0 0 0 2px #C9CDD3;display:grid;place-items:center;transition:all .3s}
.ag-row b{display:block;font-size:16px}.ag-row span{font-size:14px;color:var(--gray)}
.ag-row em{font-style:normal;font-size:13px;font-weight:700;color:var(--slate)}
.ag-row.done{opacity:1}.ag-row.done i{background:#16A34A;box-shadow:none}
.ag-row.done i::after{content:"";width:10px;height:5px;border-left:2.5px solid #fff;border-bottom:2.5px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}
.ag-row.done em{color:#16A34A}
.ag-note{margin-top:18px;background:var(--b50);border-radius:12px;padding:14px 16px;font-size:14.5px;opacity:0;transform:translateY(8px);transition:all .5s}
.agent.fin .ag-note{opacity:1;transform:none}
.dev{background:#15181D;border-radius:22px;padding:28px;display:flex;flex-direction:column;gap:18px;box-shadow:inset 0 0 0 1px #2A2E35}
.dev-top{display:flex;justify-content:space-between;align-items:center}
.dev-top b{font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:-.03em}
.dev-top .mono{color:var(--brand)}
.dev p{color:#A3A9B2;font-size:16.5px}
.code{background:#0B0D10;border-radius:14px;padding:18px;font-family:var(--mono);font-size:13.5px;line-height:1.5;display:flex;flex-direction:column;gap:10px;box-shadow:inset 0 0 0 1px #23262C}
.cl{color:#E3E5E9}
.cl span{display:inline-block;min-width:54px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;margin-right:6px}
.c1{color:#9AA0A8}.c2{color:#FEA88C}.c3{color:var(--brand)}
.cl.ok{color:#4ADE80}
.dev-stats{margin-top:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.dev-stats div{background:#1E2127;border-radius:12px;padding:14px}
.dev-stats b{display:block;font-family:var(--display);font-weight:900;font-size:30px;letter-spacing:-.04em;color:#fff}
.dev-stats span{font-size:13px;color:#9AA0A8}
@media (max-width:980px){.tech-grid{grid-template-columns:1fr}}
@media (max-width:760px){.art.news .nl:nth-child(3){display:none}.nl b{font-size:16px}.art .price{font-size:36px}.dev-stats b{font-size:22px}.code{font-size:12px}}
.art.cal>div:last-child,.art.pet>div{display:flex;flex-direction:column;gap:2px}
.art.pet .nm{font-size:22px}
.acts{display:flex;flex-wrap:wrap;gap:6px}
.acts span{font-family:var(--mono);font-size:12px;padding:6px 9px;border-radius:7px;background:#1E2127;color:#C9CDD3}
.acts span.hl{background:rgba(var(--brand-rgb),.18);color:#FEA88C}
.gif-note{margin-top:64px;text-align:center;color:#A3A9B2;font-size:15px}
.ag-note span{display:block;margin-top:6px;font-weight:700;color:var(--b700)}

/* ===== v4: real app screens, real sections, one-thing feeds, human review ===== */
/* hero: keep the headline clear of the flow */
@media (min-width:1061px){
  .hero-grid{gap:72px;grid-template-columns:minmax(0,1fr) minmax(0,740px)}
  .hero h1{font-size:clamp(50px,5.2vw,80px)}
  .flow{grid-template-columns:262px 1fr 362px}
}
@media (min-width:1061px) and (max-width:1240px){.hero-grid{gap:48px}}

/* browser frame used by the demo and how-it-works */
.browser{position:relative;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 0 0 1px var(--line),0 60px 120px -60px rgba(11,13,16,.55)}
.browser .bb{height:44px;display:flex;align-items:center;gap:14px;padding:0 16px;background:var(--mist);border-bottom:1px solid var(--line)}
.browser .b-dots{display:flex;gap:6px}.browser .b-dots i{width:11px;height:11px;border-radius:50%;background:#D6D9DE}
.browser .url{flex:1;max-width:340px;margin:0 auto;height:28px;border-radius:8px;background:#fff;box-shadow:inset 0 0 0 1px var(--line);display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--gray)}
.browser .real{font-size:10.5px;color:var(--b700);background:var(--b50);padding:5px 9px;border-radius:6px}
.browser .timer{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:13px;font-weight:600;color:var(--ink);background:#fff;padding:5px 10px;border-radius:7px;box-shadow:inset 0 0 0 1px var(--line)}
.browser .timer i{width:8px;height:8px;border-radius:50%;background:var(--brand);animation:pulse 1.4s ease-in-out infinite}
.stage{position:relative;aspect-ratio:2192/888;overflow:hidden;background:#F5F1E8}
.screen.browser{aspect-ratio:auto;border-radius:16px}
.shot{position:absolute;inset:0;opacity:0;transition:opacity .5s ease}
.shot.on{opacity:1}
.cam{position:absolute;left:0;top:0;transform-origin:0 0;transition:transform 2s cubic-bezier(.45,0,.2,1);will-change:transform}
.cam img{width:100%;height:100%;display:block}
.hl{position:absolute;border-radius:8px;box-shadow:0 0 0 3px var(--brand),0 0 0 9999px rgba(11,13,16,0);opacity:0;transition:opacity .4s,box-shadow .6s}
.shot.hot .hl{opacity:1;box-shadow:0 0 0 3px var(--brand),0 0 0 9999px rgba(11,13,16,.28);animation:hlp 1.6s ease-in-out infinite}
@keyframes hlp{50%{box-shadow:0 0 0 6px rgba(var(--brand-rgb),.55),0 0 0 9999px rgba(11,13,16,.28)}}
.stage .caption{left:22px;bottom:22px;max-width:70%}
.stage .caption .cap{font-size:clamp(18px,2vw,30px)}
.stage .toast{right:22px;top:22px;bottom:auto}
.stage .toast span{color:#A3A9B2}
.pin-stage .browser{width:100%}
.bshots .stage{aspect-ratio:16/11}

/* GIFs: the real sections, as sent */
.gif-row2{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:center}
.gm .mail{position:relative;background:#fff;border-radius:4px;box-shadow:0 0 0 12px #fff,0 50px 90px -40px rgba(var(--brand-rgb),.55);margin:12px}
.gm .mail .base{width:100%;height:auto}
.gm .mail .gif{position:absolute;object-fit:cover;border-radius:6px}
.gm figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:26px 12px 0}
.gm figcaption b{font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:-.02em;color:#fff}
.gm figcaption span{font-size:14px;color:#A3A9B2}
.gif-note{margin-top:34px;color:#A3A9B2;font-size:14.5px;text-align:center}

/* feeds: one big word, one small line */
.feeds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.feed{border-radius:18px;padding:30px 28px 26px;min-height:210px;display:flex;flex-direction:column;justify-content:flex-end;gap:10px}
.feed b{font-family:var(--display);font-weight:900;font-size:clamp(40px,4.2vw,62px);line-height:.9;letter-spacing:-.05em}
.feed span{font-size:16px;line-height:1.35}
/* every feed tile its own color; dark and light alternate like a checkerboard at every width */
.f1{background:var(--ink);color:#fff}.f1 span{color:#A3A9B2}
.f2{background:var(--brand);color:var(--ink)}
.f3{background:var(--b900);color:#fff}.f3 span{color:var(--b200)}
.f4{background:var(--b100);color:var(--ink)}.f4 span{color:var(--b700)}
.f5{background:var(--b300);color:var(--ink)}.f5 span{color:var(--b900)}
.f6{background:var(--b700);color:#fff}.f6 span{color:var(--b100)}
.f7{background:var(--mist);color:var(--ink)}.f7 span{color:var(--gray)}
.f8{background:var(--gray);color:#fff}.f8 span{color:#DADDE2}
@media (max-width:1060px){.feeds .f3{order:5}.feeds .f4{order:6}.feeds .f5{order:3}.feeds .f6{order:4}.feeds .f7{order:7}.feeds .f8{order:8}}

/* review agent, for humans */
.tech2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:72px;align-items:center}
.tech2 .big{margin-top:14px}
.tech2 .lede{margin-top:22px;max-width:520px}
.t2-nums{display:flex;gap:44px;margin-top:40px}
.t2-nums b{display:block;font-family:var(--display);font-weight:900;font-size:64px;line-height:.9;letter-spacing:-.05em;color:var(--brand)}
.t2-nums span{display:block;margin-top:8px;font-size:14.5px;color:#A3A9B2}
.t2-link{display:inline-block;margin-top:40px;font-size:15.5px;color:#fff;border-bottom:2px solid var(--brand);padding-bottom:3px}
.catch{background:#fff;color:var(--ink);border-radius:22px;padding:30px 32px 32px;transform:rotate(1.2deg);box-shadow:0 60px 120px -50px rgba(var(--brand-rgb),.6)}
.c-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.c-top .mono{font-size:11px;color:var(--slate)}
.c-badge{background:var(--brand);color:var(--ink);font-weight:700;font-size:13.5px;padding:7px 12px;border-radius:8px}
.c-sec{margin-top:30px;font-size:11.5px;color:var(--b700);letter-spacing:.16em}
.c-job{font-family:var(--display);font-weight:900;font-size:40px;letter-spacing:-.04em;line-height:1;margin-top:8px}
.c-job small{display:block;font-family:var(--body);font-weight:400;font-size:15px;letter-spacing:0;color:var(--gray);margin-top:10px}
.c-fix{display:flex;flex-direction:column;gap:6px;margin-top:26px}
.c-fix .was{font-family:var(--display);font-weight:800;font-size:30px;letter-spacing:-.03em;color:var(--slate);position:relative;width:max-content}
.c-fix .was::after{content:"";position:absolute;left:-4px;right:-4px;top:52%;height:4px;background:#DC2626;border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.c-fix .now{font-family:var(--display);font-weight:900;font-size:44px;letter-spacing:-.04em;color:#15803D;opacity:0;transform:translateY(8px);transition:all .5s var(--ease) .5s}
.catch.fixed .was::after{transform:scaleX(1)}.catch.fixed .now{opacity:1;transform:none}
.c-src{display:flex;gap:14px;align-items:flex-start;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.c-src i{flex:none;width:28px;height:28px;border-radius:50%;background:#16A34A;display:grid;place-items:center}
.c-src i::after{content:"";width:10px;height:6px;border-left:2.5px solid #fff;border-bottom:2.5px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}
.c-src b{display:block;font-size:16px}.c-src span{font-size:14px;color:var(--gray)}
.catch:not(.fixed) .now{visibility:visible}

@media (max-width:1060px){
  .tech2{grid-template-columns:1fr;gap:48px}
  .catch{transform:none;max-width:560px}
  .feeds{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gif-row2{grid-template-columns:1fr;max-width:460px;margin:0 auto}
}
@media (max-width:760px){
  .stage{aspect-ratio:4/3}
  .bshots .stage{aspect-ratio:4/3}
  .browser .url{display:none}
  .stage .caption{left:12px;bottom:12px;max-width:88%}
  .feed{min-height:150px;padding:22px 20px}
  .t2-nums{gap:24px}.t2-nums b{font-size:46px}
  .c-job{font-size:32px}.c-fix .now{font-size:34px}.c-fix .was{font-size:24px}
}

/* ===== /agents page ===== */
.ag-sub{font-size:21px;max-width:620px;line-height:1.45}
.ag-intro{background:#fff;padding:96px 0}
.ag-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:72px;align-items:center}
.ag-intro h2,.ag-connect h2,.ag-tools h2{font-family:var(--display);font-weight:900;font-size:clamp(36px,4vw,56px);letter-spacing:-.045em;line-height:.95}
.ag-intro p{margin-top:20px;font-size:19px;color:var(--gray);max-width:560px}
.ag-say{background:var(--ink);color:#fff;border-radius:20px;padding:30px 32px}
.ag-say .mono{font-size:11px;color:var(--brand)}
.ag-say p{color:#fff!important;font-size:21px!important;margin:10px 0 26px!important;font-family:var(--display);font-weight:700;letter-spacing:-.02em;line-height:1.25}
.ag-say p:last-child{margin-bottom:0!important}
.ag-say code,.ag-group code{font-family:var(--mono);font-size:13px}
.ag-say .flow2{display:flex;gap:8px;flex-wrap:wrap}
.ag-say .flow2 code{background:#23262C;padding:6px 10px;border-radius:7px;font-size:14px;font-weight:500}
.ag-connect{background:var(--mist);padding:96px 0}
.ag-steps{list-style:none;counter-reset:s;display:grid;grid-template-columns:1fr 1.4fr;gap:20px;margin-top:40px}
.ag-steps li{counter-increment:s;background:#fff;border-radius:18px;padding:28px}
.ag-steps li::before{content:counter(s);display:block;font-family:var(--display);font-weight:900;font-size:48px;line-height:1;color:var(--brand);letter-spacing:-.05em;margin-bottom:14px}
.ag-steps b{display:block;font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:-.03em}
.ag-steps span{display:block;margin-top:6px;color:var(--gray)}
.ag-steps pre{margin-top:18px;background:var(--ink);color:#fff;border-radius:12px;padding:18px 20px;font-family:var(--mono);font-size:14px;line-height:1.7;overflow-x:auto}
.ag-tools{background:#fff;padding:96px 0 120px}
.ag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-top:40px}
.ag-group{border-radius:18px;padding:26px;box-shadow:inset 0 0 0 1.5px var(--line)}
.ag-group h3{font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:-.03em}
.ag-group p{margin-top:6px;color:var(--gray);font-size:15.5px}
.ag-group ul{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.ag-group li code{display:block;background:var(--mist);padding:5px 9px;border-radius:6px;font-size:12.5px}
@media (max-width:980px){.ag-2,.ag-steps{grid-template-columns:1fr;gap:28px}.ag-intro,.ag-connect,.ag-tools{padding:64px 0}}

/* ===== family: living icons (lightning strikes, bird pecks and takes off, hand pops up and waves) ===== */
.fam-art .fam-ic{position:absolute;display:block}
.fam-art .fam-ic img{display:block;height:100%;width:auto;max-width:none}
/* bolt: three strikes in three places, each drops from the sky, holds, and vanishes */
.a-bolt .flash{position:absolute;inset:0;background:#fff;opacity:0;animation:sky 3.6s linear infinite}
.a-bolt .fam-ic{top:-6px;height:230px;opacity:0;transform-origin:50% 0;animation:strike 3.6s linear infinite}
.a-bolt .s1{left:12%}
.a-bolt .s2{left:62%;height:200px;animation-delay:1.2s}
.a-bolt .s3{left:38%;height:250px;animation-delay:2.4s}
.a-bolt .s2 img{transform:scaleX(-1)}
@keyframes strike{0%{opacity:0;clip-path:inset(0 0 100% 0);transform:translateY(-10px)}
  2%{opacity:1;clip-path:inset(0 0 45% 0);transform:none}4%{clip-path:inset(0 0 0 0)}
  6%{opacity:.25}8%{opacity:1}14%{opacity:1;transform:translate(0,0)}15%{transform:translate(-2px,1px)}16%{transform:translate(2px,-1px)}
  24%{opacity:1;transform:none}32%,100%{opacity:0;clip-path:inset(0 0 0 0)}}
@keyframes sky{0%,100%{opacity:0}2%{opacity:.5}4%{opacity:0}6%{opacity:.25}9%{opacity:0}
  33.3%{opacity:0}35.3%{opacity:.5}37.3%{opacity:0}39.3%{opacity:.25}42.3%{opacity:0}
  66.6%{opacity:0}68.6%{opacity:.5}70.6%{opacity:0}72.6%{opacity:.25}75.6%{opacity:0}}
/* bird: walks in from the right, stops, pecks twice, looks around, then takes off to the left */
.a-bird .fam-ic{bottom:18px;height:170px;left:100%;animation:bird 10s linear infinite}
.a-bird .fam-ic img{transform-origin:40% 95%;animation:birdbody 10s linear infinite}
@keyframes bird{0%{left:100%;bottom:18px}30%{left:52%;bottom:18px}62%{left:52%;bottom:18px}72%{left:34%;bottom:40px}100%{left:-240px;bottom:260px}}
@keyframes birdbody{0%,4%,8%,12%,16%,20%,24%,28%{transform:translateY(0) rotate(-3deg)}2%,6%,10%,14%,18%,22%,26%{transform:translateY(-9px) rotate(3deg)}
  30%{transform:none}34%{transform:rotate(22deg)}37%{transform:none}40%{transform:rotate(22deg)}43%{transform:none}
  47%{transform:rotate(-10deg)}51%{transform:rotate(-10deg)}53%{transform:rotate(6deg)}57%{transform:none}62%{transform:translateY(4px) scaleY(.94)}
  66%{transform:translateY(-6px) rotate(-12deg)}100%{transform:rotate(-18deg)}}
/* hand: pops up from the bottom, throws a shaka, drops back down */
.a-hand .fam-ic{right:40px;bottom:-26px;height:220px;transform-origin:62% 92%;animation:shaka 3.8s var(--ease) infinite}
@keyframes shaka{0%{transform:translateY(110%) rotate(0)}14%{transform:translateY(-6%) rotate(0)}18%{transform:translateY(0)}
  24%{transform:rotate(-16deg)}30%{transform:rotate(13deg)}36%{transform:rotate(-12deg)}42%{transform:rotate(10deg)}48%{transform:rotate(-6deg)}54%{transform:rotate(3deg)}58%,74%{transform:rotate(0)}
  88%,100%{transform:translateY(110%) rotate(8deg)}}
.fam-card:hover .a-hand .fam-ic{animation-duration:2.4s}
@media (max-width:760px){.a-hand .fam-ic{height:170px;right:24px}.a-bird .fam-ic{height:130px}.a-bolt .fam-ic{height:180px}.a-bolt .s2{height:150px}.a-bolt .s3{height:200px}}
@media (prefers-reduced-motion:reduce){.fam-art .fam-ic,.fam-art .fam-ic img,.a-bolt .flash{animation:none!important}.a-bird .fam-ic{left:auto;right:40px}.a-bolt .fam-ic{opacity:0}.a-bolt .s3{opacity:1}.a-hand .fam-ic{transform:none}}

/* ===== proof numbers: rise in one by one, count up, settle ===== */
.proof .stat{opacity:0;transform:translateY(28px);transition:opacity .6s ease,transform .9s cubic-bezier(.34,1.56,.64,1)}
.proof .stat:nth-child(2){transition-delay:.12s}.proof .stat:nth-child(3){transition-delay:.24s}.proof .stat:nth-child(4){transition-delay:.36s}
.proof.in .stat{opacity:1;transform:none}
.proof .stat .n{display:inline-block}
.proof.in .stat .n{animation:settle 1.4s cubic-bezier(.34,1.56,.64,1) both}
.proof.in .stat:nth-child(2) .n{animation-delay:.12s}.proof.in .stat:nth-child(3) .n{animation-delay:.24s}.proof.in .stat:nth-child(4) .n{animation-delay:.36s}
@keyframes settle{0%{transform:scale(.86)}60%{transform:scale(1.04)}100%{transform:none}}
@media (prefers-reduced-motion:reduce){.proof .stat{opacity:1;transform:none;transition:none}.proof.in .stat .n{animation:none}}

/* ===== alternate sides: .flip puts the text on the right on wide screens ===== */
@media (min-width:1061px){
  .flip .pin{grid-template-columns:minmax(0,1fr) minmax(0,420px)}
  .flip .pin-left{order:2}
  .flip .pin-left > *{max-width:460px}
  .flip .pin-stage{justify-content:center}
}
@media (min-width:981px){
  .about.flip > :first-child{order:2}
  .tech2.flip{grid-template-columns:minmax(0,560px) minmax(0,1fr)}
  .tech2.flip > :first-child{order:2}
  .head.flip{grid-template-columns:minmax(0,440px) minmax(0,1fr)}
  .head.flip > :first-child{order:2;justify-self:end;text-align:right}
  .head.flip > :first-child .kick{justify-content:flex-end}
  .head.flip h2.big{margin-left:auto}
}

/* agents page: long commands never push the page sideways on a phone */
.ag-steps li,.ag-grid > *,.ag-2 > *{min-width:0}
.ag-steps pre{max-width:100%}
.ag-group li code{white-space:normal;word-break:break-word}

/* ===== card rows: sibling cards always line up (TJ, 2026-10-03) =====
 Put .card-row on the row and .card-act on each card's button or link. Cards become equal-height flex columns,
 the action is pinned to the bottom, and any spare space sits ABOVE the action, never below it. */
.card-row{display:grid;align-items:stretch}
.card-row > *{display:flex;flex-direction:column;min-width:0}
.card-act{margin-top:auto!important;align-self:flex-start}
/* ================= shared parts (SaaS family template) =================
 Used by more than one site. Brand colors come from tokens-<brand>.css. */
/* tour: real screens in a phone, pointing at what matters */
.tour{position:relative;width:100%;height:min(84vh,780px);display:flex;justify-content:center;align-items:center}
.tp{position:relative;height:100%}
.tphone{position:relative;height:100%;aspect-ratio:780/1688;border-radius:48px;background:var(--ink);padding:12px;box-shadow:0 60px 120px -60px rgba(11,13,16,.55)}
.tphone .tshot{position:absolute;inset:12px;width:calc(100% - 24px);height:calc(100% - 24px);border-radius:37px;object-fit:cover;object-position:top;opacity:0;transition:opacity .45s ease;background:#FFFAF0}
.tphone .tshot.on{opacity:1}
.tpoint{position:absolute;left:calc(100% - 26px);top:50%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;color:var(--ink);pointer-events:none;transition:top .55s var(--ease),opacity .3s}
.tpoint svg{width:108px;display:block;transform:translateY(-50%)}
.tpoint span{margin:-16px 0 0 34px;white-space:nowrap;background:var(--brand);color:var(--ink);font-family:var(--display);font-weight:900;font-size:19px;letter-spacing:-.03em;padding:8px 12px;border-radius:10px;transform:rotate(-2deg);box-shadow:0 20px 40px -24px rgba(11,13,16,.6)}
.tpoint.bump span{animation:tpb .5s var(--ease)}
@keyframes tpb{from{transform:rotate(-2deg) scale(.8);opacity:0}to{transform:rotate(-2deg) scale(1);opacity:1}}

/* AI section: ask your AI, see the result */
.api-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,540px);gap:72px;align-items:center}
.api-pts{list-style:none;display:grid;gap:14px;margin-top:34px}
.api-pts li{display:grid;grid-template-columns:200px 1fr;gap:14px;font-size:16px;padding-top:14px;border-top:1px solid #23262C}
.api-pts b{font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:-.02em;color:var(--brand);line-height:1.2}
.api-pts span{color:#C9CDD3}
.ai-art{display:flex;flex-direction:column;gap:0}
.ask{align-self:flex-start;max-width:420px;background:var(--brand);color:var(--ink);border-radius:18px 18px 18px 6px;padding:16px 18px;transform:rotate(-1.5deg);box-shadow:0 30px 60px -34px rgba(0,0,0,.8)}
.ask .mono{font-size:10.5px;opacity:.8}
.ask p{font-family:var(--display);font-weight:800;font-size:21px;letter-spacing:-.025em;line-height:1.2;margin-top:6px}
.ask-arrow{display:flex;align-items:center;gap:10px;margin:14px 0 14px 34px;color:#9AA0A8}
.ask-arrow i{display:block;width:2px;height:22px;background:repeating-linear-gradient(#3A3F47 0 4px,transparent 4px 8px)}
.ask-arrow .mono{font-size:10.5px;background:#23262C;color:#fff;padding:6px 9px;border-radius:7px}
.hook{background:#fff;color:var(--ink);border-radius:20px;padding:22px 24px;transform:rotate(1.2deg);box-shadow:0 60px 120px -50px rgba(var(--brand-rgb),.55)}
.h-top{display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.h-top .dot{width:10px;height:10px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 5px var(--b100);animation:pulse 1.6s ease-in-out infinite}
.h-top b{font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:-.02em}.h-top .mono{margin-left:auto;font-size:10.5px;color:var(--slate)}
.h-l{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:10px 0;border-bottom:1px dashed var(--line);font-size:14.5px}
.h-l span{font-family:var(--mono);font-size:12px;color:var(--slate);padding-top:2px}
.h-l.pay{border-bottom:0;grid-template-columns:110px auto 1fr;align-items:center}.h-l.pay b{font-family:var(--display);font-weight:900;font-size:34px;letter-spacing:-.04em;color:var(--b700)}
.h-l.pay em{justify-self:start;font-style:normal;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;background:var(--mist);color:var(--gray);padding:4px 7px;border-radius:5px}

@media (max-width:1180px){.api-grid{grid-template-columns:1fr;gap:48px}}
@media (max-width:1060px){.tour{height:640px}}
@media (max-width:760px){.tour{height:560px}.tpoint{left:auto;right:-12px;align-items:flex-end}.tpoint svg{width:64px}.tpoint span{font-size:14px;margin:-10px 0 0 0;padding:6px 9px}.api-pts li{grid-template-columns:1fr;gap:4px}.h-l{grid-template-columns:1fr;gap:2px}.h-l.pay{grid-template-columns:auto 1fr;gap:10px}.h-l.pay span{grid-column:1 / -1}.hook,.ask{transform:none}.ask p{font-size:18px}}

/* book a call: copy beside a real greetform that loads when asked */
.book{background:var(--brand);padding:clamp(90px,10vw,140px) 0}
.book .kick i{background:var(--ink)}
.book-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:72px;align-items:center}
.book-grid.flip{grid-template-columns:minmax(0,560px) minmax(0,1fr)}
.book-grid.flip > :first-child{order:2}
.book-copy h2{font-family:var(--display);font-weight:900;font-size:clamp(44px,5.4vw,80px);line-height:.93;letter-spacing:-.05em;max-width:12ch}
.book-copy p{font-size:20px;line-height:1.5;margin-top:24px;max-width:48ch}
.book-pts{list-style:none;display:flex;gap:12px;margin-top:34px;flex-wrap:wrap}
.book-pts li{background:var(--ink);color:#fff;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;min-width:130px}
.book-pts b{font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:-.02em}.book-pts span{font-size:13.5px;color:#A3A9B2}
.book-form{background:var(--ink);border-radius:22px;padding:10px;box-shadow:0 60px 120px -50px rgba(var(--brand-deep-rgb),.9)}
.bf-bar{height:38px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;color:#9AA0A8}
.bf-bar .b-dots{display:flex;gap:6px}.bf-bar .b-dots i{width:10px;height:10px;border-radius:50%;background:#3A3F47}
.bf-bar .mono{font-size:10.5px}
.bf-frame{position:relative;border-radius:14px;overflow:hidden;background:#F4F1EA;height:620px}
.bf-frame img{width:100%;height:100%;object-fit:contain;object-position:top}
.bf-frame::after{content:"";position:absolute;left:0;right:0;bottom:0;height:40%;background:linear-gradient(transparent,rgba(11,13,16,.55));pointer-events:none}
.bf-frame.live::after{display:none}
.bf-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#fff}
.bf-start{position:absolute;z-index:2;left:50%;bottom:28px;transform:translateX(-50%);height:56px;padding:0 30px;font-size:17px}
.bf-start:hover{transform:translateX(-50%) translateY(-1px)}
.bf-open{display:block;text-align:center;color:#A3A9B2;font-size:14px;padding:12px 0 6px;text-decoration:underline;text-underline-offset:3px}

@media (max-width:1180px){.book-grid,.book-grid.flip{grid-template-columns:1fr;gap:48px}.book-grid.flip > :first-child{order:0}}
@media (max-width:760px){.bf-frame{height:560px}.book-pts li{flex:1;min-width:0}}
/* ================= 8threplay.com =================
 The parent company page. Black and white only: the one place color appears is a product
 (lightbreak orange, larkfeed blue, greetform green). Calm, editorial, lots of room. */
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.r8-top{background:#fff;position:relative;z-index:20}
.r8-logo img{height:38px;width:auto}
.r8-nav .links{gap:28px}
.kick i{background:var(--ink)}
.c-lb{background:var(--lb)}.c-lf{background:var(--lf)}.c-gf{background:var(--gf)}

/* ---------- hero ---------- */
.r8-hero{background:#fff;padding:36px 0 clamp(64px,7vw,104px)}
.r8-hero-head{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:64px;align-items:end}
.r8-eyebrow{margin-bottom:26px;color:var(--gray)}
.r8-hero h1{font-family:var(--display);font-weight:900;font-size:clamp(40px,5.1vw,76px);line-height:.98;letter-spacing:-.04em;max-width:17ch}
.r8-hero h1 span{display:block;color:var(--slate)}
.r8-hero .sub{font-size:19px;line-height:1.5;color:var(--gray);max-width:44ch}
.r8-hero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}

/* the operating wall: three real outputs, each one made by a product */
.wall{margin-top:clamp(40px,5vw,64px);background:var(--ink);border-radius:28px;padding:40px 40px 30px;display:grid;grid-template-columns:minmax(0,214px) minmax(0,1fr) minmax(0,214px);gap:40px;align-items:end;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:44px 44px;background-position:-1px -1px;box-shadow:0 70px 120px -70px rgba(11,13,16,.7)}
.ws{display:flex;flex-direction:column;gap:20px;min-width:0}
.ws figcaption{display:flex;flex-direction:column;gap:8px;align-items:flex-start;border-top:1px solid #2B2F36;padding-top:16px}
.ws figcaption img{height:24px;width:auto}
.ws figcaption .mono{font-size:10.5px;color:#9AA0A8}

/* a full phone: top and bottom always visible */
.ph{position:relative;width:100%;aspect-ratio:9/19;border-radius:34px;background:#23262C;box-shadow:inset 0 0 0 1px #3A3F47,0 40px 70px -40px rgba(0,0,0,.8)}
.ph .view{position:absolute;inset:7px;border-radius:28px;overflow:hidden;background:#fff}
.ph .notch{position:absolute;left:50%;top:7px;transform:translateX(-50%);width:36%;height:17px;border-radius:0 0 12px 12px;background:#23262C;z-index:3}
.ph video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 0%;background:#FBF5EA}
.ws .ph .view{padding-top:18px;background:#fff}
.ws .ph .pg,.ws .ph video{top:18px;height:calc(100% - 18px)}

/* reels: real screens that scroll and change on their own */
.view{position:relative;overflow:hidden;background:#fff}
.pg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 0%;opacity:0;transition:opacity .5s ease}
.pg.on{opacity:1}
.gray img{filter:grayscale(1) contrast(1.04)}

/* the monitor */
.mon{position:relative;width:100%}
.mon-screen{position:relative;background:#15181D;border-radius:18px;padding:10px 10px 12px;box-shadow:inset 0 0 0 1px #2B2F36,0 50px 90px -50px rgba(0,0,0,.9)}
.br-bar{display:flex;align-items:flex-end;gap:14px;padding:4px 6px 0}
.b-dots{display:flex;gap:6px;flex:none}.b-dots i{width:10px;height:10px;border-radius:50%;background:#3A3F47}
.br-bar .b-dots{padding-bottom:12px}
.br-tabs{display:flex;gap:2px;min-width:0;overflow-x:auto;scrollbar-width:none}.br-tabs::-webkit-scrollbar{display:none}
.br-tab{flex:none;height:34px;padding:0 13px;border-radius:9px 9px 0 0;font-size:13px;font-weight:600;color:#9AA0A8;white-space:nowrap;transition:background .2s,color .2s}
.br-tab:hover{color:#fff}
.br-tab.on{background:#23262C;color:#fff}
.br-tab:focus-visible{outline:2px solid #fff;outline-offset:-2px}
.br-url{display:flex;align-items:center;gap:8px;min-width:0;background:#23262C;padding:8px 12px;border-radius:0 8px 0 0;font-family:var(--mono);font-size:12px;color:#C9CDD3}
.br-url-t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.br-lock{width:9px;height:9px;border-radius:2px;background:#5B616B;flex:none}
.mon .view{aspect-ratio:16/10;border-radius:0 0 8px 8px}
.cur{position:absolute;left:62%;top:58%;width:22px;height:22px;z-index:3;transition:left .7s var(--ease),top .7s var(--ease);filter:drop-shadow(0 4px 6px rgba(0,0,0,.35))}
.cur.click{animation:curClick .35s ease}
@keyframes curClick{50%{transform:scale(.8)}}
.mon-neck{width:18%;height:30px;margin:0 auto;background:linear-gradient(#1A1D22,#2B2F36)}
.mon-base{width:34%;height:11px;margin:0 auto;border-radius:6px 6px 3px 3px;background:#2B2F36}

/* a browser window, for the company panels */
.bw{width:100%;background:var(--ink);border-radius:16px;padding:8px;box-shadow:0 50px 90px -50px rgba(11,13,16,.75)}
.bw-bar{height:30px;display:flex;align-items:center;gap:12px;padding:0 8px 4px;min-width:0}
.bw-url{font-family:var(--mono);font-size:11.5px;color:#9AA0A8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bw .view{aspect-ratio:16/10;border-radius:9px}

/* ---------- proof ---------- */
.r8-proof .stat .n{font-size:clamp(34px,3.7vw,54px);white-space:nowrap}

/* ---------- software: three panels, each in its product color ---------- */
.r8-soft{background:var(--mist)}
.r8-soft .lede,.r8-comp .lede,.r8-media .lede{color:var(--gray)}

/* ---------- media: black and white panels, real sites ---------- */
.r8-media{background:#fff}
.tlink{display:inline-block;margin-top:18px;font-weight:650;font-size:16px;border-bottom:2px solid currentColor;padding-bottom:2px}
.tlink:hover{opacity:.7}
.net{background:var(--ink);color:#fff;border-radius:28px;padding:64px 56px 64px 52px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:center;overflow:hidden}
.net h3{font-family:var(--display);font-weight:900;font-size:clamp(30px,3.2vw,46px);letter-spacing:-.04em;line-height:1;max-width:13ch}
.net-stats{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:40px 0 30px;border-top:1px solid #2B2F36;padding-top:28px}
.net-stats dt{font-family:var(--display);font-weight:900;font-size:clamp(46px,4.6vw,70px);white-space:nowrap;letter-spacing:-.04em;line-height:.9}
.net-stats dd{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:#9AA0A8;margin-top:12px}
.net p{color:#C9CDD3;font-size:17px;line-height:1.5;max-width:42ch}
.sheets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:center}
.sheet-col{display:grid;gap:18px}
.sheet{position:relative;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 40px 60px -40px rgba(0,0,0,.8)}
.sheet.tall{aspect-ratio:1/2.1}.sheet.sq{aspect-ratio:1/1}.sheet.mid{aspect-ratio:1024/1526}
.sheet img{position:absolute;left:0;top:0;width:100%;height:auto;animation:sheetDown 14s ease-in-out 1s infinite alternate}
.sheet.tall img{animation-duration:70s}
.sheet.still img,.sheet.mid img{animation:none}
@keyframes sheetDown{from{top:0;transform:translateY(0)}to{top:100%;transform:translateY(-100%)}}
@keyframes pgDown{from{object-position:50% 0%}to{object-position:50% 100%}}

/* ---------- services ---------- */
.r8-serv{background:var(--ink2);color:#fff}
.r8-serv .lede{color:#A3A9B2}
.r8-serv .kick i,.r8-op .kick i{background:#fff}

/* ---------- how it compounds: six stations on one wire ---------- */
.r8-comp{background:var(--mist)}
.loop{position:relative}
.loop ol{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:76px 84px;position:relative;z-index:1}
.loop-wire{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}
.loop-wire .base{fill:none;stroke:#C2C6CC;stroke-width:2;stroke-dasharray:3 7;stroke-linecap:round}
.loop-wire .lit{fill:none;stroke:var(--ink);stroke-width:3;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .9s var(--ease)}
.loop-wire .lit.on{stroke-dashoffset:0}
.loop-wire .tip{fill:#C2C6CC;transition:fill .3s .7s}
.loop-wire .tip.on{fill:var(--ink)}
.st{border-radius:24px;padding:30px 30px 32px;min-height:286px;display:flex;flex-direction:column;gap:16px;cursor:pointer;transition:box-shadow .5s var(--ease),opacity .5s}
.st1{grid-area:1/1}.st2{grid-area:1/2}.st3{grid-area:1/3}.st4{grid-area:2/3}.st5{grid-area:2/2}.st6{grid-area:2/1}
.st.dark{background:var(--ink);color:#fff}
.st.light{background:#fff;color:var(--ink)}
.st .mono{font-size:11px;color:var(--gray)}.st.dark .mono{color:#A3A9B2}
.st h3{font-family:var(--display);font-weight:900;font-size:clamp(24px,2.1vw,30px);letter-spacing:-.04em;line-height:1.05;max-width:14ch}
.st p{font-size:16px;line-height:1.5;color:var(--gray)}.st.dark p{color:#C9CDD3}
.st ul{list-style:none;margin-top:auto;display:flex;flex-direction:column}
.st .names li{font-family:var(--display);font-weight:800;font-size:19px;letter-spacing:-.025em;padding:10px 0;border-top:1px solid var(--line)}
.st.dark .names li{border-top-color:#2B2F36}
.st .probs li{display:flex;gap:12px;align-items:center;font-size:16px;font-weight:550;padding:10px 0;border-top:1px solid var(--line)}
.st .probs i{width:10px;height:10px;border-radius:3px;flex:none}
.prods{margin-top:auto;display:grid;gap:8px}
.prod{display:flex;align-items:center;gap:12px;height:46px;padding:0 14px;border-radius:11px;color:#fff}
.prod.c-lb,.prod.c-gf{color:var(--ink)}
.prod img{height:26px;width:auto;flex:none}
.prod b{font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:-.03em}
.outs{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px 18px;font-weight:600;font-size:15.5px}
.outs a{border-bottom:2px solid #3A3F47;padding-bottom:2px}.outs a:hover{border-color:#fff}
.st.on.light{box-shadow:0 0 0 3px var(--ink),0 44px 70px -44px rgba(11,13,16,.55)}
.st.on.dark{box-shadow:0 0 0 3px var(--mist),0 0 0 6px var(--ink),0 44px 70px -44px rgba(11,13,16,.7)}

/* ---------- how we operate: one piece of work, people above, AI agents below ---------- */
.r8-op{background:var(--ink);color:#fff}
.r8-op .lede{color:#A3A9B2}
.day-legend{display:flex;align-items:center;gap:26px;margin-bottom:26px;font-weight:600;font-size:15px}
.day-legend .dl{display:flex;align-items:center;gap:10px}
.day-legend .dl i{width:14px;height:14px;border-radius:4px}
.day-legend .p i{background:#fff}.day-legend .a i{background:#3A3F47}
.day-cap{margin-left:auto;font-size:10.5px;color:#A3A9B2}
.day-board{position:relative}
.day-wire{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}
.day-wire path{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.day-wire .base{stroke:#2B2F36}
.day-wire .lit{stroke:#fff;transition:stroke-dashoffset 1s linear}
.day ol{list-style:none;position:relative;z-index:1;display:grid;grid-template-columns:repeat(11,minmax(0,1fr));grid-template-rows:auto auto;gap:64px 8px}
.day li{grid-column:var(--i);border-radius:13px;padding:14px 12px 16px;min-height:0;align-self:start;display:flex;flex-direction:column;gap:8px;transition:background .4s,color .4s,box-shadow .4s,transform .4s var(--ease)}
.day li b{font-family:var(--display);font-weight:800;font-size:17px;letter-spacing:-.025em;line-height:1.08}
.day li span{font-size:13px;line-height:1.35}
.day li.p{grid-row:1;background:#C9CDD3;color:var(--ink)}
.day li.p span{color:#3A3F47}
.day li.a{grid-row:2;background:#1A1D22;color:#E3E5E9;box-shadow:inset 0 0 0 1px #2B2F36}
.day li.a span{color:#A3A9B2}
.day li.done.a{color:#E3E5E9}
.day li.on.p{background:#fff;box-shadow:0 0 0 5px rgba(255,255,255,.22);transform:translateY(-3px)}
.day li.on.a{background:#3A3F47;color:#fff;box-shadow:inset 0 0 0 1px #5B616B;transform:translateY(-3px)}
.day li.on.a span{color:#C9CDD3}
.day-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:64px;border-top:1px solid #2B2F36;padding-top:30px}
.day-notes dt{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#A3A9B2;margin-bottom:10px}
.day-notes dd{font-family:var(--display);font-weight:800;font-size:clamp(19px,1.7vw,24px);letter-spacing:-.03em;line-height:1.2;max-width:26ch}

/* ---------- founder ---------- */
.r8-founder{background:#fff}
.fo-grid{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);gap:clamp(40px,7vw,110px);align-items:center}
.fo-photo img{width:100%;height:auto;display:block}
.fo-copy h2{font-family:var(--display);font-weight:900;font-size:clamp(56px,6.6vw,96px);letter-spacing:-.04em;line-height:.92;margin-bottom:30px}
.fo-copy p{font-size:18px;line-height:1.55;color:var(--gray);max-width:56ch}
.fo-copy .fo-lede{font-family:var(--display);font-weight:800;font-size:clamp(22px,2.2vw,30px);letter-spacing:-.03em;line-height:1.18;color:var(--ink);max-width:30ch;margin-bottom:20px}
.fo-copy .btn{margin-top:32px}

/* ---------- partner with us: the real greetform ---------- */
.r8-partner{background:#E9EAED;padding:clamp(90px,10vw,140px) 0}
.r8-partner .book-copy h2{max-width:11ch}
.r8-partner .book-copy p{color:#3A3F47}
.who{list-style:none;margin-top:36px;border-top:1.5px solid var(--ink);max-width:560px}
.who li{display:grid;grid-template-columns:210px 1fr;gap:18px;padding:15px 0;border-bottom:1px solid #C9CDD3;font-size:15.5px}
.who b{font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:-.025em;line-height:1.2}
.who span{color:var(--gray)}
.book-embed{background:#fff;border-radius:26px;padding:14px;box-shadow:0 0 0 1px rgba(11,13,16,.08),0 70px 120px -70px rgba(11,13,16,.55)}
.book-embed [data-greetform-inline]{border:0!important;border-radius:16px!important;height:600px!important;min-height:0!important;background:#fff}
.book-embed .gf-embed-frame{height:600px!important}
.gf-fallback{padding:24px;text-align:center}.gf-fallback a{font-weight:650;text-decoration:underline;text-underline-offset:3px}

/* ---------- footer, legal, 404 ---------- */
.r8-ftop{grid-template-columns:1.5fr repeat(4,1fr)}
.f-logo img{height:44px}
.r8-foot .wrap{border-top:0}
.r8-lg{background:var(--mist)}
.legal-body a{text-decoration-color:var(--ink)}
.legal-nav a:hover{color:var(--gray)}
.r8-404{padding:clamp(80px,12vw,180px) 0}
.r8-404 h1{font-family:var(--display);font-weight:900;font-size:clamp(48px,7vw,96px);letter-spacing:-.04em;line-height:.92;margin:18px 0 20px}
.r8-404 p{font-size:20px;color:var(--gray)}
.r8-404 .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}

/* ---------- responsive ---------- */
@media (max-width:1240px){
  .r8-nav .links{gap:20px;font-size:14px}
  .wall{grid-template-columns:minmax(0,180px) minmax(0,1fr) minmax(0,180px);gap:28px;padding:30px 30px 26px}
  .day ol{gap:56px 6px}.day li{padding:12px 9px}.day li b{font-size:15px}.day li span{font-size:11.5px}
  .loop ol{gap:64px 56px}
}
@media (max-width:1060px){
  .r8-hero-head{grid-template-columns:1fr;gap:28px;align-items:start}
  .net{grid-template-columns:1fr;gap:40px;padding:40px}
  /* the day turns on its side: people on the left, AI agents on the right */
  .day ol{grid-template-columns:1fr 1fr;grid-template-rows:none;gap:14px 20px}
  .day li{grid-row:var(--i)!important;min-height:0;padding:14px 16px}
  .day li.p{grid-column:1}.day li.a{grid-column:2}
  .day li b{font-size:18px}.day li span{font-size:13.5px}
  .day-legend{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.day-cap{grid-column:1 / -1;grid-row:1;margin:0 0 6px}
  .day-notes{grid-template-columns:1fr;gap:26px}
}
@media (max-width:980px){
  .loop ol{grid-template-columns:1fr;gap:52px}
  .st{grid-area:auto!important;min-height:0}
  .st h3{max-width:none}
  .fo-grid{grid-template-columns:1fr;gap:36px}
  .fo-photo{max-width:260px}
  .r8-ftop{grid-template-columns:1fr 1fr}
  .r8-ftop .f-brand{grid-column:1 / -1}
  .r8-proof .wrap{grid-template-columns:1fr 1fr}
  .r8-proof .stat{padding:30px 0 28px 22px}
  .r8-proof .stat:nth-child(odd){border-left:0;padding-left:0}
  .r8-proof .stat:nth-child(n+3){border-top:1px solid #23262c}
}
@media (max-width:760px){
  .r8-logo img{height:32px}.f-logo img{height:38px}
  .r8-hero{padding-top:14px}
  .r8-hero h1{font-size:clamp(38px,10.6vw,52px)}
  .r8-hero .sub{font-size:17.5px}
  .r8-hero .ctas .btn{flex:1}
  .wall{grid-template-columns:1fr 1fr;gap:26px 14px;padding:16px 14px 20px;border-radius:22px}
  .ws-lf{grid-column:1 / -1;order:-1}
  .ws{gap:14px}
  .ws figcaption{padding-top:12px}
  .ws figcaption img{height:20px}
  .ph{border-radius:28px}.ph .view{border-radius:22px}
  .br-tab{padding:0 10px;font-size:11.5px;height:30px}.br-bar .b-dots{display:none}
  .mon-screen{border-radius:14px;padding:7px 7px 9px}
  .net{padding:30px 20px 40px;border-radius:22px}
  .sheets,.sheet-col{gap:10px}
  .bw{border-radius:13px;padding:6px}
  .st{padding:24px 22px 26px;border-radius:20px}
  .who li{grid-template-columns:1fr;gap:4px}
  .fo-copy h2{margin-bottom:24px}
  .book-embed{padding:8px;border-radius:20px}
  .book-embed [data-greetform-inline],.book-embed .gf-embed-frame{height:600px!important}
  .day li{padding:12px 12px}.day li b{font-size:16px}.day li span{font-size:12.5px}
}
@media (prefers-reduced-motion:reduce){.sheet img{animation:none}}

/* ---------- round 1 review fixes ---------- */
/* the greetform hand is shown whole and waves (the kit version pops up from an edge, which reads as cut here) */
/* real greetforms as two cards */
/* forms sit centered in the hero phone instead of leaving half of it blank */
.ws-gf .ph .pg{object-fit:contain;object-position:50% 38%}
/* real artifacts inside the diagram */
.st-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.st-strip img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:50% 30%;border-radius:8px;background:#fff}
.st-shot{margin-top:auto;border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.st-shot img{width:100%;height:auto;aspect-ratio:16/7;object-fit:cover;object-position:50% 20%}
.st .names{margin-top:0}
@media (max-width:760px){
  .sheets{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet.mid{display:none}
  .day li span{font-size:13px}
}

/* ---------- round 2 review fixes ---------- */
h2.big,.book-copy h2,.r8-proof .stat .n,.mp h3,.vp h3,.net h3,.lg-hero h1,.fam-head h2{letter-spacing:-.04em}
/* the bolts strike inside the card instead of being cut by its top edge */

/* ---------- hero: the paragraph and buttons line up with the first line of the headline ---------- */
.r8-hero-head{align-items:start}
.r8-hero-side{padding-top:54px}
.r8-hero .sub{font-size:21px;max-width:40ch}
@media (max-width:1060px){.r8-hero-side{padding-top:0}}
@media (max-width:760px){.r8-hero .sub{font-size:17.5px}}

/* =====================================================================
   TJ review, 2026-10-03
   ===================================================================== */
.tlink{display:inline-block;font-weight:650;font-size:16px;border-bottom:2px solid currentColor;padding-bottom:2px}
.tlink:hover{opacity:.7}

/* ---------- software: three cards with one structure. Same height, same art area, same type, same screen area ---------- */
.sp-list{display:grid;gap:24px}
.sp{position:relative;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);height:600px;border-radius:28px;overflow:hidden;color:var(--ink);box-shadow:0 50px 90px -70px rgba(11,13,16,.6)}
.sp > .flash{z-index:0;pointer-events:none}
.sp-copy,.sp-stage{position:relative;z-index:1;min-width:0}
.sp-lb{background:var(--lb)}.sp-lf{background:var(--lf);color:#fff}.sp-gf{background:var(--gf)}
.sp-copy{display:flex;flex-direction:column;padding:0 44px 44px}
.sp-copy .fam-art{margin:0 -44px;height:250px;flex:none}
.sp-lock{height:46px;width:auto;align-self:flex-start}
.sp-role{font-family:var(--display);font-weight:800;font-size:clamp(22px,2vw,28px);line-height:1.16;letter-spacing:-.03em;margin:22px 0 28px;max-width:22ch}
.sp-stage{padding:40px 40px 40px 0;height:600px}
.sp-stage > *{height:100%}
.sp-stage .bw{display:flex;flex-direction:column}
.sp-stage .bw .view{flex:1;min-height:0;aspect-ratio:auto}
/* the three living icons fill the same 250px art area */
.sp-lb .fam-ic{top:20px;height:212px}.sp-lb .fam-ic.s2{height:184px}.sp-lb .fam-ic.s3{height:218px}
.a-walk .fam-ic{bottom:20px;height:212px;left:100%;animation:r8walk 9s linear infinite}
.a-walk .fam-ic img{transform-origin:40% 95%;animation:r8hop .46s ease-in-out infinite alternate}
@keyframes r8walk{0%{left:100%}100%{left:-230px}}
@keyframes r8hop{from{transform:translateY(0) rotate(-3deg)}to{transform:translateY(-9px) rotate(3deg)}}
.sp-gf .a-hand .fam-ic{right:auto;left:44px;bottom:18px;height:212px;transform-origin:55% 90%;animation:r8wave 3.4s ease-in-out infinite}
@keyframes r8wave{0%,100%{transform:rotate(-7deg)}20%{transform:rotate(11deg)}40%{transform:rotate(-9deg)}60%{transform:rotate(8deg)}80%{transform:rotate(-4deg)}}
.sp-lf .fam-art{overflow:visible}
@media (prefers-reduced-motion:reduce){.a-walk .fam-ic{left:44px}}

/* greetform: a working copy of a real greetform, with a light green note that names what just happened */
.gfx{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:center}
.gfx-ph{--k:.743;position:relative;width:calc(340px*var(--k));height:calc(700px*var(--k));flex:none}
.gfx-ph .phone{position:absolute;left:0;top:0;transform-origin:0 0;transform:scale(var(--k))}
.gfx .xp{background:#DDF6E7;color:var(--ink);border-radius:20px;padding:22px 24px 24px;box-shadow:0 40px 70px -40px rgba(11,13,16,.55)}
.gfx .xp-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1.5px solid #A9DDBF;margin-bottom:16px}
.gfx .xp-top .mono{font-size:10.5px;color:#17603A}
.gfx .xp-dots{display:flex;gap:5px}.gfx .xp-dots i{width:8px;height:8px;border-radius:2px;background:#A9DDBF;transition:background .3s}.gfx .xp-dots i.on{background:var(--ink)}
.gfx .xp-h{display:block;font-family:var(--display);font-weight:900;font-size:clamp(22px,2vw,28px);line-height:1.04;letter-spacing:-.035em}
.gfx .xp-p{margin-top:12px;font-size:15.5px;line-height:1.5;color:#23262C}
.gfx .xp.bump .xp-h,.gfx .xp.bump .xp-p{animation:xpIn .45s var(--ease)}
@keyframes xpIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
/* the phone and the form inside it: copied from sites/greetform/src/greetform.css so it plays the same */
.phone{grid-column:2;grid-row:1;position:relative;width:340px;height:700px;border-radius:48px;background:var(--ink);padding:12px;box-shadow:0 60px 120px -50px rgba(var(--brand-deep-rgb),.9)}
.phone .notch{position:absolute;left:50%;top:12px;transform:translateX(-50%);width:110px;height:26px;border-radius:0 0 16px 16px;background:var(--ink);z-index:3}
.hq{--cream:#FFFAF0;--sand:#F3EEE2;--line:#D1CCC2;--red:#C24C32;--sel:#EFDBCE;--navy:#123260;--note:#1D7A48;
  height:100%;border-radius:37px;background:var(--cream);overflow:hidden;display:flex;flex-direction:column;font-family:Inter,var(--body);color:#1C1A17}
.hq-mast{padding:36px 18px 10px;border-bottom:1px solid #E5DFD2}
.hq-mast img{height:42px;width:auto}
.hq-prog{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 18px 0}
.hq-step{font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:#5A544A}
.hq-bar{width:100%;height:3px;background:#DDD7CA}.hq-bar i{display:block;height:100%;width:25%;background:var(--red);transition:width .5s var(--ease)}
.hq-body{position:relative;flex:1;overflow-y:auto;padding:14px 16px 18px;scrollbar-width:none;scroll-behavior:smooth}
.hq-body::-webkit-scrollbar{display:none}
.hq-foot{text-align:center;font-size:11px;color:#8A8376;padding:9px;background:var(--sand)}
.hq-foot b{font-family:var(--display);font-weight:800;color:#1C1A17;letter-spacing:-.02em}.hq-foot b span{color:var(--red)}
.hq .gq{animation:gqIn .4s var(--ease)}
@keyframes gqIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
.hq .rule{border-top:2px solid #1C1A17;margin:4px 0 10px}
.hq .k{font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--red);font-weight:600;margin-bottom:6px}
.hq h4{font-family:Fraunces,Georgia,serif;font-size:20px;line-height:1.15;font-weight:700;letter-spacing:-.01em}
.hq h4 .req{color:var(--red)}
.hq .intro{font-size:13px;line-height:1.5;color:#5A544A;margin:8px 0 14px}
.hq-opts{display:grid;gap:7px;margin:10px 0 14px}
.hq-opts.two{grid-template-columns:1fr 1fr}
.hq-opt{font-family:Fraunces,Georgia,serif;font-size:15px;text-align:left;padding:11px 12px;border-radius:5px;background:var(--cream);box-shadow:inset 0 0 0 1px var(--line);display:flex;justify-content:space-between;align-items:center;gap:8px;color:#1C1A17;transition:background .15s,box-shadow .15s}
.hq-opt::after{content:"";width:15px;height:15px;border-radius:50%;box-shadow:inset 0 0 0 1.5px #C9C2B4;flex:none;background:#F3EEE2}
.hq-opt.multi::after{border-radius:3px}
.hq-opt:hover{box-shadow:inset 0 0 0 1px var(--red)}
.hq-opt.on{background:var(--sel);box-shadow:inset 0 0 0 1.5px var(--red)}
.hq-opt.on::after{background:var(--red);box-shadow:inset 0 0 0 3px var(--sel),0 0 0 1.5px var(--red)}
.hq-next{display:block;width:100%;height:44px;border-radius:5px;background:var(--red);color:#fff;font-weight:600;font-size:15px;margin-top:6px}
.hq-next:disabled{background:#8A8781;cursor:default}
.hq-card{margin:4px 0 16px;border-radius:12px;background:var(--cream);box-shadow:inset 0 0 0 1.5px var(--red);padding:14px;animation:pop .5s var(--ease)}
@keyframes pop{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}
.hq-card .hw{display:flex;gap:10px;align-items:center}
.hq-card .hw img{width:44px;height:44px;border-radius:50%;flex:none;object-fit:cover}
.hq-card .hw small{display:block;font-family:var(--mono);font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--red);font-weight:600}
.hq-card .hw b{display:block;font-family:Fraunces,Georgia,serif;font-size:15px;line-height:1.15}
.hq-card .hw span{display:block;font-family:var(--mono);font-size:9.5px;color:#5A544A}
.hq-card h5{font-family:Fraunces,Georgia,serif;font-size:16.5px;line-height:1.2;margin-top:10px}
.hq-card p{font-family:Fraunces,Georgia,serif;font-size:12.5px;color:#3D3830;margin-top:5px;line-height:1.45}
.hq-card .only{font-style:italic;color:var(--note);font-size:12px;margin-top:8px}
.hq-card .yes{display:block;width:100%;margin-top:8px;height:38px;border-radius:5px;background:var(--navy);color:#fff;font-weight:600;font-size:13.5px}
.hq-card .no{display:block;width:100%;margin-top:2px;height:30px;font-size:12.5px;color:#6A645A}
.hq-card.done .yes{background:#E4EEE6;color:var(--note)}
.hq-wall .lead{font-size:12.5px;color:#5A544A;margin:8px 0 12px;line-height:1.45}
.hq-sec{font-family:var(--mono);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#7A7266;margin:12px 0 8px}
.hq-off{border-radius:8px;overflow:hidden;background:var(--cream);box-shadow:inset 0 0 0 1px var(--line);margin-bottom:10px;animation:pop .5s var(--ease) both}
.hq-off .art{position:relative;aspect-ratio:16/10;background:#0B0D10}
.hq-off .art img{width:100%;height:100%;object-fit:cover;display:block}
.hq-off .art em{position:absolute;left:8px;top:8px;font-style:normal;font-family:var(--mono);font-size:9.5px;font-weight:600;background:#1F5D3A;color:#fff;padding:4px 7px;border-radius:4px}
.hq-off .bd{padding:10px 12px 12px}
.hq-off .bd small{display:block;font-family:var(--mono);font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:#7A7266}
.hq-off .bd b{display:block;font-family:Fraunces,Georgia,serif;font-size:16px;line-height:1.15;margin:4px 0 8px}
.hq-off .bd button{height:34px;padding:0 12px;border-radius:5px;background:var(--navy);color:#fff;font-weight:600;font-size:12.5px}
.hq-off.dark{background:#16233B;box-shadow:none}.hq-off.dark .bd small{color:#9AA7BD}.hq-off.dark .bd b{color:#fff}
.hq-off.dark .art em{background:#E5BC4A;color:#1C1A17}.hq-off.dark .bd button{background:#E5BC4A;color:#1C1A17;width:100%}
.hq-off.claimed .bd button{background:#E4EEE6;color:var(--note)}
.hq-restart{display:block;margin:10px auto 0;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--red);text-decoration:underline}
.gfx-ph .phone{grid-column:auto;grid-row:auto;box-shadow:0 60px 100px -50px rgba(11,13,16,.75)}

/* ---------- one system, agent-native ---------- */
.r8-sys{background:var(--ink);color:#fff}
.r8-sys .kick i{background:#fff}
.sys-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,6vw,88px);align-items:center}
.r8-sys .lede{color:#A3A9B2;margin-top:26px}
.sys-facts{margin:36px 0 30px;border-top:1px solid #2B2F36}
.sys-facts > div{display:grid;grid-template-columns:168px 1fr;gap:18px;align-items:center;padding:15px 0;border-bottom:1px solid #2B2F36}
.sys-facts dt{line-height:0}.sys-facts dt img{height:27px;width:auto}
.sys-facts dd{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#E3E5E9}
.sys-obj{position:relative;aspect-ratio:640/450}
.sys-wire{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.sys-wire .adrop{fill:none;stroke:#A3A9B2;stroke-width:2.5;stroke-dasharray:4 8;animation:sysDrop .9s linear infinite;transition:stroke .4s}
@keyframes sysDrop{to{stroke-dashoffset:-12}}
.sys.is-agent .adrop{stroke:#fff}
.sys-wire .edge{fill:none;stroke:#3A3F47;stroke-width:2.5}
.sys-wire .edge-lit{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}
.sys-wire .edge-lit.on{stroke-dashoffset:0;transition:stroke-dashoffset .8s var(--ease)}
.sys-wire .tip{fill:#3A3F47}.sys-wire .tip.on{fill:#fff;transition:fill .2s .6s}
.sys-agent{position:absolute;left:6.25%;top:0;width:87.5%;height:16%;border-radius:16px;background:#15181D;box-shadow:inset 0 0 0 1.5px #3A3F47;display:flex;align-items:center;gap:14px;padding:0 4.5%;transition:box-shadow .4s}
.sys-agent b{font-family:var(--display);font-weight:900;font-size:clamp(16px,1.8vw,24px);letter-spacing:-.03em}
.sys-agent .mono{font-size:clamp(9px,.9vw,11.5px);color:#A3A9B2}
.sys-agent i{margin-left:auto;width:10px;height:20px;border-radius:2px;background:#fff;animation:sysBlink 1.1s steps(2,jump-none) infinite}
@keyframes sysBlink{50%{opacity:.15}}
.sys.is-agent .sys-agent{box-shadow:inset 0 0 0 2.5px #fff}
.sys-node{position:absolute;top:35.5%;width:21.875%;height:33.8%;border-radius:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9%;color:var(--ink);transition:box-shadow .4s,transform .4s var(--ease)}
.sys-node img{height:44%;width:auto}
.sys-node b{font-family:var(--display);font-weight:900;font-size:clamp(11px,1.45vw,19px);letter-spacing:-.03em;line-height:1}
.n-lb{left:6.25%;background:var(--lb)}.n-gf{left:39.06%;background:var(--gf)}.n-lf{left:71.875%;background:var(--lf);color:#fff}
.sys-node.on{box-shadow:0 0 0 4px var(--ink),0 0 0 7px #fff;transform:translateY(-4px)}
.sys-cap{list-style:none;position:relative;min-height:128px;border-top:1px solid #2B2F36}
.sys-cap li{position:absolute;left:0;right:0;top:22px;opacity:0;transform:translateY(8px);transition:opacity .4s,transform .45s var(--ease);font-family:var(--display);font-weight:800;font-size:clamp(19px,1.75vw,25px);line-height:1.2;letter-spacing:-.03em;max-width:32ch}
.sys-cap li.on{opacity:1;transform:none}
.sys-cap .mono{display:block;font-size:10.5px;color:#A3A9B2;margin-bottom:10px;font-weight:500;letter-spacing:.14em}

/* ---------- services: each brand in its own colors, with its own logo and its own animation ---------- */
.sg{grid-template-columns:1fr 1fr;gap:24px}
.vp{border-radius:28px;padding:40px;min-width:0;overflow:hidden}
.vp-lmhq{background:#F5B21C;color:var(--ink);--brand:#F5B21C;--brand-rgb:245,178,28;--brand-deep-rgb:80,63,33;--b50:#FFF9F0;--b300:#FAD492;--b700:#A67B27}
.vp-tal{background:#9B2335;color:#fff;--brand:#9B2335;--brand-rgb:155,35,53;--brand-deep-rgb:57,25,29;--pink:#F6C9D0}
.vp-stage{height:580px;display:flex;align-items:center;justify-content:center;margin-bottom:36px}
.vp-stage > *{width:100%;max-width:560px}
.vp-logo{line-height:0}.vp-logo img{height:44px;width:auto}
.vp-desc{font-size:19px;line-height:1.45;margin:18px 0 30px;max-width:38ch;font-weight:500}
/* Local Media HQ's paper route: copied from sites/localmediahq/src/lmhq.css so it plays the same */
.route{position:relative;background:#fff;color:var(--ink);border-radius:24px;padding:20px 20px 16px;box-shadow:0 70px 120px -50px rgba(var(--brand-deep-rgb),.85),0 0 0 6px rgba(255,255,255,.22);transform:rotate(-.8deg)}
.r-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:2px 4px 14px;border-bottom:1.5px solid var(--ink)}
.r-top .mono{font-size:10.5px;color:var(--gray);display:flex;align-items:center;gap:8px;padding-top:6px}
.route .live{width:8px;height:8px;border-radius:50%;background:#16A34A;box-shadow:0 0 0 4px rgba(22,163,74,.18);animation:livePulse 1.6s ease-in-out infinite}
@keyframes livePulse{50%{box-shadow:0 0 0 7px rgba(22,163,74,0)}}
.r-score{display:flex;gap:22px}
.r-score span{display:flex;flex-direction:column;font-size:11.5px;color:var(--gray);line-height:1.2;text-align:right}
.r-score em{font-style:normal;font-family:var(--display);font-weight:900;font-size:28px;letter-spacing:-.04em;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1.05}
.r-score span:last-child em{color:var(--b700)}
.r-score em.bump{animation:scoreBump .35s var(--ease)}
@keyframes scoreBump{40%{transform:translateY(-3px) scale(1.06)}}
.r-street{position:relative;margin:12px 0 0;border-radius:14px;overflow:visible}
.r-svg{width:100%;height:auto;overflow:visible}
.r-sky{fill:var(--b50)}
.r-road{stroke:var(--ink);stroke-width:4}
.r-curb{stroke:var(--b300);stroke-width:4;stroke-dasharray:22 16}
.h-roof{fill:var(--ink)}
.h-chim{fill:var(--ink)}
.h-body{fill:#fff;stroke:var(--ink);stroke-width:4;transition:fill .4s}
.h-win{fill:var(--mist);stroke:var(--ink);stroke-width:3;transition:fill .35s}
.h-door{fill:var(--ink)}
.hs.lit .h-win{fill:var(--brand)}
.hs.lit .h-body{fill:var(--b50)}
.hs{transform-box:fill-box}
.hs.thump{animation:thump .4s var(--ease)}
@keyframes thump{40%{translate:0 3px}}
.r-paper{position:absolute;left:0;top:0;width:44px;pointer-events:none;z-index:3;filter:drop-shadow(0 6px 6px rgba(11,13,16,.25));will-change:transform}
.r-chip{position:absolute;z-index:4;transform:translate(-50%,-100%);background:var(--ink);color:#fff;font-size:11.5px;font-weight:650;white-space:nowrap;padding:5px 8px;border-radius:7px;pointer-events:none;animation:chipUp 1.5s var(--ease) forwards}
.r-chip em{font-style:normal;color:var(--brand)}
@keyframes chipUp{0%{opacity:0;transform:translate(-50%,-70%)}15%{opacity:1;transform:translate(-50%,-110%)}75%{opacity:1}100%{opacity:0;transform:translate(-50%,-170%)}}
.r-ledger{position:relative;height:178px;margin-top:12px;display:flex;flex-direction:column;gap:6px}
.r-ledger .lg-empty{position:absolute;inset:0;display:grid;place-items:center;font-size:13.5px;color:var(--gray);border-radius:12px;border:2px dashed var(--line);transition:opacity .3s}
.r-ledger .lg-empty.gone{opacity:0}
.route .lg{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;background:var(--mist);border-radius:10px;padding:8px 12px;font-size:13.5px;line-height:1.3;animation:lgIn .45s var(--ease) both}
.route .lg i{font-style:normal;font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;padding:4px 6px;border-radius:5px;background:#fff;color:var(--gray);font-weight:600}
.route .lg.t-lead i,.lg.t-offer i,.lg.t-plan i{background:var(--ink);color:var(--brand)}
.route .lg b{font-family:var(--display);font-weight:800;font-size:15px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.route .lg b.z{color:var(--slate);font-weight:600}
@keyframes lgIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.r-stamp{position:absolute;right:26px;top:104px;z-index:5;font-family:var(--display);font-weight:900;font-size:24px;letter-spacing:-.01em;text-transform:uppercase;color:var(--ink);background:var(--brand);border:3.5px solid var(--ink);border-radius:10px;padding:6px 14px;transform:rotate(-9deg) scale(2.4);opacity:0;pointer-events:none}
.r-stamp.hit{animation:lmStamp .38s cubic-bezier(.3,1.6,.5,1) forwards}
@keyframes lmStamp{to{transform:rotate(-9deg) scale(1);opacity:1}}
.route.thud{animation:routeThud .35s var(--ease)}
@keyframes routeThud{40%{transform:rotate(-.8deg) translateY(4px)}}
.r-fine{margin-top:10px;font-size:12px;color:var(--slate);text-align:right}
/* Texas AI Lab's sorter: copied from sites/texas-ai-lab/src/tal.css so it plays the same */
.sorter{position:relative;background:#fff;color:var(--ink);border-radius:24px;padding:22px 22px 18px;box-shadow:0 70px 120px -50px rgba(57,25,29,.9),0 0 0 6px rgba(255,255,255,.08);transform:rotate(1deg);margin-top:30px}
.s-hat{position:absolute;width:150px;top:-74px;right:34px;transform:rotate(9deg);transform-origin:50% 100%;filter:drop-shadow(0 14px 18px rgba(57,25,29,.45));z-index:3}
.sorter.thud .s-hat{animation:hatJump .5s var(--ease)}
@keyframes hatJump{0%{transform:rotate(9deg)}30%{transform:translateY(-14px) rotate(2deg)}60%{transform:translateY(0) rotate(12deg)}100%{transform:rotate(9deg)}}
.s-top{display:flex;flex-direction:column;gap:4px;padding:0 160px 14px 4px;border-bottom:1.5px solid var(--ink)}
.s-top .mono{font-size:10.5px;color:var(--gray)}
.s-top b{font-family:var(--display);font-weight:900;font-size:24px;letter-spacing:-.03em}.s-top b em{font-style:normal;color:var(--brand)}
.s-count{font-size:10.5px!important}.s-count em{font-style:normal;color:var(--brand);font-weight:600}
.s-desk{position:relative;height:150px;display:grid;place-items:center}
.news{position:absolute;left:50%;top:50%;width:min(360px,82%);background:var(--mist);border-radius:14px;padding:14px 16px 14px 16px;box-shadow:inset 0 0 0 2px var(--ink),0 18px 30px -18px rgba(11,13,16,.5);transform:translate(-50%,-160%) rotate(-6deg);opacity:0;transition:transform .55s var(--ease),opacity .3s}
.news.in{transform:translate(-50%,-50%) rotate(-1.5deg);opacity:1}
.news .mono{font-size:10px;color:var(--gray)}
.news b{display:block;font-family:var(--display);font-weight:800;font-size:19px;letter-spacing:-.025em;line-height:1.15;margin-top:4px}
.nstamp{position:absolute;right:-12px;bottom:-16px;font-family:var(--display);font-weight:900;font-size:18px;letter-spacing:.02em;text-transform:uppercase;padding:4px 12px;border-radius:8px;border:3px solid currentColor;transform:rotate(-12deg) scale(2.4);opacity:0;background:#fff}
.nstamp.hit{animation:talStamp .35s cubic-bezier(.3,1.6,.5,1) forwards}
@keyframes talStamp{to{transform:rotate(-12deg) scale(1);opacity:1}}
.st-use{color:var(--brand)}.st-watch{color:var(--ink)}.st-ignore{color:var(--slate)}
.news.go{transition:transform .6s var(--ease),opacity .45s .15s;opacity:0}
.s-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.s-col{border-radius:14px;padding:10px 10px 12px;min-height:178px;display:flex;flex-direction:column;gap:8px}
.c-use{background:var(--brand);color:#fff}
.c-watch{background:var(--pink)}
.c-ignore{background:var(--mist);box-shadow:inset 0 0 0 1.5px var(--line)}
.s-lab{font-family:var(--display);font-weight:900;font-size:17px;letter-spacing:-.02em;text-transform:uppercase}
.s-stack{display:flex;flex-direction:column;gap:6px}
.mini{font-size:12.5px;line-height:1.3;font-weight:500;padding:7px 9px;border-radius:8px;animation:miniIn .45s var(--ease) both}
.c-use .mini{background:rgba(255,255,255,.14);color:#fff}
.c-watch .mini{background:rgba(255,255,255,.65)}
.c-ignore .mini{color:var(--slate);text-decoration:line-through;text-decoration-thickness:1.5px;background:#fff}
@keyframes miniIn{from{opacity:0;transform:translateY(-14px) scale(.9)}to{opacity:1;transform:none}}
.s-col.bump{animation:colBump .4s var(--ease)}
@keyframes colBump{40%{transform:translateY(4px)}}
.s-note{position:absolute;left:-58px;bottom:-26px;width:210px;background:#FFF3B0;color:var(--ink);font-family:var(--display);font-weight:800;font-size:16px;letter-spacing:-.02em;line-height:1.2;padding:14px 14px 16px;border-radius:4px;box-shadow:0 22px 34px -18px rgba(11,13,16,.55);transform:rotate(-7deg) scale(.6);opacity:0;transition:transform .45s cubic-bezier(.3,1.5,.5,1),opacity .25s;z-index:4;pointer-events:none}
.s-note .mono{display:block;font-size:10px;color:var(--gray);margin-bottom:6px;font-weight:500}
.s-note.on{transform:rotate(-7deg) scale(1);opacity:1}
.s-fine{margin-top:12px;font-size:12px;color:var(--slate);text-align:right}
.vp .sorter{margin-top:44px}
.s-hat{height:auto}

/* ---------- diagram: the last block of every station sits on the bottom, so a row lines up ---------- */
.st h3{min-height:2.1em}
.st ul{margin-top:0}
.st > :last-child{margin-top:auto}
.st-end{display:flex;flex-direction:column;gap:14px}
.st .names.logos li{padding:13px 0;line-height:0}
.st .names.logos img{height:30px;width:auto}

@media (max-width:1240px){
  .sp-copy{padding:0 32px 36px}.sp-copy .fam-art{margin:0 -32px}
  .sp-stage{padding:32px 32px 32px 0}
  .gfx{gap:20px}.gfx .xp{padding:18px}
  .vp{padding:28px}
}
@media (max-width:1060px){
  .sp-copy{padding:0 26px 30px}.sp-copy .fam-art{margin:0 -26px}
  .sp-stage{padding:28px 26px 28px 0}
  .sp-role{font-size:21px}
  .gfx{gap:14px}.gfx .xp{padding:16px}.gfx .xp-h{font-size:20px}.gfx .xp-p{font-size:14px}
  .sys-grid{grid-template-columns:1fr}
  .sg{grid-template-columns:1fr}
  .vp-stage{height:auto;min-height:0;margin-bottom:30px}
}
@media (max-width:760px){
  .sp{grid-template-columns:1fr;height:auto;border-radius:22px}
  .sp-copy .card-act{margin-top:0!important}
  .sp-stage{height:auto}.sp-stage > *{height:auto}
  .sp-stage .bw .view{flex:none;aspect-ratio:4/3}
  .sp-role{font-size:22px}
  .gfx .xp{padding:20px}.gfx .xp-h{font-size:24px}.gfx .xp-p{font-size:15.5px}
  .sp-copy{padding:0 22px 26px}.sp-copy .fam-art{margin:0 -22px;height:210px}
  .sp-lock{height:38px}
  .sp-stage{padding:0 16px 24px}
  .sp-lb .fam-ic{top:16px;height:178px}.sp-lb .fam-ic.s2{height:154px}.sp-lb .fam-ic.s3{height:184px}
  .a-walk .fam-ic{bottom:16px;height:178px}
  .sp-gf .a-hand .fam-ic{left:22px;bottom:14px;height:178px}
  .gfx{grid-template-columns:1fr;gap:16px;justify-items:center}
  .gfx .xp{width:100%}
  .gfx-ph{--k:.86}
  .sys-facts > div{grid-template-columns:1fr;gap:10px}
  .sys-agent{border-radius:11px}.sys-agent i{width:7px;height:14px}
  .sys-node{border-radius:14px}
  .sys-cap{min-height:168px}
  .vp{padding:16px 14px 26px;border-radius:22px}
  .vp-logo,.vp-desc,.vp .tlink{margin-left:8px}
  .vp-logo img{height:34px}
  .vp-desc{font-size:17px}
  /* the two animations, at phone size (from each site's own phone rules) */
  .route{padding:14px 12px 12px;transform:none;border-radius:20px}
  .r-top{flex-direction:column;gap:10px;padding-bottom:12px}.r-top .mono{padding-top:0}
  .r-score{width:100%;justify-content:space-between}.r-score span{text-align:left}.r-score em{font-size:24px}
  .r-paper{width:30px}.r-chip{font-size:10.5px;padding:4px 6px}.r-ledger{height:auto;min-height:236px}
  .r-stamp{font-size:18px;right:14px;top:126px}
  .sorter{padding:16px 12px 14px;transform:none}
  .s-hat{width:104px;top:-52px;right:18px}
  .s-top{padding-right:100px}.s-top b{font-size:19px}
  .s-desk{height:140px}.news b{font-size:16px}
  .s-col{min-height:150px;padding:8px}.s-lab{font-size:13px}
  .mini{font-size:10.5px;padding:6px 5px;overflow-wrap:break-word}
  .s-col{padding:8px 6px}
}

/* ---------- legal pages and the agents page ---------- */
.legal-table{overflow-x:auto;margin:14px 0 18px}
.legal-table table{width:100%;border-collapse:collapse;font-size:15.5px;line-height:1.5}
.legal-table th{text-align:left;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;padding:10px 12px 10px 0;border-bottom:1.5px solid var(--ink)}
.legal-table td{vertical-align:top;padding:12px 12px 12px 0;border-bottom:1px solid var(--line);color:#2B2F35}
.ag-hero .t{padding-top:56px;padding-bottom:64px}
.ag-hero a,.ag-contact a{text-decoration:underline;text-underline-offset:3px}
.ag-say .mono{color:#A3A9B2}
.ag-note-t{margin-top:16px;font-size:18px;color:var(--gray);max-width:60ch}
.ag-contact{margin-top:36px}
.ag-grid.card-row{grid-template-columns:repeat(3,minmax(0,1fr))}
.ag-connect .ag-group{background:#fff}
.ag-lock{line-height:0}.ag-lock img{height:30px;width:auto}
.ag-group ul{margin-bottom:22px}
.ag-acts{display:flex;flex-wrap:wrap;gap:8px 20px}
@media (max-width:980px){.ag-grid.card-row{grid-template-columns:1fr}}


/* ---------- TJ final review, 2026-10-03 ---------- */
/* the agent bar is always black with white text, in every state of the cycle */
.sys-agent,.sys-agent b{color:#fff}
/* greetform sits in the middle with its sides flipped: phone on the left edge, note beside it, logo and text on the right */
.sp.flip{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.sp.flip .sp-copy{order:2}
.sp.flip .sp-stage{order:1;padding:40px 0 40px 40px}
.sp.flip .gfx{grid-template-columns:auto minmax(0,1fr)}
.sp.flip .gfx-ph{order:1}.sp.flip .gfx .xp{order:2}
/* services logos in the diagram sit on their own brand color, like the products in station 03 */
.st .svcs{margin-top:auto;display:grid;gap:8px}
.svc{display:flex;align-items:center;height:52px;padding:0 14px;border-radius:11px}
.svc img{height:24px;width:auto}
.svc.c-lm{background:#F5B21C}.svc.c-tal{background:#9B2335}
@media (max-width:1240px){.sp.flip .sp-stage{padding:32px 0 32px 32px}}
@media (max-width:1060px){.sp.flip .sp-stage{padding:28px 0 28px 26px}}
@media (max-width:760px){
  .sp.flip{grid-template-columns:1fr}
  .sp.flip .sp-copy{order:1}.sp.flip .sp-stage{order:2;padding:0 16px 24px}
  .sp.flip .gfx{grid-template-columns:1fr}
  .sp.flip .gfx-ph{order:2}.sp.flip .gfx .xp{order:1}
}

/* ---------- the agent-layer step: the panel turns white, on purpose (TJ, 2026-10-03) ----------
 Same look the shared .agent rule used to give it by accident. The "AI agents" bar stays black with white text. */
.sys.is-agent{background:#fff;color:var(--ink);border-radius:22px;padding:26px 28px;display:flex;flex-direction:column;box-shadow:0 50px 100px -40px rgba(var(--brand-rgb),.45)}
.sys.is-agent .sys-agent,.sys.is-agent .sys-agent b{color:#fff}
.sys.is-agent .sys-agent .mono{color:#A3A9B2}
