/* AtlasAI site shell, November 2026: the tokens, type and components of the home page, for every interior page. */
:root{--ivory:#fafaf9;--paper:#f3f1ec;--ink:#141413;--ink2:#4a4a46;--mute:#76766f;--line:rgba(20,20,19,.12);--sage:#33443b;--sagel:#a9c3ba;--acc:#3f7d66;--acc2:#e7efe9;
  --g50:#fafafa;--g100:#f5f5f5;--g200:#e9eaeb;--g300:#d5d7da;--g500:#717680;--g700:#414651;--g900:#181d27;--blue:#2e90fa;--blue50:#eff8ff;--ok:#067647;--ok50:#ecfdf3;--warn:#b54708;--warn50:#fffaeb;
  --serif:"Lora",Georgia,serif;--sans:"Source Sans 3",system-ui,sans-serif;--ui:"Inter","Source Sans 3",system-ui,sans-serif;--edge:max(24px,calc((100vw - 1280px)/2))}
:root{--gray-50:#fafafa;--gray-100:#f5f5f4;--gray-200:#e7e5e4;--gray-300:#d6d3d1;--gray-400:#a8a29e;--gray-500:#78716c;--gray-600:#57534e;--gray-700:#44403c;--gray-800:#292524;--gray-900:#1c1917;--font-serif:var(--serif);--font-sans:var(--sans)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font:17px/1.55 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit}img,video{max-width:100%}
.w{width:min(1280px,100% - 48px);margin-inline:auto}
.h1{font:400 clamp(2.6rem,5.2vw,4.6rem)/1.03 var(--serif);letter-spacing:-.025em;margin:0;text-wrap:balance}
.h2{font:400 clamp(2.1rem,3.6vw,3.3rem)/1.06 var(--serif);letter-spacing:-.02em;margin:0;text-wrap:balance}
.h3{font:400 26px/1.2 var(--serif);margin:0}
.kick{color:var(--ink2);font-size:18.5px;margin:16px 0 0;max-width:42rem}
.eyebrow{font:600 13px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--acc);margin-bottom:18px}
.btn{display:inline-flex;align-items:center;gap:.55rem;background:var(--ink);color:var(--ivory);text-decoration:none;font:600 15px var(--sans);padding:.8rem 1.3rem;border-radius:2px;border:1px solid var(--ink);transition:background .25s,color .25s;cursor:pointer}
.btn:hover{background:#2b2b29}.btn.lt{background:#fff;color:var(--ink);border-color:#fff}.btn.ghost{background:transparent;color:var(--ink)}
.tl{color:var(--ink);font-weight:600;font-size:15px;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.lnk{font-weight:600;text-decoration:none;white-space:nowrap}.lnk::after{content:" \2192"}
.acts{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:30px}
.rv{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}.rv.in{opacity:1;transform:none}

/* top bar and nav */
.bar{background:#0f1512;color:#e9eee9;text-align:center;font-size:14px;padding:.6rem 1rem}.bar a{color:#fff;margin-left:10px;font-weight:600;text-decoration:none}
.nav{position:sticky;top:0;z-index:40;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:16px var(--edge);background:rgba(250,250,249,.92);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid transparent;transition:border-color .3s}
.nav.sc{border-bottom-color:var(--line)}
.nav .l{display:flex;gap:28px;font-size:15px}.nav .l a{text-decoration:none;opacity:.86}.nav .l a:hover,.nav .l a.on{opacity:1}
.nav .ctr img{height:28px;display:block}.nav .r{justify-self:end;display:flex;gap:20px;align-items:center;font-size:15px}.nav .r a{text-decoration:none}
.mnu,.mclose{display:none}

/* page hero */
.phero{padding:96px 0 56px}.phero .h1{max-width:15ch}.phero .kick{font-size:20px;max-width:40rem}
.phero .hgrid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px;align-items:end}
.phero .note{margin-top:14px;font-size:14px;color:var(--mute)}

/* the context panel: what the agent reads, the request, the cited result */
.ctx{position:relative;background:linear-gradient(160deg,#eef2ef 0%,#dfe7e2 100%);border-radius:20px;padding:44px;overflow:hidden;min-height:540px}
.ctx::before{content:"";position:absolute;inset:0;background:radial-gradient(1000px 420px at 85% -10%,rgba(255,255,255,.75),transparent 60%);pointer-events:none}
.ctx .demo{position:absolute;right:22px;top:16px;font:500 12px var(--ui);color:var(--g500);z-index:2}.ctx.small .demo{position:static;display:block;margin-bottom:12px}
.ctx .cg{position:relative;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,1.3fr) minmax(0,6fr);align-items:center;min-height:452px}
.ctx .lab{font:600 12px var(--ui);letter-spacing:.12em;text-transform:uppercase;color:var(--g500);margin:0 0 12px 2px}
.ctx .chips{display:grid;gap:12px}
.ctx .chip{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--g200);border-radius:14px;padding:14px 16px;box-shadow:0 1px 2px rgba(16,24,40,.05);opacity:0;transform:translateX(-14px);transition:opacity .45s,transform .55s cubic-bezier(.2,.7,.2,1),border-color .4s,box-shadow .4s}
.ctx .chip i{flex:none;width:36px;height:36px;border-radius:9px;border:1px solid var(--g200);display:grid;place-items:center;color:var(--g700)}
.ctx .chip i svg{width:19px;height:19px}.ctx .chip small{display:block;font:600 11px var(--ui);letter-spacing:.08em;text-transform:uppercase;color:var(--g500)}
.ctx .chip b{display:block;font:500 15px/1.3 var(--ui);color:var(--g900)}
.ctx .chip.on{opacity:1;transform:none}.ctx .chip.hot{border-color:var(--acc);box-shadow:0 0 0 4px rgba(63,125,102,.12)}
.ctx svg.ln{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.ctx svg.ln path{fill:none;stroke:var(--acc);stroke-width:2;stroke-dasharray:var(--len,600);stroke-dashoffset:var(--len,600);transition:stroke-dashoffset .9s cubic-bezier(.4,0,.2,1);opacity:.85}
.ctx.lines svg.ln path{stroke-dashoffset:0}
.ctx .rt{display:grid;gap:14px;grid-column:3}
.ctx .task,.ctx .res{background:#fff;border:1px solid var(--g200);border-radius:16px;box-shadow:0 12px 32px -12px rgba(16,24,40,.18);opacity:0;transform:translateY(14px);transition:opacity .5s,transform .6s cubic-bezier(.2,.7,.2,1)}
.ctx .task{padding:18px 20px;display:flex;gap:14px;align-items:center}.ctx .task .q{font:500 17px/1.4 var(--ui);color:var(--g900);min-height:24px}
.ctx .task .q::after{content:"";display:inline-block;width:2px;height:18px;background:var(--g900);margin-left:2px;vertical-align:-3px;animation:caret 1s steps(1) infinite}
.ctx .task .go{margin-left:auto;flex:none;width:36px;height:36px;border-radius:50%;background:var(--g900);display:grid;place-items:center;color:#fff}
.ctx .res{padding:20px 22px}.ctx .res .hd{display:flex;align-items:center;gap:10px;font:600 13px var(--ui);color:var(--g500);margin-bottom:12px}
.ctx .res .hd .dot{width:8px;height:8px;border-radius:50%;background:var(--acc)}
.ctx .res p{margin:0;font:400 18px/1.5 var(--ui);color:var(--g900);clip-path:inset(0 100% 0 0);transition:clip-path 1.2s cubic-bezier(.4,0,.2,1)}
.ctx .res .cites{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.ctx .pill{display:inline-flex;align-items:center;gap:8px;font:500 13px var(--ui);color:var(--g700);background:var(--g50);border:1px solid var(--g200);border-radius:999px;padding:6px 12px;opacity:0;transform:scale(.9);transition:opacity .3s,transform .4s cubic-bezier(.2,.7,.2,1)}
.ctx .pill em{font-style:normal;width:18px;height:18px;border-radius:50%;background:var(--g900);color:#fff;font:600 11px var(--ui);display:grid;place-items:center}
.ctx .badge{display:inline-flex;align-items:center;gap:7px;margin-top:16px;font:500 13px var(--ui);color:var(--ok);background:var(--ok50);border:1px solid #abefc6;border-radius:999px;padding:5px 12px;opacity:0;transition:opacity .4s}
.ctx .badge::before{content:"";width:7px;height:7px;border-radius:50%;background:#17b26a}
.ctx.t1 .task{opacity:1;transform:none}.ctx.t2 .res{opacity:1;transform:none}.ctx.t2 .res p{clip-path:inset(0 0 0 0)}
.ctx.t3 .pill{opacity:1;transform:none}.ctx.t3 .pill+.pill{transition-delay:.18s}.ctx.t4 .badge{opacity:1}
.ctx.out .chip,.ctx.out .task,.ctx.out .res{opacity:0;transition-duration:.45s}
@keyframes caret{50%{opacity:0}}
.ctx.small{min-height:0;padding:28px}.ctx.small .cg{grid-template-columns:1fr;min-height:0;gap:18px}.ctx.small svg.ln{display:none}.ctx.small .rt{grid-column:1}

/* product clip */
.clip{margin-top:28px}.clip video{display:block;width:100%;aspect-ratio:16/9;border-radius:18px;background:#e9ebe8;box-shadow:0 30px 70px -40px rgba(20,20,19,.45)}
.clip figcaption{margin-top:12px;color:var(--mute);font-size:14.5px}

/* feature rows */
.sec{padding:120px 0}.sec.alt{background:var(--paper)}
.frow{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:72px;align-items:center}.frow.flip .ftx{order:2}
.ftx .kick{margin-top:18px}
.pts{list-style:none;margin:26px 0 0;padding:0;border-top:1px solid var(--line)}
.pts li{padding:12px 0 12px 30px;border-bottom:1px solid var(--line);position:relative;font-size:16.5px}
.pts li::before{content:"";position:absolute;left:4px;top:19px;width:12px;height:7px;border-left:2px solid var(--acc);border-bottom:2px solid var(--acc);transform:rotate(-45deg)}
.ucard{background:#fff;border:1px solid var(--g200);border-radius:18px;box-shadow:0 24px 60px -36px rgba(16,24,40,.35);overflow:hidden}
.ucard .uh{display:flex;align-items:center;gap:12px;padding:18px 22px;border-bottom:1px solid var(--g200)}
.ucard .uh i{width:40px;height:40px;border-radius:10px;border:1px solid var(--g200);display:grid;place-items:center;color:var(--acc)}.ucard .uh i svg{width:20px;height:20px}
.ucard .uh b{font:600 17px var(--ui);color:var(--g900)}.ucard .uh small{display:block;font:400 14px var(--ui);color:var(--g500)}
.ucard ul{list-style:none;margin:0;padding:12px 16px 16px}
.ucard li{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;font:500 15.5px var(--ui);color:var(--g900);background:var(--g50);border:1px solid var(--g100);margin-top:8px;opacity:0;transform:translateY(10px);transition:opacity .45s,transform .55s cubic-bezier(.2,.7,.2,1)}
.ucard li .ck{margin-left:auto;flex:none;font:500 12.5px var(--ui);color:var(--ok);background:var(--ok50);border:1px solid #abefc6;border-radius:999px;padding:3px 10px;opacity:0;transition:opacity .35s}
.ucard.in li{opacity:1;transform:none}.ucard.in li .ck{opacity:1}
.ucard .uf{display:flex;justify-content:space-between;align-items:center;padding:14px 22px;border-top:1px solid var(--g200);font:500 13.5px var(--ui);color:var(--g500)}
.ucard .uf b{color:var(--g900);font-weight:600}

/* steps, FAQ, plans */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin-top:56px;counter-reset:st}
.steps div{border-top:1px solid var(--ink);padding-top:20px;counter-increment:st}
.steps div::before{content:"0" counter(st);display:block;font:600 13px var(--sans);letter-spacing:.12em;color:var(--acc);margin-bottom:12px}
.steps h3{font:600 19px var(--sans);margin:0 0 8px}.steps p{margin:0;color:var(--ink2);font-size:16px}
.faq{margin-top:48px;border-top:1px solid var(--line);max-width:58rem}
.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font:400 21px/1.3 var(--serif);list-style:none}
.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";float:right;font-family:var(--sans);color:var(--mute)}.faq details[open] summary::after{content:"\2212"}
.faq p{margin:12px 0 0;color:var(--ink2);max-width:48rem}
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:56px}
.plan{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px}.plan.hi{border-color:var(--acc);box-shadow:0 0 0 4px rgba(63,125,102,.1)}
.plan small{display:block;font:600 13px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--acc)}.plan h3{font:400 30px/1.15 var(--serif);margin:12px 0}
.plan p{color:var(--ink2);margin:0 0 16px}

/* closing call to action */
.cta{position:relative;overflow:hidden;background:#0d1210;color:#fff;min-height:560px;display:flex;align-items:center}
.cta video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.cta::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,12,10,.86),rgba(8,12,10,.25))}
.cta .w{position:relative;z-index:2}.cta .h2{color:#fff;max-width:16ch}.cta p{color:rgba(255,255,255,.82);max-width:34rem;margin:16px 0 0;font-size:18px}
.cta .tl{color:#fff}

/* footer */
footer{padding:96px 0 48px;border-top:1px solid var(--line)}
footer .top{display:grid;grid-template-columns:320px repeat(4,minmax(0,1fr));gap:40px}
footer h4{font:600 13px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--mute);margin:0 0 14px}
footer a{display:block;text-decoration:none;font-size:15px;padding:4px 0}footer .tag{color:var(--mute);margin-top:16px;max-width:18rem}
.legal{margin-top:72px;padding-top:24px;border-top:1px solid var(--line);font-size:13.5px;color:var(--mute);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.mbar{display:none}

/* blog */
.bhero{padding:96px 0 40px}.bfeat{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px;align-items:stretch;margin-top:48px;text-decoration:none}
.bfeat .ctx{min-height:360px}.bfeat .bt{display:flex;flex-direction:column;justify-content:center}
.bcat{font:600 12.5px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--acc)}
.bfeat h2{font:400 clamp(1.9rem,3vw,2.7rem)/1.1 var(--serif);margin:12px 0}.bfeat p{color:var(--ink2);margin:0}
.bfilters{display:flex;gap:10px;flex-wrap:wrap;margin-top:56px}
.bfilters button{all:unset;cursor:pointer;font:600 14px var(--sans);padding:8px 16px;border:1px solid var(--line);border-radius:999px}.bfilters button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.bgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px;margin-top:36px}
.bcard{text-decoration:none;display:block}.bcard .bth{aspect-ratio:16/10;border-radius:14px;background:linear-gradient(150deg,#eef2ef,#dbe5df);position:relative;overflow:hidden;margin-bottom:16px}
.bcard .bth span{position:absolute;left:18px;right:18px;bottom:16px;font:400 21px/1.2 var(--serif);color:var(--g900)}
.bcard .bth i{position:absolute;top:16px;left:18px;font:600 11px var(--ui);letter-spacing:.1em;text-transform:uppercase;color:var(--acc);background:#fff;border-radius:999px;padding:4px 10px}
.bcard .bth svg{position:absolute;right:-30px;top:-30px;width:180px;height:180px;opacity:.5}
.bcard h3{font:400 21px/1.25 var(--serif);margin:6px 0 8px}.bcard p{margin:0;color:var(--ink2);font-size:15.5px}.bcard .bd{font-size:13.5px;color:var(--mute);margin-top:10px}
.art{padding:80px 0 40px}.art .ahd{max-width:820px}.art .ahd .h1{font-size:clamp(2.2rem,4.2vw,3.6rem);max-width:none}
.art .meta{margin-top:20px;color:var(--mute);font-size:15px}
.agrid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:72px;margin-top:56px;align-items:start}
.prose{font:18.5px/1.7 var(--sans);color:#262624;max-width:720px}
.prose h2{font:400 30px/1.2 var(--serif);margin:48px 0 14px;color:var(--ink)}.prose h3{font:600 21px/1.3 var(--sans);margin:34px 0 10px}
.prose p{margin:0 0 20px}.prose ul,.prose ol{padding-left:22px;margin:0 0 22px}.prose li{margin:6px 0}
.prose blockquote{margin:28px 0;padding:4px 0 4px 22px;border-left:3px solid var(--acc);font:400 22px/1.45 var(--serif);color:var(--ink)}
.prose a{color:var(--acc);text-underline-offset:3px}.prose img{border-radius:12px;margin:12px 0}.prose table{width:100%;border-collapse:collapse;margin:20px 0;font-size:16px}
.prose th,.prose td{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left}
.aside{position:sticky;top:96px;display:grid;gap:18px}
.aside .acard{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}.aside .acard h4{font:400 22px/1.25 var(--serif);margin:0 0 10px}.aside .acard p{margin:0 0 16px;color:var(--ink2);font-size:15.5px}
.related{margin-top:96px;padding-top:56px;border-top:1px solid var(--line)}

/* sign in */
.auth{min-height:100vh;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr)}
.auth .af{display:flex;flex-direction:column;justify-content:space-between;padding:40px max(28px,5vw)}
.auth .ap{background:linear-gradient(160deg,#eef2ef,#d9e3dd);display:flex;align-items:center;padding:56px}
.auth .ap .ctx{background:transparent;padding:0;width:100%}.auth .ap .ctx::before{display:none}

@media (max-width:980px){
  .nav{grid-template-columns:auto 1fr;padding:14px 20px}.nav .l{display:none}.nav .r{gap:12px}.nav .r .lgn{display:none}
  .mnu{display:inline-block;border:1px solid var(--ink);color:var(--ink);background:transparent;padding:.5rem .8rem;font:600 14px var(--sans);border-radius:2px}
  body.menu-open{overflow:hidden}
  body.menu-open .nav .l{display:flex;position:fixed;inset:0;z-index:60;flex-direction:column;gap:0;background:#0f1512;color:#fff;padding:96px 24px 24px;font:400 26px/1.2 var(--serif)}
  body.menu-open .nav .l a{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.14);opacity:1}
  body.menu-open .mclose{display:block;position:absolute;top:22px;right:24px;border:1px solid #fff;color:#fff;background:transparent;padding:.6rem 1rem;font:600 15px var(--sans);border-radius:2px}
  .phero{padding:64px 0 36px}.phero .hgrid,.frow,.bfeat,.agrid,.auth{grid-template-columns:1fr;gap:32px}.frow.flip .ftx{order:0}
  .sec{padding:80px 0}.ctx .demo{position:static;display:block;margin-bottom:14px}.ctx{padding:22px;min-height:0;border-radius:16px}.ctx .cg{grid-template-columns:1fr;min-height:0;gap:18px}.ctx svg.ln{display:none}.ctx .rt{grid-column:1}
  .ctx .chips{grid-template-columns:1fr 1fr;gap:10px}.ctx .chip{padding:10px 12px;gap:10px}.ctx .chip i{width:30px;height:30px}.ctx .chip b{font-size:13.5px}
  .ctx .task .q{font-size:15px}.ctx .res p{font-size:15.5px}
  .bgrid{grid-template-columns:1fr}.aside{position:static}footer .top{grid-template-columns:1fr 1fr}
  .auth .ap{padding:28px 20px}.lnk,.tl{display:inline-block;padding:11px 0}footer a{padding:7px 0}
  .mbar{display:block;position:fixed;left:12px;right:12px;bottom:12px;z-index:30;text-align:center;background:var(--ink);color:#fff;text-decoration:none;font:600 16px var(--sans);padding:14px;border-radius:2px;opacity:0;transform:translateY(20px);transition:opacity .4s,transform .4s}
  .scrolled .mbar{opacity:1;transform:none}.scrolled.nobar .mbar{opacity:0;transform:translateY(20px)}
}
@media (max-width:560px){footer .top{grid-template-columns:1fr}.ctx .chips{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}.ctx .chip,.ctx .task,.ctx .res,.ctx .pill,.ctx .badge,.ucard li,.ucard li .ck{opacity:1;transform:none;transition:none}.ctx .res p{clip-path:none}.ctx svg.ln path{stroke-dashoffset:0}}

/* sign in and sign up: the form block of the original page, restyled */
.auth .af .brand img{height:30px;display:block}.auth .af .top{display:flex;justify-content:space-between;align-items:center;gap:16px}
.auth .af .top p{margin:0;font-size:15px;color:var(--ink2)}.auth .af .top a{font-weight:600;text-underline-offset:3px}
.form-shell{width:100%;max-width:440px;margin:48px auto}
.form-eyebrow-mono{font:600 13px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--acc);margin:0 0 14px}
.form-headline{font:400 clamp(2.1rem,3.4vw,2.9rem)/1.08 var(--serif);letter-spacing:-.02em;margin:0}.form-headline em{font-style:normal}
.form-subhead{color:var(--ink2);margin:14px 0 28px}
.sso-stack{display:grid;gap:10px}.sso{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--g300);border-radius:8px;padding:12px 16px;background:#fff;text-decoration:none;font:600 15.5px var(--sans);color:var(--ink);transition:border-color .2s,box-shadow .2s}
.sso:hover{border-color:var(--ink);box-shadow:0 1px 2px rgba(16,24,40,.08)}.sso svg{width:18px;height:18px}
.divider{display:flex;align-items:center;gap:14px;margin:24px 0;color:var(--mute);font-size:14px}.divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--line)}
.signup-form{display:grid;gap:14px}.form-field{display:grid;gap:6px;font:600 14px var(--sans)}
.form-field input{font:16px var(--sans);padding:12px 14px;border:1px solid var(--g300);border-radius:8px;background:#fff;color:var(--ink)}
.form-field input:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 4px rgba(63,125,102,.15)}
.btn-primary{font:600 15.5px var(--sans);padding:13px 18px;border-radius:8px;border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer}.btn-primary:disabled{opacity:.6;cursor:default}
.form-error{display:none;margin:0;color:#b42318;font-size:14.5px}.form-error.visible{display:block}
.form-success{display:none;border:1px solid #abefc6;background:var(--ok50);border-radius:12px;padding:22px}.form-success.visible{display:block}
.form-success svg{width:28px;height:28px;color:var(--ok)}.form-success h3{font:400 24px var(--serif);margin:8px 0}.form-success p{margin:6px 0;color:var(--ink2)}.form-success .muted{font-size:14px;color:var(--mute)}
.form-fine{margin-top:26px;font-size:13.5px;color:var(--mute)}.form-fine a{color:var(--ink)}
.auth .ap .aph{font:400 clamp(1.7rem,2.4vw,2.3rem)/1.15 var(--serif);margin:0 0 28px;max-width:20ch}
.auth .af .bot{font-size:13px;color:var(--mute)}

/* demo and contact forms carried over from the current pages */
#form form{display:grid;gap:16px}#form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
#form .form-group,#form .form-field{display:grid;gap:6px;margin:0!important}
#form label{font:600 14px var(--sans);color:var(--ink)}
#form input,#form select,#form textarea{font:16px var(--sans);padding:12px 14px;border:1px solid var(--g300);border-radius:8px;background:#fff;color:var(--ink);width:100%}
#form textarea{min-height:130px;resize:vertical}
#form input:focus,#form select:focus,#form textarea:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 4px rgba(63,125,102,.15)}
#form button[type=submit],#form .btn-primary{font:600 15.5px var(--sans);padding:13px 20px;border-radius:8px;border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;justify-self:start}
#form .form-actions{display:flex;gap:16px;align-items:center}#form .form-status{color:var(--ink2);font-size:14.5px}
#form p{color:var(--mute);font-size:14px}
@media (max-width:560px){#form .form-row{grid-template-columns:1fr}}

/* v2 sections: a short headline and a one-line subhead, then three tiles (the Harvey, Legora and Clio pattern) */
.ftx .sub{color:var(--ink2);font-size:19px;line-height:1.45;margin:16px 0 0;max-width:34rem}
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:56px}
.tile{border-top:1px solid var(--line);padding-top:22px}
.tile i{width:40px;height:40px;border-radius:10px;border:1px solid var(--g200);background:#fff;display:grid;place-items:center;color:var(--acc)}.tile i svg{width:20px;height:20px}
.tile h3{font:600 18px/1.3 var(--sans);margin:16px 0 6px}.tile p{margin:0;color:var(--ink2);font-size:16px;line-height:1.5}
@media (max-width:980px){.tiles{grid-template-columns:1fr;gap:18px;margin-top:32px}.tile{display:grid;grid-template-columns:40px 1fr;gap:0 14px;align-items:start}.tile i{grid-row:span 2}.tile h3{margin:0 0 4px}}

.shd{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:24px 64px;align-items:end}.shd .sub{margin:0}
@media (max-width:980px){.shd{grid-template-columns:1fr}}

/* university: the course content keeps university.css; these are the helpers it took from the old shell */
.uni .container{width:min(1100px,100% - 48px);margin-inline:auto}
.uni .section-label{font:600 13px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--acc);margin:0 0 12px}
.uni h1{font:400 clamp(2.2rem,4vw,3.4rem)/1.08 var(--serif);letter-spacing:-.02em}.uni h2{font:400 clamp(1.7rem,2.6vw,2.3rem)/1.15 var(--serif)}
.uni section{padding:56px 0}.uni video{max-width:100%;border-radius:14px}

.clip.c43{max-width:960px;margin-left:auto;margin-right:auto}.clip.c43 video{aspect-ratio:4/3}

/* v3 interior pages, 3 November 2026: hero clip, proof band, feature films, worked example, table, essay, security band, related cards */
.p3{padding-bottom:40px}.p3 .h1{max-width:14ch}
.clip3{margin:0}.clip3 video{display:block;width:100%;aspect-ratio:16/9;border-radius:18px;background:#e9ebe8;box-shadow:0 34px 80px -44px rgba(20,20,19,.5)}
.clip3.hero{margin-top:64px}
.proof3{padding:44px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.proof3 .w{display:grid;grid-template-columns:auto minmax(0,1fr);gap:28px 56px;align-items:center}.proof3 .w>*{min-width:0}
.proof3 .pn b{display:block;font:400 54px/1 var(--serif);letter-spacing:-.02em}.proof3 .pn span{display:block;margin-top:6px;color:var(--mute);font-size:15px}
.proof3 p{margin:0;color:var(--ink2);font-size:17.5px;max-width:36rem}
.logos3{grid-column:1/-1;display:flex;align-items:center;gap:36px;padding-top:28px;border-top:1px solid var(--line)}.logos3 small{flex:none;font:600 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.mq{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}.mqt{display:flex;width:max-content;animation:mq 36s linear infinite}.mqs{display:flex;align-items:center;gap:104px;padding-right:104px}@keyframes mq{to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.mqt{animation:none}}.logos3 .mq{flex:1;min-width:0}.logos3 .mq img{display:block;width:auto;opacity:.72}.logos3 .mq img.ff{height:50px;opacity:1}.logos3 .mq img.op{height:36px}.logos3 .mq img.cl{height:24px}
.f3 .ftxt{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:20px 64px;align-items:end;margin-bottom:48px}
.f3 .fnum{grid-column:1/-1;margin:0;font:600 13px var(--sans);letter-spacing:.12em;color:var(--mute)}.f3 .h2{margin:0}.f3 .kick{margin:0}
.f3 .ftiles{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 28px;list-style:none;margin:8px 0 0;padding:0}
.f3 .ftiles li{padding:16px 0 0 28px;border-top:1px solid var(--line);position:relative}
.f3 .ftiles li::before{content:"";position:absolute;left:4px;top:22px;width:12px;height:7px;border-left:2px solid var(--acc);border-bottom:2px solid var(--acc);transform:rotate(-45deg)}
.f3 .ftiles li b{display:block;font:600 16.5px var(--sans);margin-bottom:5px}.f3 .ftiles li span{display:block;color:var(--ink2);font-size:15.5px;line-height:1.5}
.ex3 .steps{margin-top:40px}
.tbl3{margin-top:48px;overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:16px}
.tbl3 table{width:100%;border-collapse:collapse;font-size:15.5px;min-width:720px}
.tbl3 th{text-align:left;font:600 13px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--mute);padding:18px 22px;border-bottom:1px solid var(--line);background:var(--g50)}
.tbl3 td{padding:16px 22px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink2)}.tbl3 tr:last-child td{border-bottom:0}
.tbl3 td:first-child{font-weight:600;color:var(--ink);width:22%}
.es3 .eg{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:72px;align-items:start}.es3 .eg>div:first-child{position:sticky;top:110px}
.es3 .prose{max-width:none}.es3 .prose p{font-size:18.5px}
.sec3{background:#0f1512;color:#e9eee9}.sec3 .eyebrow{color:var(--sagel)}.sec3 .h2{color:#fff}.sec3 .sub{color:rgba(233,238,233,.78)}
.sec3 .g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 28px;margin-top:56px}
.sec3 .g div{border-top:1px solid rgba(255,255,255,.3);padding-top:18px}.sec3 h3{font:600 17px var(--sans);margin:0 0 8px;color:#fff}.sec3 .g p{margin:0;font-size:15.5px;color:rgba(233,238,233,.75)}
.sec3 .lnk{color:#fff}
.rgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:48px}
.rcard{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:box-shadow .3s,transform .3s}
.rcard:hover{box-shadow:0 24px 50px -30px rgba(20,20,19,.35);transform:translateY(-2px)}
.rcard .ri{aspect-ratio:16/9;background:#e9ebe8;overflow:hidden}.rcard .ri img{width:100%;height:100%;object-fit:cover;display:block}
.rcard h3{font:400 22px/1.25 var(--serif);margin:20px 22px 8px}.rcard p{margin:0 22px;color:var(--ink2);font-size:15.5px}.rcard .lnk{display:inline-block;margin:16px 22px 22px;font-size:15px}
@media (max-width:980px){
  .clip3.hero{margin-top:36px}.clip3.k-pg video{aspect-ratio:1520/1080}.clip3.k-cap video{aspect-ratio:1/1}.clip3.k-43 video{aspect-ratio:4/3}
  .proof3 .w{grid-template-columns:1fr;gap:20px}.logos3{flex-direction:column;align-items:stretch;gap:16px}.logos3 .mqs{gap:64px;padding-right:64px}
  .f3 .ftxt{grid-template-columns:1fr;margin-bottom:28px}.f3 .ftiles{grid-template-columns:1fr}
  .es3 .eg{grid-template-columns:1fr;gap:28px}.es3 .eg>div:first-child{position:static}
  .sec3 .g{grid-template-columns:1fr 1fr;row-gap:28px}.rgrid{grid-template-columns:1fr}
}
@media (max-width:560px){.sec3 .g{grid-template-columns:1fr}.proof3 .pn b{font-size:44px}}
/* feature headline: the capability is the headline (Stephen, 11-03) */
.f3 .fnum span{display:inline-flex;align-items:center;gap:14px;font:600 13px var(--sans);letter-spacing:.16em;color:var(--acc)}.f3 .fnum span::after{content:"";width:56px;height:1px;background:var(--acc)}
.f3 .h2.fcap{font-size:clamp(2.8rem,5vw,4.6rem);line-height:1.02;letter-spacing:-.025em}
.f3 .fside .fsub{font:400 clamp(1.35rem,2vw,1.75rem)/1.25 var(--serif);color:var(--ink);margin:0 0 14px}.f3 .fside .kick{margin:0}
/* security: dark hero, protection grid, compliance cards (from the production security page, 11-03) */
.p3.dark{background:#0f1512;color:#eef2ee}.p3.dark .h1{color:#fff}.p3.dark .kick{color:rgba(238,242,238,.8)}.p3.dark .eyebrow{color:var(--sagel)}.p3.dark .note{color:rgba(238,242,238,.6)}
.p3.dark .btn{background:#fff;color:var(--ink);border-color:#fff}.p3.dark .tl{color:#fff}.p3.dark .clip3 video{box-shadow:0 40px 90px -40px rgba(0,0,0,.8)}
.grid3 .gg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:56px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.grid3 .gc{padding:34px 30px 36px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.grid3 .gc i{width:44px;height:44px;border-radius:11px;border:1px solid var(--g200);display:grid;place-items:center;color:var(--acc)}.grid3 .gc i svg{width:22px;height:22px}
.grid3 .gc h3{font:400 24px/1.2 var(--serif);margin:22px 0 10px}.grid3 .gc p{margin:0;color:var(--ink2);font-size:15.5px;line-height:1.55}
.badges3{background:#0f1512;color:#eef2ee}.badges3 .h2{color:#fff}.badges3 .sub{color:rgba(238,242,238,.78)}.badges3 .eyebrow{color:var(--sagel)}.badges3 .lnk{color:#fff}
.badges3 .bg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:56px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14)}
.badges3 .bc{background:#0f1512;padding:34px 28px;text-align:center}
.badges3 .bc i{width:56px;height:56px;margin:0 auto;border-radius:14px;border:1px solid rgba(255,255,255,.28);display:grid;place-items:center;color:var(--sagel)}.badges3 .bc i svg{width:26px;height:26px}
.badges3 .bc h3{font:400 24px/1.2 var(--serif);color:#fff;margin:20px 0 6px}.badges3 .bc b{display:block;font:600 13px var(--sans);letter-spacing:.06em;color:var(--sagel);margin-bottom:12px}
.badges3 .bc p{margin:0;font-size:14.5px;color:rgba(238,242,238,.72)}
/* customers: the wall, the workflow stories */
.wall3 .wn{display:grid;grid-template-columns:1fr 1fr;gap:56px;border-bottom:1px solid var(--line);padding-bottom:48px}
.wall3 .wn b{display:block;font:400 clamp(4rem,8vw,7rem)/1 var(--serif);letter-spacing:-.03em}.wall3 .wn span{display:block;margin-top:10px;color:var(--ink2);font-size:18px}
.wall3 .ctry{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.wall3 .ctry span{margin:0;font:500 13px var(--ui);color:var(--g700);background:#fff;border:1px solid var(--g200);border-radius:999px;padding:6px 12px}
.wall3 .wl{display:flex;align-items:center;justify-content:space-around;gap:48px;flex-wrap:wrap;padding:56px 0}.wall3 .wl img{height:44px;opacity:.9}.wall3 .wl img.ff{height:92px;opacity:1}.wall3 .wl img.cl{height:32px}
.wall3 .wp{max-width:46rem;margin:0 auto;text-align:center;color:var(--ink2);font-size:18px}
.stories3 .sg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:56px}
.stories3 .sc{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.stories3 .sc .clip3 video{border-radius:0;box-shadow:none}
.stories3 .sb{padding:28px 30px 32px}.stories3 .tag{font:600 12px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--acc)}
.stories3 h3{font:400 28px/1.2 var(--serif);margin:12px 0 10px}.stories3 .sb p{margin:0;color:var(--ink2);font-size:16px}
.stories3 ul{list-style:none;margin:18px 0 0;padding:0;border-top:1px solid var(--line)}.stories3 li{padding:10px 0 10px 26px;border-bottom:1px solid var(--line);position:relative;font-size:15.5px}
.stories3 li::before{content:"";position:absolute;left:3px;top:17px;width:11px;height:6px;border-left:2px solid var(--acc);border-bottom:2px solid var(--acc);transform:rotate(-45deg)}
.stories3 .lnk{display:inline-block;margin-top:18px;font-size:15px}
@media (max-width:980px){.grid3 .gg{grid-template-columns:1fr}.badges3 .bg{grid-template-columns:1fr 1fr}.stories3 .sg{grid-template-columns:1fr}.wall3 .wn{grid-template-columns:1fr;gap:28px}.wall3 .wl{justify-content:flex-start}}
@media (max-width:560px){.badges3 .bg{grid-template-columns:1fr}}

.bpager{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:28px;margin:40px 0 0;font-size:15px}.bpager span{display:flex;gap:6px}.bpager a{text-decoration:none;color:var(--ink2);padding:8px 12px;border-radius:8px}.bpager a.on{background:var(--ink);color:#fff}.bpager a:hover{background:#eceee9}.bpager a.on:hover{background:var(--ink)}
/* nav v2 */
.nav.n2{padding:16px 28px}
.nav.n2 .l{display:flex;gap:26px;align-items:center}.nav.n2 .r{gap:24px}
.nav.n2 .r .btn{display:inline-flex;align-items:center;gap:12px;border-radius:999px;padding:7px 7px 7px 18px;font-size:15px;line-height:1}
.nav.n2 .r .btn .ar{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#0d1210;color:#fff;font-size:14px}
.nav.n2 .r .btn:not(.lt) .ar{background:#fff;color:#0d1210}
.nav.n2 .ctr img{height:30px!important}
.nav.n2 .dd{display:flex}.nav.n2 .dd.sm{position:relative}
.nav.n2 .mb{background:none;border:0;color:inherit;font:inherit;opacity:.92;cursor:pointer;padding:0;display:flex;align-items:center;gap:7px}
.nav.n2 .mb::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s}
.nav.n2 .dd.open .mb::after{transform:translateY(1px) rotate(225deg)}
.nav.n2 .md{position:absolute;z-index:70;display:none;background:#fff;color:#1c1f1d;border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.2);border:1px solid rgba(0,0,0,.06)}
.nav.n2 .dd.open .md{display:grid;animation:ddin .18s ease-out}
@keyframes ddin{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.nav.n2 .mega{left:28px;right:28px;top:calc(100% - 4px);padding:30px 34px 32px;gap:12px 40px;grid-template-columns:repeat(var(--cols),minmax(0,1fr))}
.nav.n2 .mega h6{margin:0 0 6px;font:600 12px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#7b817d}
.nav.n2 .mega .col{display:flex;flex-direction:column;gap:2px}
.nav.n2 .mega a{display:block;padding:9px 10px;margin:0 -10px;border-radius:9px;color:#1c1f1d;text-decoration:none;opacity:1;font-size:15.5px;font-weight:600;text-align:left}
.nav.n2 .mega a span{display:block;font-weight:400;font-size:13.5px;color:#6b716d;margin-top:2px}
.nav.n2 .mega a:hover,.nav.n2 .sml a:hover{background:#f2f3f1}
.nav.n2 .sml{left:-14px;top:calc(100% + 14px);min-width:200px;padding:8px;grid-auto-rows:auto}
.nav.n2 .sml a{display:block;color:#1c1f1d;padding:10px 12px;border-radius:8px;opacity:1;text-decoration:none;font-size:15px;text-align:left}
.nav.n2 .sml .fold,.nav.n2 .l .ov{display:none}
.nav.n2 a:focus-visible,.nav.n2 button:focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:4px}
@media (max-width:1239px){.nav.n2 .l .in-c{display:none}.nav.n2 .sml .fold{display:block}}
@media (max-width:560px){.nav.n2 .r .btn{display:none}}
body.menu-open .nav{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
@media (max-width:980px){.nav.n2{padding:14px 18px}.nav.n2 .ctr{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.nav.n2 .r{margin-left:auto}
  .nav.n2 .l{display:none}
  body.menu-open .nav.n2 .l{display:flex;overflow-y:auto;align-items:stretch;text-align:left;font:400 24px/1.2 var(--serif)}
  body.menu-open .nav.n2 .l .in-c,body.menu-open .nav.n2 .l .ov{display:block}
  body.menu-open .nav.n2 .dd{display:block}body.menu-open .nav.n2 .mb{display:block;width:100%;text-align:left;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.14);font:inherit;color:#fff;opacity:1}
  body.menu-open .nav.n2 .mb::after{display:inline-block;margin-left:10px}
  body.menu-open .nav.n2 .md{position:static;box-shadow:none;border:0;border-radius:0;background:none;padding:6px 0 14px;color:#fff;grid-template-columns:1fr}
  body.menu-open .nav.n2 .mega h6{color:rgba(255,255,255,.5);margin-top:10px}
  body.menu-open .nav.n2 .md a{color:#fff;font:400 17px/1.3 var(--sans);padding:8px 0;margin:0;border:0;background:none}
  body.menu-open .nav.n2 .md a span{display:none}
  body.menu-open .nav.n2 .sml .fold{display:none!important}}
