/* F51 Labs — folha partilhada das páginas novas.
   Tokens copiados do index.html original (não inventados): a marca não muda. */
:root{
  --paper:#E8EAE5; --paper-2:#DEE1DA; --paper-3:#D3D7CE;
  --iron:#101315; --iron-2:#181C1F; --iron-3:#22272B;
  --ink:#0D1011; --ink-2:#4C544F; --ink-3:#79827D;
  --rule:#C7CBC2; --rule-d:#2A3034;
  --accent:#1B39FF; --accent-lt:#93A4FF;
  --pass:#2C6B39; --pass-lt:#7FCB93;
  --hold:#A2551A; --hold-lt:#E0A26A;
  --fail:#96201F; --fail-lt:#E58F8F;
  --f-d:'Newsreader',Lora,Georgia,serif;
  --f-b:'Archivo','Liberation Sans',Helvetica,sans-serif;
  --f-m:'IBM Plex Mono','DejaVu Sans Mono',monospace;
  --mw:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--iron);color:var(--paper);
  font-family:var(--f-b);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent-lt);text-decoration:none}
a:hover{color:#fff}
h1,h2,h3{font-family:var(--f-d);font-weight:400;letter-spacing:-.01em;margin:0}
h1{font-size:clamp(38px,6vw,76px);line-height:1.02}
h2{font-size:clamp(26px,3.4vw,40px);line-height:1.1;margin-bottom:14px}
h3{font-size:22px;line-height:1.2}
p{margin:0 0 1em}
.mono{font-family:var(--f-m);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.small{font-size:14.5px;color:#B9C0BA}
.wrap{max-width:var(--mw);margin:0 auto;padding:0 30px}
.band{padding:84px 0;border-top:1px solid var(--rule-d);overflow-wrap:anywhere}
.band--paper{background:var(--paper);color:var(--ink);border-top-color:var(--rule)}
.band--paper .small,.band--paper .mono{color:var(--ink-2)}
.eye{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.eye b{font-family:var(--f-m);font-weight:400;color:var(--accent-lt)}
.band--paper .eye b{color:var(--accent)}
.eye i{flex:1;height:1px;background:var(--rule-d)}
.band--paper .eye i{background:var(--rule)}
.lede{font-family:var(--f-d);font-size:clamp(19px,2.2vw,25px);line-height:1.45;color:#D7DCD6;max-width:60ch}
.band--paper .lede{color:var(--ink)}

/* nav */
.nav{position:sticky;top:0;z-index:40;background:rgba(16,19,21,.92);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--rule-d)}
.nav-in{max-width:var(--mw);margin:0 auto;padding:0 30px;height:58px;display:flex;align-items:center;gap:26px}
.brand{font-family:var(--f-m);font-size:15px;letter-spacing:.12em;color:var(--paper);white-space:nowrap}
.brand em{font-style:normal;color:var(--ink-3)}
.navlinks{display:flex;gap:20px;margin-left:auto;font-family:var(--f-m);font-size:12.5px;
  letter-spacing:.08em;text-transform:uppercase}
.navlinks a{color:#98A29D;padding:3px 0;border-bottom:1px solid transparent}
.navlinks a:hover,.navlinks a[aria-current]{color:#fff;border-bottom-color:var(--accent-lt)}
.navside{display:flex;align-items:center;gap:16px;font-family:var(--f-m);font-size:12.5px}
.mobile-menu{display:none}
.mobile-menu summary{list-style:none;cursor:pointer;border:1px solid var(--rule-d);padding:8px 13px;color:var(--paper);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu summary::after{content:' + ';color:var(--accent-lt)}
.mobile-menu[open] summary::after{content:' −'}
.mobile-menu nav{position:absolute;top:58px;left:0;right:0;padding:14px 20px 20px;background:var(--iron);border-bottom:1px solid var(--rule-d);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;box-shadow:0 20px 30px #0007}
.mobile-menu nav a{color:var(--paper);padding:10px 8px;border-bottom:1px solid var(--rule-d);font-size:12px;text-transform:uppercase}
.mobile-menu nav a[aria-current]{color:var(--accent-lt)}

/* botões */
.btn{display:inline-block;font-family:var(--f-m);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;
  padding:12px 20px;border:1px solid var(--paper);color:var(--paper);background:none;cursor:pointer}
.btn:hover{background:var(--paper);color:var(--ink)}
.btn--accent{border-color:var(--accent-lt);color:var(--accent-lt)}
.btn--accent:hover{background:var(--accent-lt);color:var(--ink)}
.btn--sm{padding:8px 14px;font-size:11.5px}

/* etiquetas de estado — texto sempre presente, a cor nunca é a única informação */
.st{display:inline-flex;align-items:center;gap:7px;font-family:var(--f-m);font-size:11.5px;
  letter-spacing:.1em;text-transform:uppercase;color:#B9C0BA}
.st::before{content:'●';font-size:9px;line-height:1}
.st--released::before,.st--proven::before{color:var(--pass-lt)}
.st--pilot::before,.st--instrumented::before{color:var(--hold-lt)}
.st--failed::before{color:var(--fail-lt)}
.st--pending::before,.st--restarted::before,.st--active::before,.st--archived::before{color:var(--ink-3)}
.st--experiment::before{color:var(--accent-lt)}

/* grelhas */
.grid{display:grid;gap:1px;background:var(--rule-d);border:1px solid var(--rule-d)}
.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.cell{background:var(--iron);padding:26px;min-width:0;overflow-wrap:anywhere}
.work-shot{display:block;margin:18px 0 20px;color:inherit}
.work-shot img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--rule-d);background:var(--iron-2)}
.work-shot .mono{display:block;margin-top:8px;font-size:10px}
.work-grid{grid-auto-flow:row}
.work-grid--single{grid-template-columns:minmax(0,1fr)}
.work-grid--single .cell:not([hidden]){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  grid-template-areas:"meta visual" "status visual" "title visual" "summary visual" "fact visual" "evidence visual";
  column-gap:42px;align-content:start}
.work-grid--single .work-meta{grid-area:meta}
.work-grid--single .work-status{grid-area:status}
.work-grid--single .work-title{grid-area:title}
.work-grid--single .work-shot{grid-area:visual;margin:0;align-self:start}
.work-grid--single .work-summary{grid-area:summary}
.work-grid--single .work-fact{grid-area:fact}
.work-grid--single .work-evidence{grid-area:evidence}
.band--paper .grid{background:var(--rule);border-color:var(--rule)}
.band--paper .cell{background:var(--paper)}

/* cartão de projecto */
.pc{display:block;background:var(--iron);color:inherit;border:1px solid var(--rule-d)}
.pc:hover{border-color:var(--ink-3)}
.pc figure{margin:0;aspect-ratio:16/9;overflow:hidden;background:#000}
.pc figure img{width:100%;height:100%;object-fit:cover}
.pc .body{padding:20px 22px 24px}
.pc h3{margin-bottom:6px}
.pc .meta{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
.pc p{margin:8px 0 14px;color:#B9C0BA;font-size:15px}
.pc--tall figure{aspect-ratio:4/5}
.pc--wide{grid-column:span 2}
.pc--wide figure{aspect-ratio:21/9}

/* arquivo + filtros */
.filters{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0 22px}
.filters button{font-family:var(--f-m);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
  background:none;border:1px solid var(--rule-d);color:#98A29D;padding:8px 14px;cursor:pointer}
.filters button[aria-pressed=true]{border-color:var(--accent-lt);color:var(--paper)}

/* livro */
.book{display:grid;grid-template-columns:190px 1fr;gap:28px;align-items:start}
.book img{border:1px solid var(--rule-d)}
.book .fmts{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}

/* investigação — quase papel */
.paper{max-width:74ch;overflow-wrap:anywhere}
.paper h3{font-family:var(--f-m);font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--ink-3);margin:30px 0 8px}
.paper .kv{display:grid;grid-template-columns:150px 1fr;gap:6px 18px;font-size:15px;margin:0 0 26px}
.paper .kv dt{font-family:var(--f-m);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.paper .kv dd{margin:0;min-width:0;overflow-wrap:anywhere}

/* rodapé */
footer{border-top:1px solid var(--rule-d);padding:56px 0 70px;font-size:14px}
footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:34px}
footer h4{font-family:var(--f-m);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--ink-3);margin:0 0 12px}
footer ul{list-style:none;margin:0;padding:0}
footer li{margin-bottom:8px}
footer a{color:#B9C0BA}
footer a:hover{color:#fff}
.taglist{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.taglist span{font-family:var(--f-m);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  border:1px solid var(--rule-d);color:#98A29D;padding:4px 9px}

/* Home: tipografia editorial e uma ilustracao honesta do produto em piloto. */
.home-hero{position:relative;isolation:isolate;min-height:700px;display:flex;align-items:center;
  padding:84px 0 98px;overflow:hidden;background:
  radial-gradient(ellipse at 83% 43%,#252e6c 0%,#171d33 31%,var(--iron) 69%)}
.home-hero::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.4;
  background:linear-gradient(90deg,transparent 98%,#aab6ff18 98%),
             linear-gradient(0deg,transparent 98%,#aab6ff18 98%);background-size:54px 54px;
  mask-image:linear-gradient(90deg,transparent 6%,#000 100%)}
.home-hero::after{content:'';position:absolute;right:-11vw;top:-26vw;width:52vw;height:52vw;
  border:1px solid #91a0ff22;border-radius:50%;box-shadow:0 0 0 8vw #8e9fff08,0 0 0 16vw #8e9fff05;
  pointer-events:none}
.home-hero .wrap{width:100%;position:relative;z-index:1}
.home-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(370px,.92fr);
  align-items:center;gap:clamp(45px,5vw,76px)}
.home-hero-copy{min-width:0}
.home-kicker{font-family:var(--f-m);font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:#B5C0FF;margin:0 0 22px}
.band--paper .home-kicker{color:var(--accent)}
.home-hero h1{font-size:clamp(58px,5.7vw,92px);line-height:.95;letter-spacing:-.063em;max-width:13ch}
.home-hero h1 em{font-weight:300;color:#B3BEFF}
.home-intro{font-size:clamp(18px,1.48vw,21px);line-height:1.55;max-width:52ch;color:#D5DBDA;margin:32px 0 0}
.home-actions{display:flex;flex-wrap:wrap;gap:11px;margin:33px 0 0}
.home-actions .btn{font-size:12px;padding:15px 21px;transition:background .2s,color .2s,transform .2s}
.home-actions .btn:hover{transform:translateY(-2px)}
.home-hero .btn--accent{background:#B6C0FF;border-color:#B6C0FF;color:#101523}
.home-hero .btn--accent:hover{background:#fff;border-color:#fff;color:#101523}
.home-status{font-family:var(--f-m);font-size:11px;line-height:1.55;letter-spacing:.02em;
  color:#BAC3C3;margin:22px 0 0;padding-left:13px;border-left:2px solid #AAB8FF;max-width:52ch}
.home-stage{position:relative;min-width:0;overflow:hidden;color:var(--paper);
  border:1px solid #6877AA;background:linear-gradient(145deg,#20294C,#141B30 56%,#0F151D);
  box-shadow:18px 20px 0 #080A0D,0 30px 80px #0008}
.home-stage::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.5;
  background:linear-gradient(90deg,transparent 97%,#b6c4ff16 97%),
             linear-gradient(0deg,transparent 97%,#b6c4ff16 97%);background-size:36px 36px;
  mask-image:linear-gradient(to bottom,#000,transparent 82%)}
.home-stage-head{position:relative;display:flex;align-items:center;justify-content:space-between;
  padding:19px 22px;border-bottom:1px solid #536181;color:#D9DFFF;
  font:10px var(--f-m);letter-spacing:.16em}
.home-stage-live{display:flex;align-items:center;gap:8px;color:#C5D0FF}
.home-stage-live::before{content:'';width:7px;height:7px;background:#AEBBFF;border-radius:50%;
  box-shadow:0 0 14px #9aabff}
.home-stage-core{position:relative;display:flex;flex-direction:column;align-items:center;
  justify-content:center;min-height:350px;padding:37px 18px 24px;text-align:center}
.home-stage-core::before{content:'';position:absolute;width:330px;height:330px;border-radius:50%;
  background:radial-gradient(circle,#738aff2a,transparent 68%);filter:blur(3px)}
.home-stage-orbit{position:relative;display:grid;place-items:center;width:196px;height:196px;
  border:1px solid #A8B7FF;border-radius:50%;box-shadow:0 0 0 20px #8fa5ff14,
  0 0 0 47px #8fa5ff0b,0 0 70px #627dff66,inset 0 0 50px #617dff25;
  background:radial-gradient(circle at 40% 30%,#33437C,#171F39 72%)}
.home-stage-orbit::after{content:'';position:absolute;inset:-75px;border:1px solid #9aafff1d;border-radius:50%}
.home-stage-orbit span{font:300 118px/.8 var(--f-d);letter-spacing:-.07em;color:#F2F2ED;
  transform:translateX(-6px)}
.home-stage-wave{position:relative;display:flex;align-items:center;justify-content:center;gap:5px;
  height:30px;margin:27px 0 3px}
.home-stage-wave i{display:block;width:2px;height:12px;background:#ACBAFF;border-radius:3px;
  box-shadow:0 0 10px #8c9eff55;animation:home-wave 2.7s ease-in-out infinite}
.home-stage-wave i:nth-child(4n+1){height:6px;animation-delay:-.3s}
.home-stage-wave i:nth-child(4n+2){height:20px;animation-delay:-1.1s}
.home-stage-wave i:nth-child(4n+3){height:27px;animation-delay:-1.8s}
.home-stage-wave i:nth-child(4n){height:14px;animation-delay:-2.3s}
@keyframes home-wave{50%{transform:scaleY(.55);opacity:.55}}
.home-stage-core p{position:relative;font:300 clamp(20px,2vw,26px)/1.2 var(--f-d);
  margin:10px 0 0;color:#EDF0F6}
.home-stage-flow{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid #536181;border-bottom:1px solid #536181}
.home-stage-flow div{padding:19px 16px 20px;border-right:1px solid #536181;min-width:0}
.home-stage-flow div:last-child{border:0}
.home-stage-flow span{display:block;font:9px var(--f-m);letter-spacing:.08em;color:#AEBEFF}
.home-stage-flow strong{display:block;margin-top:9px;font:400 17px/1.2 var(--f-d);color:#F1F2EF}
.home-stage-caption{position:relative;margin:0;padding:15px 22px;color:#B2BDCA;
  font:10px/1.5 var(--f-m);letter-spacing:.06em;text-transform:uppercase}
.home-section-heading{max-width:800px;margin-bottom:40px}
.home-section-heading h2,.home-hero~.band h2{font-size:clamp(36px,4.7vw,62px);line-height:1.03;letter-spacing:-.035em;max-width:17ch;margin-bottom:22px}
.home-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--rule)}
.home-value-grid article{padding:35px 30px 39px;border-right:1px solid var(--rule);transition:background .2s}
.home-value-grid article:hover{background:#F4F5F0}
.home-value-grid article:last-child{border-right:0}
.home-value-number{font:12px var(--f-m);color:var(--accent)}
.home-value-grid h3{font-size:34px;margin:26px 0 13px}
.home-value-grid p{font-size:15px;line-height:1.6;color:var(--ink-2);margin:0}
.home-inline-link{font:12px var(--f-m);letter-spacing:.04em;margin:30px 0 0}
.home-proof-note{font:12px/1.6 var(--f-m);color:#C7CFCA;margin:22px 0 0;
  padding-left:14px;border-left:2px solid var(--hold-lt)}
.home-proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule-d);
  border:1px solid var(--rule-d);margin-top:36px}
.home-proof-grid>div{background:var(--iron-2);padding:30px;min-height:165px}
.home-proof-grid strong{display:block;font:400 clamp(22px,2.6vw,36px)/1.16 var(--f-d);color:var(--paper);margin-bottom:18px}
.home-proof-grid>div:first-child strong{font-size:clamp(42px,5vw,70px);letter-spacing:-.04em;color:#B8C2FF}
.home-proof-grid .home-proof-caution{color:var(--hold-lt)}
.home-proof-grid span{font:11px/1.5 var(--f-m);letter-spacing:.04em;color:#ABB4B0}
.home-project-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:13px;margin-top:34px}
.home-research-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:48px;align-items:center}
.home-research-map{display:block;min-width:0;border:1px solid var(--rule-d);background:#0d1721;overflow:hidden}
.home-research-map img{display:block;width:100%;height:auto;transition:transform .35s ease}
.home-research-map:hover img{transform:scale(1.035)}
.home-project{display:flex;flex-direction:column;color:var(--paper);border:1px solid var(--rule-d);
  background:var(--iron-2);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.home-project:hover,.home-project:focus-visible{transform:translateY(-5px);border-color:var(--accent-lt);
  box-shadow:0 20px 38px #0005;color:var(--paper)}
.home-project figure{height:230px;overflow:hidden;margin:0;background:#101521}
.home-project figure img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.home-project:hover figure img{transform:scale(1.04)}
.home-project .home-project-graphic{display:flex;align-items:center;justify-content:center;position:relative;
  background:radial-gradient(circle at 55% 50%,#283c90,#161e38 45%,#0e131c 100%);color:var(--paper)}
.home-project-graphic span{font:400 88px/1 var(--f-d);letter-spacing:-.07em;color:#B5C1FF}
.home-project-graphic small{position:absolute;bottom:18px;left:20px;font:10px var(--f-m);letter-spacing:.12em;color:#B4BBD1}
.home-project .home-project-book{background:#101e38;display:flex;justify-content:center}
.home-project .home-project-book img{width:auto;height:100%;object-fit:contain}
.home-project-body{display:flex;flex-direction:column;flex:1;padding:25px 25px 28px}
.home-project-body .mono{color:var(--accent-lt);font-size:10px}
.home-project-body h3{font-size:31px;margin:13px 0}
.home-project-body p{font-size:14px;line-height:1.55;color:#B9C0BA;margin:0 0 22px}
.home-project-link{font:11px var(--f-m);color:var(--accent-lt);margin-top:auto}
.home-final-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  gap:clamp(46px,8vw,110px);align-items:center}
.home-final-grid h2{max-width:14ch}
.home-final-grid .lede{max-width:45ch}
.home-final-steps{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}
.home-final-steps li{display:grid;grid-template-columns:37px 1fr;gap:15px;
  padding:22px 0;border-bottom:1px solid var(--rule)}
.home-final-steps span{font:12px var(--f-m);color:var(--accent);padding-top:5px}
.home-final-steps strong{display:block;font:400 27px/1.15 var(--f-d);color:var(--ink)}
.home-final-steps small{display:block;margin-top:7px;font:14px/1.55 var(--f-b);color:var(--ink-2)}

@media(max-width:900px){
  .grid--3,.grid--4{grid-template-columns:repeat(2,1fr)}
  .pc--wide{grid-column:span 2}
  .navlinks{display:none}
  .nav-in{justify-content:space-between}
  .mobile-menu{display:block}
  .mobile-menu summary,.navside .lang{min-height:44px;display:flex;align-items:center;justify-content:center}
  .mobile-menu nav a{min-height:44px;display:flex;align-items:center}
  .book{grid-template-columns:1fr}
  footer .cols{grid-template-columns:1fr 1fr}
  .home-hero{min-height:0;padding:66px 0 76px}
  .home-hero-grid{grid-template-columns:1fr;gap:48px}
  .home-hero h1{max-width:13ch}
  .home-stage{max-width:620px}
  .home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-research-grid{grid-template-columns:1fr;gap:28px}
  .home-final-grid{grid-template-columns:1fr;gap:34px}
}
@media(max-width:620px){
  .grid--2,.grid--3,.grid--4{grid-template-columns:minmax(0,1fr)}
  .work-grid--single .cell:not([hidden]){display:block}
  .work-grid--single .work-shot{margin:18px 0 20px}
  .paper .kv{grid-template-columns:minmax(0,1fr)}
  .pc--wide{grid-column:span 1}
  .band{padding:60px 0}
  .wrap{padding:0 20px}
  .nav-in{padding:0 20px}
  .navside{gap:8px}
  .home-hero{padding:48px 0 64px}
  .home-hero-grid{gap:38px}
  .home-hero h1{font-size:clamp(47px,11.4vw,70px)}
  .home-intro{font-size:17px}
  .home-actions .btn{width:100%;text-align:center}
  .home-stage{box-shadow:10px 12px 0 #080A0D}
  .home-stage-core{min-height:300px}
  .home-stage-orbit{width:165px;height:165px}
  .home-stage-orbit span{font-size:98px}
  .home-stage-flow div{padding:17px 12px 18px}
  .home-stage-flow strong{font-size:15px}
  .home-value-grid,.home-proof-grid{grid-template-columns:1fr}
  .home-value-grid article{border-right:0;border-bottom:1px solid var(--rule)}
  .home-value-grid article:last-child{border-bottom:0}
  .home-proof-grid>div{min-height:0}
  .home-project-grid{grid-template-columns:1fr}
}
@media(max-width:360px){
  .nav-in{padding:0 12px;gap:8px}
  .brand{font-size:13px;letter-spacing:.07em}
  .navside{gap:5px}
  .mobile-menu summary{padding:7px 9px;font-size:10px}
  .navside .lang{padding:7px 9px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.latency-table th,.latency-table td{padding:13px 16px 13px 0;border-bottom:1px solid var(--rule);vertical-align:top;text-align:left}
.latency-table tbody th{font-weight:500}
