/* guics escuro · frontend público. Mesma estrutura do tema guics; cores por papel (página, cartão, texto, linha), não por troca creme/preto. */
body.pub{background:var(--bg)}
.pub-top{display:flex;justify-content:flex-end;align-items:center;padding:26px 44px} /* sem a palavra guics no topo (t699u): só o RSS, à direita */
.pub-top .wordmark{font-size:34px}
.menu-btn{display:inline-flex;align-items:center;gap:12px;border:1px solid var(--line-2);border-radius:var(--r-pill);background:transparent;color:var(--text);padding:10px 16px 9px;font-family:var(--f-head);font-weight:500;font-size:12px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:border-color .2s}
.menu-btn:hover{border-color:var(--muted)}
.menu-btn i{display:block;width:18px;height:1.5px;background:var(--text);box-shadow:0 5px 0 var(--text)}
.hero{position:relative;max-width:1180px;margin:0 auto;padding:56px 44px 40px;overflow:hidden}
.hero h1#hero-t,.hero h1{font-family:var(--f-head);font-weight:400;font-size:6em;line-height:.9;letter-spacing:-3px;margin:24px 0 0;padding-bottom:20px;color:var(--text)}
.hero-mark{position:absolute;right:44px;top:40px;width:230px;height:230px;opacity:.13;pointer-events:none} /* arcos creme do SVG, discretos no escuro */
.hero-vol{position:absolute;right:44px;top:58px;font-family:var(--f-head);font-weight:500;font-size:12px;letter-spacing:.16em;color:var(--muted)}
.hero-vol b{color:var(--text);font-size:16px;margin-left:8px}
.hero-rule{display:flex;align-items:center;gap:14px;margin-top:44px;color:var(--muted-2)}
.hero-rule::before,.hero-rule::after{content:"";flex:1;height:1px;background:var(--line-2)}
.filters{max-width:1180px;margin:0 auto;padding:6px 44px 28px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;border-bottom:1px solid var(--line)}
.filters button{font-family:var(--f-head);font-weight:500;font-size:12px;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--line-2);background:transparent;border-radius:var(--r-pill);padding:8px 14px 7px;cursor:pointer;color:var(--text-2)}
.filters button:hover{border-color:var(--muted)}
.filters button[aria-pressed="true"]{background:var(--text);border-color:var(--text);color:var(--bg)}
.filters .count{margin-left:auto;font-family:var(--f-head);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.grid{max-width:1180px;margin:0 auto;padding:36px 44px 90px;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
/* cartão: superfície um degrau acima da página + filete, para não sumir no fundo */
.card{position:relative;display:flex;flex-direction:column;background:var(--surface);color:var(--text);border-radius:12px;overflow:hidden;text-decoration:none;min-height:540px;box-shadow:inset 0 0 0 1px var(--hair);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.card:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1px var(--hair-2)}
.c-media{position:relative;aspect-ratio:4/4.1;overflow:hidden;background:var(--media)}
.c-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.card:hover .c-media img{transform:scale(1.04)}
.c-num{position:absolute;left:16px;top:14px;font-family:var(--f-head);font-weight:500;font-size:14px;letter-spacing:.06em}
.c-num i{font-style:normal;opacity:.55;font-weight:500;font-size:11px}
.c-pill{position:absolute;right:14px;top:12px;background:rgba(20,20,20,.7);color:var(--text);border-color:rgba(244,241,234,.35);font-size:10px}
.c-body{display:flex;flex-direction:column;flex:1;padding:22px 20px 18px}
.c-title{font-family:var(--f-head);font-weight:500;font-size:22px;line-height:1.18;letter-spacing:-.015em;margin:0 0 12px;color:var(--text);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(1.18em * 3)}
.c-ex{font-family:var(--f-it);font-style:italic;font-weight:400;font-size:14px;line-height:1.5;color:var(--muted);margin:0 0 18px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.c-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;font-family:var(--f-head);font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2)}
.c-arrow{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:transparent;border:1px solid var(--line-2);color:var(--text);font-size:15px;letter-spacing:0;transition:background .2s,border-color .2s,color .2s}
.card:hover .c-arrow{background:var(--lime);border-color:var(--lime);color:var(--on-lime)}
.c-flag{position:absolute;left:14px;top:12px;z-index:2;font-family:var(--f-head);font-weight:500;font-size:10px;letter-spacing:.14em;text-transform:uppercase;background:var(--lime);color:var(--on-lime);border-radius:var(--r-pill);padding:5px 9px 4px;line-height:1}
.card.is-read .c-title,.card.is-read .c-ex,.card.is-read .c-foot{opacity:.62}
.empty{grid-column:1/-1;text-align:center;padding:80px 0;font-family:var(--f-it);font-style:italic;color:var(--muted)}

/* artigo: capa à esquerda como antes; coluna de leitura também escura */
.a-split{display:grid;grid-template-columns:42% 1fr;min-height:100vh;background:var(--bg)}
.a-photo{position:sticky;top:0;height:100vh;overflow:hidden;background:var(--media);color:var(--text);border-right:1px solid var(--hair)}
.a-photo-img{width:100%;height:100%;object-fit:cover}
.a-photo-empty{display:grid;place-items:center;height:100%;font-family:var(--f-it);font-style:italic;color:rgba(244,241,234,.5)}
.a-photo-pill{position:absolute;right:28px;top:30px;background:rgba(20,20,20,.55);border-color:rgba(244,241,234,.4)}
.a-photo-cap{position:absolute;left:34px;right:34px;bottom:30px}
.a-photo-meta{font-family:var(--f-head);font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.75}
.a-photo-cap p{font-family:var(--f-head);font-weight:400;font-style:normal;font-size:28px;line-height:1.15;letter-spacing:-.02em;margin:8px 0 0}
.a-photo-cap p .it{font-style:italic}
.a-read{padding:44px 9% 80px 9%;max-width:820px;color:var(--text-2)}
.a-back{display:block;width:fit-content;font-family:var(--f-head);font-weight:500;font-size:12px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;color:var(--muted)}
.a-back:hover{color:var(--text)}
.a-pill{font-size:10px;margin-top:22px;color:var(--text)}
/* título do artigo: 32px no celular (390px, coluna 320px, ~20 caracteres por linha) a 40px no desktop (1440px, coluna 670px, ~34 por linha), interpolação linear entre os dois viewports; teto fixo depois de 1440px porque a coluna estreita. Títulos de até 80 caracteres em 3 linhas no desktop e 4 a 5 no celular. */
.a-title{font-family:var(--f-head);font-weight:400;font-size:clamp(2rem,1.8143rem + .7619vw,2.5rem);line-height:1.12;letter-spacing:-.02em;text-wrap:balance;margin:20px 0 22px;color:var(--text)}
.a-title .t-it{display:block;margin-top:.04em;font-family:var(--f-it);font-style:italic;font-weight:400;letter-spacing:inherit;font-size:1em;color:var(--text-2)}
.a-dek{font-size:17px;line-height:1.6;color:var(--text-2);max-width:560px;margin:0 0 16px}
.a-meta{font-family:var(--f-head);font-weight:500;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);line-height:1.8;margin:0}
.a-rule{border:0;border-top:1px solid var(--line);margin:36px 0 40px}
.a-body{font-size:17px;line-height:1.75;color:var(--text-2)}
.a-body p{margin:0 0 20px}
.a-body ul{margin:0 0 24px;padding-left:20px}
.a-body li{margin:0 0 8px}
.a-body li::marker{color:var(--muted-2)}
.a-body a{text-underline-offset:3px;text-decoration-color:var(--muted-2);color:var(--text)}
.a-body a:hover{text-decoration-color:var(--lime)}
.a-sec{margin:52px 0 22px;padding-top:34px;border-top:1px solid var(--line)}
.a-num{display:block;font-family:var(--f-head);font-weight:500;font-size:12px;letter-spacing:.12em;color:var(--muted);margin-bottom:6px}
.a-sec h2{font-family:var(--f-head);font-weight:500;font-size:28px;line-height:1.15;letter-spacing:-.02em;margin:0;color:var(--text)}
.a-sub{font-family:var(--f-it);font-style:italic;font-weight:400;font-size:16px;color:var(--muted);margin:6px 0 0 !important}
.a-quote{margin:34px 0;padding:4px 0 4px 26px;border-left:2px solid var(--line-2)}
.a-quote p{font-family:var(--f-it);font-style:italic;font-weight:400;font-size:25px;line-height:1.35;letter-spacing:-.01em;color:var(--text);margin:0 !important}
/* faixa: no escuro vira bloco um degrau acima da página, com filete */
.a-dark{background:var(--surface-2);color:var(--text-2);margin:48px -52px 40px;padding:46px 52px 40px;border-radius:12px;box-shadow:inset 0 0 0 1px var(--hair)}
.a-dark .a-sec{border-top:0;margin-top:0;padding-top:0}
.a-dark .a-sec h2{color:var(--text)}
.a-dark .a-num,.a-dark .a-sub{color:var(--muted)}
.a-dark a{color:var(--text)}
.notfound{max-width:700px;margin:120px auto;padding:0 44px;color:var(--text-2)}
.notfound h1{font-family:var(--f-head);font-weight:400;font-size:64px;line-height:1;letter-spacing:-.04em;margin:0 0 18px;color:var(--text)}
@media (max-width:980px){.grid{grid-template-columns:repeat(2,1fr)}.a-split{grid-template-columns:1fr}.a-photo{position:relative;height:62vh;border-right:0;border-bottom:1px solid var(--hair)}}
@media (max-width:640px){.grid{grid-template-columns:1fr;padding:24px 20px 60px}.hero,.filters,.pub-top{padding-left:20px;padding-right:20px}.hero-mark{display:none}.a-dark{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px;border-radius:0}}
.nf-mark{font-size:34px}
/* produção: conteúdo real (HTML vindo do site anterior) */
.a-body h3{font-family:var(--f-head);font-weight:500;font-size:21px;line-height:1.25;letter-spacing:-.015em;margin:30px 0 10px;color:var(--text)}
.a-body ol{margin:0 0 24px;padding-left:22px}
.a-body blockquote{margin:30px 0;padding:2px 0 2px 24px;border-left:2px solid var(--line-2);font-family:var(--f-it);font-style:italic;font-size:21px;line-height:1.45;color:var(--text)}
.a-body blockquote p{margin:0 0 10px}
.a-body strong{color:var(--text)}
.a-src{margin:52px 0 18px;padding-top:28px;border-top:1px solid var(--line)}
.a-src h2{font-family:var(--f-head);font-weight:500;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0}
.a-src ~ p,.a-src ~ ul,.a-src ~ ol{font-size:15px;line-height:1.65;color:var(--muted)}
.a-body a{word-break:break-word}
.a-standfirst{font-size:17px;line-height:1.6;color:var(--text-2);max-width:560px;margin:0 0 16px}
.a-origin{margin:34px 0 0;font-size:14px;color:var(--muted)}
.a-photo-img{object-position:center}
.c-media img.plate{object-fit:cover}
.skip{position:absolute;left:16px;top:0;transform:translateY(-120%);background:var(--text);color:var(--bg);padding:10px 14px;z-index:20;border-radius:0 0 8px 8px;text-decoration:none}
.skip:focus{transform:none}
.card[hidden]{display:none}
.c-media::before{content:"";position:absolute;inset:0 0 auto 0;height:64px;background:linear-gradient(rgba(10,10,11,.55),rgba(10,10,11,0));z-index:1;pointer-events:none}
.c-num,.c-pill,.c-flag{z-index:2}

/* compartilhar: linha discreta depois da data, botões de filete, ícones creme */
.a-share{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:22px 0 0}
.a-share-lead{font-family:var(--f-head);font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin-right:4px}
.a-share-btn{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 13px 0 11px;border:1px solid var(--line-2);border-radius:var(--r-pill);background:transparent;color:var(--text-2);font-family:var(--f-head);font-weight:500;font-size:12px;letter-spacing:.02em;line-height:1;text-decoration:none;cursor:pointer;transition:border-color .2s,color .2s,background .2s}
.a-share-btn svg{width:18px;height:18px;flex:none;fill:currentColor}
.a-share-btn svg.st{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.a-share-btn:hover{border-color:var(--lime);color:var(--text);background:rgba(152,255,3,.06)}
.a-share-btn:hover svg{color:var(--lime)}
.a-share-btn[data-ok]{border-color:var(--lime);color:var(--text)}
.a-share-btn[data-ok] svg{color:var(--lime)}
@media (max-width:640px){.a-share-lead{display:none}.a-share-btn{padding:0 11px}.a-share-btn .lb{display:none}.a-share-btn[data-copiar] .lb{display:inline}}

/* ---- about / consulting / contact, PT | EN, capas Lottie, Lenis (09/11/2026) ---- */
/* Lenis (lenis.css 1.1.20) */
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto !important}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-stopped{overflow:clip}
.lenis.lenis-smooth iframe{pointer-events:none}
/* topo: só o PT | EN, discreto, à direita */
.pub-top{padding:22px 44px 0}
.lang{display:flex;align-items:center;gap:8px;font-family:var(--f-head);font-weight:500;font-size:12px;letter-spacing:.16em;color:var(--muted-2)}
.lang a{color:var(--muted);text-decoration:none;padding:4px 2px}
.lang a:hover{color:var(--text)}
.lang a[aria-current]{color:var(--text);text-decoration:underline;text-decoration-color:var(--lime);text-decoration-thickness:2px;text-underline-offset:6px}
.pub-top + main .hero{padding-top:18px}
/* links abaixo do guics: texto, não botão */
.hero-nav{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:2rem;row-gap:.4rem;gap:.4rem 2rem;margin:26px 0 0 .06em}
.hero-nav a + a{margin-inline-start:2rem}.hero-nav a,.pf-nav a{position:relative;font-family:var(--f-head);font-weight:400;font-size:16px;letter-spacing:-.01em;line-height:1.3;color:var(--text-2);text-decoration:none;padding-bottom:12px}
.hero-nav a::after,.pf-nav a::after{content:"";position:absolute;left:50%;right:auto;bottom:2px;width:5px;height:5px;border-radius:50%;background:var(--lime);transform:translateX(-50%) scale(0);transform-origin:center;transition:transform .28s cubic-bezier(.2,.7,.2,1)}
.hero-nav a:hover,.pf-nav a:hover{color:var(--text)}
.hero-nav a:hover::after,.pf-nav a:hover::after,.pf-nav a[aria-current]::after{transform:translateX(-50%) scale(1)}
.pf-nav a[aria-current]{color:var(--text)}
/* capa animada: pôster SVG embaixo, Lottie (SVG no DOM) por cima, grão como nas capas estáticas */
.capa{position:absolute;inset:0;overflow:hidden;background:#141414}
.capa-poster,.capa-anim{position:absolute;inset:0;width:100%;height:100%}
.capa-anim{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;overflow:hidden}
.capa-poster{object-fit:cover}
.capa-anim svg{display:block;width:100% !important;height:100% !important}
/* pôster fica visível por baixo: no painel do artigo o Lottie sozinho deixava o fundo vazio */
.capa.is-live .capa-poster{visibility:visible}
.capa::after{content:"";position:absolute;inset:0;background:url("/temas/guics/img/grao.png");background-size:128px;opacity:.55;pointer-events:none}
.c-media .capa{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.card:hover .c-media .capa{transform:scale(1.04)}
.c-media .capa-poster{transition:none}
.card:hover .c-media .capa-poster{transform:none}
.a-photo .a-capa{z-index:0}
.a-photo-pill,.a-photo-cap{z-index:1}
/* capa do artigo: as peças do motivo e o ponto lima seguem o ponteiro (capa-pointer.js, wrappers g.capa-el dentro do SVG). Sem glow, sem inclinar a capa. */
@media (prefers-reduced-motion:reduce){.capa-el{transform:none!important}}
/* artigo: voltar + PT | EN na mesma linha */
.a-top{display:flex;justify-content:space-between;align-items:center;gap:16px}
.a-top .a-back{margin:0}
/* páginas simples: mesma coluna de leitura, sem capa */
.pg{max-width:760px;margin:0 auto;padding:40px 44px 110px;color:var(--text-2)}
.pg-kicker{font-family:var(--f-head);font-weight:500;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:56px 0 0}
.pg-title{font-family:var(--f-head);font-weight:400;font-size:clamp(72px,10vw,132px);line-height:.92;letter-spacing:-0.01em;margin:64px 0 40px;color:var(--text)}
.pg-lead{font-family:var(--f-head);font-weight:400;font-size:clamp(22px,2.3vw,28px);line-height:1.38;letter-spacing:-.015em;color:var(--text);margin:0 0 24px;max-width:640px}
.pg p{font-size:17px;line-height:1.7;margin:0 0 18px;max-width:600px}
.pg-mail a{color:var(--text);text-underline-offset:4px;text-decoration-color:var(--lime)}
.pg-cta{margin-top:34px !important}
.pg-cta a{font-family:var(--f-head);font-weight:500;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--text);text-decoration:none;border-bottom:1px solid var(--line-2);padding-bottom:6px}
.pg-cta a:hover{border-color:var(--lime)}
.nf-en{margin-top:44px;padding-top:26px;border-top:1px solid var(--line)}
.nf-en-t{font-family:var(--f-head);font-size:28px;letter-spacing:-.02em;color:var(--text)}
/* transição entre páginas: entra com fade (CSS), sai com fade curto (motion.js) */
@media (prefers-reduced-motion:no-preference){
  body.pub{animation:g-in .55s cubic-bezier(.2,.7,.2,1) both}
  html.is-leaving body.pub{opacity:0;transition:opacity .2s ease}
  /* entrada no artigo: sem fade da página; a capa (Lottie) aparece já e o texto da direita sobe bloco a bloco */
  body.pub.article{animation:none}
  .article .a-read .a-top,.article .a-read article>*:not(.a-body):not(.a-title),.article .a-body>*{animation:g-rise .7s calc(var(--rise-d,0s) + var(--rise-o,0s)) cubic-bezier(.2,.7,.2,1) both}
  /* título palavra por palavra (title.js): o h1 sai da cascata e o resto do artigo espera ~.45 s */
  html.js-words .a-title{opacity:.15}
  html.js-words .article .a-title~*,.article .a-title:has(.a-word)~*{--rise-o:.45s}
  .article .a-read .a-top{--rise-d:.12s}
  .article .a-read article>:nth-child(1){--rise-d:.2s}.article .a-read article>:nth-child(2){--rise-d:.28s}
  .article .a-read article>:nth-child(3){--rise-d:.36s}.article .a-read article>:nth-child(4){--rise-d:.44s}
  .article .a-read article>:nth-child(5){--rise-d:.52s}.article .a-read article>:nth-child(6){--rise-d:.58s}
  .article .a-body>:nth-child(1){--rise-d:.64s}.article .a-body>:nth-child(2){--rise-d:.72s}.article .a-body>:nth-child(3){--rise-d:.8s}
  .article .a-body>:nth-child(4){--rise-d:.88s}.article .a-body>:nth-child(5){--rise-d:.96s}.article .a-body>:nth-child(6){--rise-d:1.04s}
  .article .a-body>:nth-child(7){--rise-d:1.12s}.article .a-body>:nth-child(8){--rise-d:1.2s}.article .a-body>:nth-child(9){--rise-d:1.28s}
  .article .a-body>:nth-child(10){--rise-d:1.36s}.article .a-body>:nth-child(n+11),.article .a-read article>.a-origin{--rise-d:1.44s}
  .hero h1,.pg-title{animation:g-rise .8s cubic-bezier(.2,.7,.2,1) both}
  .hero-nav,.pg-lead{animation:g-rise .8s .08s cubic-bezier(.2,.7,.2,1) both}
}
@keyframes g-in{from{opacity:0}to{opacity:1}}
@keyframes g-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (max-width:640px){.hero-vol{position:static;margin:4px 0 0}.pub-top,.pg{padding-left:20px;padding-right:20px}.hero-nav{gap:4px 22px;margin-top:18px}.hero-nav a{font-size:15px}.pg-kicker{margin-top:32px}}

/* ---- home: fade in up sutil dos blocos + lazy (unificação 09/11/2026). Sem lib; prefers-reduced-motion: sem movimento. */
@keyframes guics-card-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.card.card--reveal{animation:guics-card-in .48s ease-out both}
.card.card--reveal-first{animation-duration:.28s}
@media (prefers-reduced-motion:reduce){.card.card--reveal,.card.card--reveal-first{animation:none}.hero-nav a::after,.pf-nav a::after{transition:none}}
/* com GSAP (reveal.js) quem anima os cards é o ScrollTrigger.batch: a animação CSS sai para não brigar */
html.gsap-reveal .card.card--reveal,html.gsap-reveal .card.card--reveal-first{animation:none}
.noscript-home{max-width:1180px;margin:0 auto;padding:0 44px 40px;font-family:var(--f-head);font-size:13px;color:var(--muted)}
.home-sentinel{grid-column:1/-1;height:1px;pointer-events:none}
.c-num{display:none}

/* ---- curve swipe entre home e artigo (wipe.js + wipe-boot.js). Cinza distinto do fundo + grain, pra a troca se ver. */
.wipe{position:fixed;inset:0;width:100%;height:100%;z-index:2147483000;pointer-events:none;display:block}
.wipe path{fill:var(--wipe,#252524)}
.wipe-defs{position:absolute;width:0;height:0;overflow:hidden}
.wipe-grain{position:fixed;inset:0;z-index:2147483001;pointer-events:none;clip-path:url(#wipe-clip);background-image:url(/temas/guics/img/wipe-noise.png);background-repeat:repeat;background-size:200px 200px;opacity:.42;mix-blend-mode:overlay}
html.wipe-hold::after,html.is-leaving::after{content:"";position:fixed;inset:0;z-index:2147483000;background-color:var(--wipe,#252524);background-image:url(/temas/guics/img/wipe-noise.png);background-repeat:repeat;background-size:200px 200px;pointer-events:none}
html.wipe-live::after{content:none}
html.wipe-hold .a-read,html.wipe-hold .a-read *{animation-play-state:paused}

/* ---- leia também: 3 textos relacionados depois do corpo (build.py g_related). Lista editorial, título + seta, sem cara de CTA. */
.a-rel{margin:72px 0 0;padding-top:26px;border-top:1px solid var(--hair-2)}
.a-rel-k{margin:0 0 6px;font-family:var(--f-head);font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2)}
.a-rel-h{margin:0 0 18px;font-family:var(--f-head);font-weight:400;font-size:28px;line-height:1.15;letter-spacing:-.02em;color:var(--text)}
.a-rel-list{list-style:none;margin:0;padding:0}
.a-rel-list li{border-bottom:1px solid var(--hair)}
.a-rel-item{display:grid;grid-template-columns:1fr auto;grid-template-areas:"t a" "m a";gap:6px 20px;align-items:center;padding:18px 0;text-decoration:none;color:inherit}
.a-rel-t{grid-area:t;font-family:var(--f-head);font-weight:500;font-size:18px;line-height:1.3;letter-spacing:-.01em;color:var(--text)}
.a-rel-m{grid-area:m;font-family:var(--f-head);font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2)}
.a-rel-item .c-arrow{grid-area:a}
.a-rel-item:hover .a-rel-t{text-decoration:underline;text-decoration-color:var(--lime);text-underline-offset:4px}
.a-rel-item:hover .c-arrow,.a-rel-item:focus-visible .c-arrow{background:var(--lime);border-color:var(--lime);color:var(--on-lime)}

/* ---- rodapé completo (t27u, 10/11/2026): wordmark + redes, menu, copyright + privacidade, cookies, RSS. Também no artigo, depois do .a-split. */
.pub-foot{border-top:1px solid var(--line);max-width:1180px;margin:0 auto;padding:40px 44px 44px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:26px 40px;font-family:var(--f-head);font-size:14px;line-height:1.5;color:var(--muted)}
.pf-brand{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}
.pub-foot .wordmark{font-size:28px;color:var(--text);text-decoration:none}
.pf-social{display:flex;gap:4px;list-style:none;margin:0;padding:0}
.pf-social a{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:var(--muted);transition:color .2s,background-color .2s}
.pf-social a:hover,.pf-social a:focus-visible{color:var(--text);background:var(--hair-2)}
.pf-social svg{display:block;width:16px;height:16px;fill:currentColor}
.pf-social svg.st{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pf-nav{display:flex;flex-wrap:wrap;gap:6px 26px;justify-self:end;padding-top:12px}
.pf-nav a{font-size:15px}
.pf-base{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px 24px;padding-top:22px;border-top:1px solid var(--hair-2);font-size:13px}
.pf-copy{margin:0}
.pf-legal{display:flex;flex-wrap:wrap;gap:6px 20px;list-style:none;margin:0;padding:0}
.pf-legal a{color:var(--muted);text-decoration:none}
.pf-legal a:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px}
@media (max-width:640px){.pub-foot{grid-template-columns:1fr;gap:22px;padding:32px 20px 36px}.pf-nav{justify-self:start}.pf-base{flex-direction:column}}

/* ---- privacidade e cookies: documento legível, sem o título de 72–132px das páginas whoami/consulting/contact. */
.legal-title{font-family:var(--f-head);font-weight:400;font-size:clamp(36px,4.4vw,52px);line-height:1.06;letter-spacing:-.03em;margin:56px 0 14px;color:var(--text)}
.pg .legal-date{font-family:var(--f-head);font-weight:500;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 36px}
.legal h2{font-family:var(--f-head);font-weight:500;font-size:22px;line-height:1.25;letter-spacing:-.015em;margin:44px 0 14px;padding-top:26px;border-top:1px solid var(--line);color:var(--text)}
.legal ul{max-width:600px;margin:0 0 18px;padding-left:20px}
.legal li{font-size:17px;line-height:1.7;margin:0 0 10px}
.legal li::marker{color:var(--muted-2)}
.legal p a,.legal li a{color:var(--text);text-underline-offset:3px;text-decoration-color:var(--muted-2)}
.legal p a:hover,.legal li a:hover{text-decoration-color:var(--lime)}
.legal code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86em;background:var(--surface);color:var(--text);padding:2px 6px;border-radius:4px}
@media (max-width:640px){.legal-title{margin-top:36px}}

/* ---- whoami (t31u): marca do favicon + seções do perfil do LinkedIn, no visual do site */
.pg-mark{display:block;width:80px;height:80px;margin:56px 0 -24px;border-radius:18px;box-shadow:0 0 0 1px var(--line)}
.pg-sec{margin-top:56px;padding-top:24px;border-top:1px solid var(--line)}
.pg-h2{font-family:var(--f-head);font-weight:500;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 22px}
.pg-name{font-family:var(--f-head);font-size:22px !important;line-height:1.3 !important;color:var(--text);margin:0 0 6px !important}
.pg-headline{font-family:var(--f-head);color:var(--text);margin:0 0 14px !important}
.pg .pg-meta{font-size:15px;margin:0 0 4px;color:var(--muted)}
.pg-list,.pg-roles{list-style:none;margin:0;padding:0}
.pg-org + .pg-org{margin-top:30px}
.pg .pg-org-name{font-family:var(--f-head);font-size:19px;color:var(--text);margin:0 0 8px}
.pg-place{font-size:14px;color:var(--muted);margin-left:8px}
.pg-roles li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 20px;max-width:600px;padding:7px 0;border-bottom:1px solid var(--line);font-size:16px;line-height:1.5}
.pg-role{color:var(--text-2)}
.pg-when{font-size:14px;color:var(--muted);white-space:nowrap}
.pg .pg-note{font-size:14px;color:var(--muted);margin:14px 0 6px}
.pg-quote{margin:0;padding:0 0 0 16px;border-left:2px solid var(--lime);max-width:584px}
.pg-quote p{font-size:15px !important;line-height:1.65 !important;margin:0 0 8px !important}
.pg-cta a + a{margin-left:28px}
@media (max-width:640px){.pg-mark{width:64px;height:64px;margin-top:32px;border-radius:15px}.pg-cta a + a{display:inline-block;margin:18px 0 0}}
