/* Jhonny Cazoni — v3 "skills" · refeito do zero.
   Direção (taste-skill): "The printed annual" (editorial-report), seed 287992178.
   Movimento (apple-design): molas criticamente amortecidas, resposta no pointer-down, materiais só no que flutua. */
@font-face{font-family:"EB Garamond";src:url(fonts/EBGaramond-normal.woff2) format("woff2");font-weight:400 600;font-style:normal;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(fonts/EBGaramond-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}

:root{
  /* Faces: uma para títulos e leitura longa, a do sistema para interface e números */
  --serif:"EB Garamond",Garamond,"Iowan Old Style","Times New Roman",serif;
  --sans:system-ui,-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;

  /* Cinco degraus, distantes entre si (taste type.md §2) */
  --step-small:clamp(.875rem,.79rem + .1vw,.875rem);      /* 13–14 */
  --step-body:clamp(1rem,1rem + .3vw,1.25rem);         /* 17–20 */
  --step-lead:clamp(1.25rem,1.1rem + .7vw,1.625rem);        /* 20–26 */
  --step-head:clamp(2rem,1.3rem + 3vw,3.75rem);             /* 32–60 */
  --step-display:clamp(2.75rem,1rem + 6.6vw,6.5rem);        /* 44–104 */

  /* Moldura: um par de margens, uma grade de 12, um eixo a 5/12 (≈42%) */
  --m:clamp(1.25rem,.6rem + 3vw,3rem);
  --gap:clamp(1rem,.6rem + 1.2vw,1.5rem);
  --max:90rem;
  --section:clamp(6rem,4rem + 8vw,10rem);
  --radius:14px;      /* um único raio para mídia e painéis */
  --tap:44px;

  /* Movimento (apple-design §4): amortecimento 1,0, resposta .3–.4 s */
  --spring:cubic-bezier(.22,1,.36,1);
  --d-press:100ms; --d-color:180ms; --d-panel:340ms;
}
@supports (transition-timing-function:linear(0,1)){
  /* k300 c35 (ζ≈1,01) do tokens.css: criticamente amortecida, sem overshoot */
  :root{--spring:linear(0,.0229,.079,.1536,.2366,.3215,.4038,.4811,.5518,.6155,.672,.7215,.7646,.8017,.8336,.8607,.8838,.9032,.9196,.9333,.9448,.9544,.9624,.969,.9745,.9791,.9828,.9859,.9885,.9906,.9923,.9937,.9949,.9958,.9966,.9972,.9977,.9982,.9985,.9988,1)}
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:1rem}
body{margin:0;background:var(--bg);color:var(--text);font:400 var(--step-body)/1.55 var(--sans);
  font-kerning:normal;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;
  transition:background-color 300ms ease,color 300ms ease}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:.07em}
h1,h2,h3{margin:0;font-family:var(--serif);font-weight:400;hyphens:none;text-wrap:balance}
p{margin:0;text-wrap:pretty}
p+p{margin-top:.9em}
ul,ol{margin:0;padding:0}
button,input,select{font:inherit;color:inherit}
::selection{background:var(--button);color:var(--on-button)}
:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:4px}
.num{font-variant-numeric:tabular-nums lining-nums}
.v3-sr-only{position:absolute!important;left:0;top:0;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:var(--m);top:-100px;z-index:50;background:var(--button);color:var(--on-button);padding:.7rem 1rem;border-radius:999px;font-weight:600;text-decoration:none}
.skip:focus{top:.75rem}

/* ——— Moldura ——— */
.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--m)}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
.axis{grid-column:6/-1}           /* começa no eixo de 42% */
.side{grid-column:1/5}
@media (max-width:899px){.axis,.side{grid-column:1/-1}}

/* ——— Tipografia ——— */
.display{font-size:var(--step-display);line-height:.98;letter-spacing:-.022em;margin-left:-.04em}
.head{font-size:var(--step-head);line-height:1.04;letter-spacing:-.016em}
.lead{font-family:var(--serif);font-size:var(--step-lead);line-height:1.32;letter-spacing:-.003em;max-width:40ch}
.v3-small{font-size:var(--step-small);line-height:1.45;letter-spacing:.006em}
.v3-muted{color:var(--muted)}
.serif{font-family:var(--serif)}

/* ——— Controles ——— */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:var(--tap);padding:.65rem 1.35rem;
  border:0;border-radius:999px;background:var(--button);color:var(--on-button);font:600 1rem/1.2 var(--sans);letter-spacing:-.005em;
  text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;
  transition:background-color var(--d-color) ease,transform var(--d-panel) var(--spring)}
.btn:hover{background:var(--button-hover)}
.btn:active{background:var(--button-press);transform:scale(.97);transition-duration:var(--d-press),var(--d-press);transition-timing-function:ease-out}
.btn--quiet{background:var(--raised);color:var(--text)}
.btn--quiet:hover{background:var(--surface)}
.btn--quiet:active{background:var(--raised)}
.link{display:inline-flex;align-items:center;gap:.35em;min-height:var(--tap);font:600 1rem/1.2 var(--sans);color:var(--accent);text-decoration:none;
  -webkit-tap-highlight-color:transparent;transition:opacity var(--d-press) ease-out}
.link:hover{text-decoration:underline}
.link:active{opacity:.6}
.link svg{width:.9em;height:.9em;transition:transform var(--d-panel) var(--spring)}
.link:hover svg{transform:translateX(3px)}
.press{-webkit-tap-highlight-color:transparent;transition:transform var(--d-panel) var(--spring)}
.press:active{transform:scale(.985);transition:transform var(--d-press) ease-out}

/* ——— Ticker (todas as páginas) ——— */
.v3-ticker{background:var(--surface);font:500 var(--step-small)/1.2 var(--sans)}
.ticker__in{display:flex;align-items:center;gap:1.25rem;min-height:40px}
.ticker__tag{flex:none;color:var(--muted);font-weight:600}
.ticker__list{flex:1;min-width:0;position:relative;display:flex;gap:1.75rem;list-style:none;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity;
  padding-right:1rem}
.ticker__list::-webkit-scrollbar{display:none}
.ticker__list li{position:relative;flex:none;display:flex;gap:.45rem;align-items:baseline;scroll-snap-align:start;white-space:nowrap}
.ticker__list b{font-weight:650}
.up{color:var(--positive)} .down{color:var(--negative)}
.ticker__list .q{color:var(--muted)}

/* ——— Cabeçalho ——— */
.top{position:relative;z-index:20}
.top__in{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:center;min-height:76px}
.v3-brand{grid-column:1/5;justify-self:start;display:flex;align-items:center;min-height:var(--tap);font:500 1.375rem/1 var(--serif);letter-spacing:-.01em;text-decoration:none}
.nav{grid-column:6/10;display:flex;gap:1.6rem}
.nav a{font:500 1rem/1 var(--sans);text-decoration:none;color:var(--text);padding:.75rem 0;position:relative}
.nav a:hover{color:var(--accent)}
.nav a[aria-current="page"]{color:var(--accent)}
.top__act{grid-column:10/-1;justify-self:end;display:flex;align-items:center;gap:.5rem}
.icon-btn{display:inline-flex;align-items:center;gap:.45rem;min-height:var(--tap);min-width:var(--tap);justify-content:center;padding:0 .8rem;
  border:0;border-radius:999px;background:transparent;font:500 1rem/1 var(--sans);cursor:pointer;-webkit-tap-highlight-color:transparent;
  transition:background-color var(--d-color) ease,transform var(--d-panel) var(--spring)}
.icon-btn:hover{background:var(--raised)}
.icon-btn:active{transform:scale(.95);transition-duration:var(--d-press)}
.icon-btn svg{width:18px;height:18px}
.icon-btn kbd{font:500 .875rem/1 var(--sans);color:var(--muted);padding:.25rem .4rem;border-radius:6px;background:var(--raised)}
.menu-btn{display:none}
@media (max-width:899px){
  .nav,.top__act .btn,.icon-btn kbd,.icon-btn .lbl{display:none}
  .v3-brand{grid-column:1/9}
  .top__act{grid-column:9/-1}
  .menu-btn{display:inline-flex}
  .top__in{min-height:64px}
}

/* ——— Materiais: só o que flutua (busca, menu) ——— */
.sheet{position:fixed;inset:0;z-index:60;display:none}
.sheet[data-open]{display:block}
.sheet__scrim{position:absolute;inset:0;background:#04141a66;opacity:0;transition:opacity var(--d-panel) ease}
.sheet__panel{position:absolute;background:var(--glass);-webkit-backdrop-filter:blur(28px) saturate(170%);backdrop-filter:blur(28px) saturate(170%); /* taste-skill-ignore: material só no que flutua (apple-design §12) */
  box-shadow:0 0 0 1px var(--line),0 30px 80px #0000004d;color:var(--text); /* taste-skill-ignore: camada que flutua */
  opacity:0;transform:scale(.97);filter:blur(6px);
  transition:opacity 220ms ease,transform var(--d-panel) var(--spring),filter var(--d-panel) var(--spring)}
.sheet[data-shown] .sheet__scrim{opacity:1}
.sheet[data-shown] .sheet__panel{opacity:1;transform:none;filter:none}
@media (prefers-reduced-transparency:reduce){.sheet__panel{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}}
@media (prefers-contrast:more){.sheet__panel{background:var(--surface);box-shadow:0 0 0 2px var(--essential)}} /* taste-skill-ignore */

.search .sheet__panel{left:50%;top:clamp(1rem,10vh,7rem);width:min(40rem,calc(100% - 2*var(--m)));translate:-50% 0;border-radius:20px;
  max-height:min(70vh,36rem);display:flex;flex-direction:column;overflow:hidden;transform-origin:var(--ox,90%) 0}
.search__field{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--soft)}
.search__field svg{flex:none;width:20px;height:20px;color:var(--muted)}
.search__field input{flex:1;min-width:0;min-height:var(--tap);border:0;background:transparent;font:400 1.25rem/1.2 var(--sans);outline:none}
.search__field input::placeholder{color:var(--muted)}
.search__close{border:0;background:var(--raised);border-radius:999px;min-height:36px;padding:0 .9rem;font:500 .875rem/1 var(--sans);cursor:pointer}
.search__list{list-style:none;overflow:auto;padding:.5rem;margin:0}
.search__list a{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;padding:.75rem .9rem;border-radius:10px;text-decoration:none;min-height:var(--tap)}
.search__list a:hover,.search__list a:focus-visible,.search__list a[aria-selected="true"]{background:var(--raised);outline-offset:-2px}
.search__list span{font:400 .875rem/1.2 var(--sans);color:var(--muted);flex:none}
.search__empty{padding:1.5rem 1.25rem;color:var(--muted)}
.search__count{padding:.6rem 1.25rem;font:400 .875rem/1.2 var(--sans);color:var(--muted);background:var(--soft)}

.menu .sheet__panel{inset:0 0 auto 0;padding:1rem var(--m) 2rem;border-radius:0 0 22px 22px;transform-origin:100% 0;transform:translateY(-12px)}
.menu[data-shown] .sheet__panel{transform:none}
.menu__head{display:flex;justify-content:space-between;align-items:center;min-height:48px}
.menu__nav{display:grid;margin-top:1rem}
.menu__nav a{font:400 2rem/1.15 var(--serif);letter-spacing:-.01em;padding:.45rem 0;text-decoration:none}
.menu__nav a[aria-current="page"]{color:var(--accent)}
.menu__foot{margin-top:1.5rem;display:flex;gap:.75rem;flex-wrap:wrap}

/* ——— Herói da home: vazio composto, declaração no eixo ——— */
.v3-hero{min-height:clamp(30rem,calc(100svh - 116px),52rem);display:grid;align-content:end;padding-bottom:clamp(2.5rem,1rem + 4vw,4.5rem)}
.v3-hero .grid{align-items:end;row-gap:2rem}
.hero__note{grid-column:1/5;max-width:32ch;font-size:1rem;line-height:1.5}
.hero__note strong{color:var(--text);font-weight:600}
.hero__main{grid-column:6/-1}
.hero__main .display{font-size:clamp(2.25rem,.6rem + 6.2vw,6rem)}
.hero__main .display .br{display:block}
.hero__sub{margin-top:clamp(1.25rem,.8rem + 1vw,2rem);font-family:var(--serif);font-size:var(--step-lead);line-height:1.3;max-width:30ch}
.actions{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;align-items:center;margin-top:1.75rem}
@media (max-width:899px){
  .v3-hero{min-height:auto;padding-top:clamp(3rem,12svh,6rem)}
  .hero__side .hero__note{grid-row:auto;font-size:1rem;max-width:40ch}
  .hero__main{grid-column:1/-1}
  .hero__main .display{font-size:clamp(2.25rem,9.6vw,3.5rem);line-height:1.02}
  .hero__main .display .br{display:inline}
}

/* ——— Seções ——— */
.sec{padding-block:var(--section)}
.sec--tight{padding-block:clamp(3.5rem,2rem + 5vw,6rem)}
.sec__head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:end;row-gap:1.25rem;margin-bottom:clamp(2rem,1rem + 3vw,3.5rem)}
.sec__head h2{grid-column:1/9}
.sec__head .sec__aside{grid-column:9/-1;justify-self:end;text-align:left}
@media (max-width:899px){.sec__head h2,.sec__head .sec__aside{grid-column:1/-1;justify-self:start;text-align:left}}

/* Mercados em perspectiva — fragmento de interface (data-ui) */
.mk{background:var(--surface);border-radius:var(--radius);padding:clamp(1.25rem,.8rem + 1.6vw,2.25rem)}
.mk__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1.5rem;margin-bottom:clamp(1.25rem,.8rem + 1.5vw,2rem)}
.mk__head h2{font-size:var(--step-head);line-height:1.04;letter-spacing:-.016em}
.flag{display:inline-flex;align-items:center;gap:.45rem;font:600 var(--step-small)/1.2 var(--sans);color:var(--text);background:var(--raised);padding:.4rem .75rem;border-radius:999px}
.flag::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--accent)}
.mk__list{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--gap)}
.mk__item{display:grid;grid-template-rows:auto auto auto 1fr;gap:.3rem;min-width:0}
.mk__sym{font:650 1rem/1.2 var(--sans);letter-spacing:.01em}
.mk__name{font:400 var(--step-small)/1.3 var(--sans);color:var(--muted)}
.mk__val{font:500 var(--step-lead)/1.1 var(--sans);letter-spacing:-.02em;margin-top:.6rem}
.mk__chg{font:600 1rem/1.2 var(--sans)}
.mk__chg.flat{color:var(--muted);font-weight:500}
.mk__src{font:400 .875rem/1.4 var(--sans);color:var(--muted);align-self:end;margin-top:.5rem}
.mk__foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;align-items:center;margin-top:clamp(1.25rem,.8rem + 1.5vw,2rem);color:var(--muted);font:400 var(--step-small)/1.45 var(--sans)}
@media (max-width:1099px){.mk__list{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:2rem}}
@media (max-width:599px){.mk__list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem}.mk__item:last-child{grid-column:1/-1}}

/* Intro: linha de abertura sobre quatro colunas */
.intro h2{max-width:16ch}
.intro__lead{margin-top:1.5rem;font-family:var(--serif);font-size:var(--step-lead);line-height:1.3;max-width:38ch}
.cols4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap);margin-top:clamp(3rem,2rem + 3vw,4.5rem)}
.cols4 p{font-size:1rem;line-height:1.5;max-width:34ch}
.cols4 strong{color:var(--text);font-weight:650}
@media (max-width:899px){.cols4{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:2.5rem}}
@media (max-width:599px){.cols4{grid-template-columns:1fr;row-gap:1.75rem}}

/* Lista em faixas (artigos) com abas */
.tabs{display:flex;gap:.375rem;flex-wrap:wrap;margin-bottom:1.25rem}
.tab{min-height:var(--tap);padding:0 1.1rem;border:0;border-radius:999px;background:var(--surface);font:500 1rem/1 var(--sans);cursor:pointer;
  -webkit-tap-highlight-color:transparent;transition:background-color var(--d-color) ease,color var(--d-color) ease,transform var(--d-panel) var(--spring)}
.tab:hover{background:var(--raised)}
.tab:active{transform:scale(.96);transition-duration:var(--d-press)}
.tab[aria-selected="true"]{background:var(--text);color:var(--bg)}
.bands{list-style:none;display:grid;gap:6px}
.band{position:relative;display:grid;grid-template-columns:9rem minmax(0,1fr) 10rem 11rem;column-gap:var(--gap);align-items:center;
  padding:1rem 1rem 1rem 1.5rem;border-radius:var(--radius);background:var(--surface);transition:background-color var(--d-color) ease,transform var(--d-panel) var(--spring)}
.band:nth-child(even){background:var(--raised)}
.band:hover{background:var(--raised)}
.band:nth-child(even):hover{background:var(--surface)}
.band:active{transform:scale(.993);transition-duration:var(--d-press)}
.band[hidden]{display:none}
.band time{font:500 1rem/1.3 var(--sans);color:var(--muted)}
.band h3{font-size:var(--step-lead);line-height:1.15;letter-spacing:-.008em}
.band h3 a{text-decoration:none}
.band h3 a::after{content:"";position:absolute;inset:0;border-radius:var(--radius)}
.band h3 a:focus-visible{outline:none}
.band:has(a:focus-visible){outline:2px solid var(--focus);outline-offset:3px}
.band p{margin-top:.35rem;color:var(--muted);font-size:1rem;line-height:1.45;max-width:62ch}
.band__meta{font:400 .875rem/1.4 var(--sans);color:var(--muted)}
.band__meta b{display:block;color:var(--text);font-weight:600}
.band img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:8px}
@media (max-width:1099px){.band{grid-template-columns:8rem minmax(0,1fr) 9rem}.band__meta{display:none}}
@media (max-width:699px){
  .band{grid-template-columns:minmax(0,1fr) 6.5rem;grid-template-areas:"t i" "h i" "p p";row-gap:.4rem;padding:1rem}
  .band time{grid-area:t;font-size:.875rem}.band>div:first-of-type{grid-area:h}.band img{grid-area:i;align-self:start}
  .band p{display:none}
  .band h3{font-size:1.25rem;line-height:1.2}
  .band{grid-template-columns:minmax(0,1fr) 5.5rem}
}
.band__body{min-width:0}
.list-foot{margin-top:2rem;display:flex;justify-content:flex-start}

/* Obra: visual grande à esquerda, conjunto pequeno à direita */
.work{overflow:hidden}
.work .grid{align-items:end}
.work__visual{grid-column:1/8;margin-left:calc(-1*var(--m));background:var(--surface);border-radius:0 var(--radius) var(--radius) 0;
  display:grid;place-items:center;padding:clamp(2.5rem,1rem + 5vw,6rem) clamp(1.5rem,1rem + 4vw,5rem);min-height:min(80svh,46rem)}
.work__visual img{width:min(100%,24rem);aspect-ratio:2/3;object-fit:cover;border-radius:6px}
.work__copy{grid-column:9/-1;padding-bottom:.5rem}
.work__copy h2{max-width:11ch}
.work__copy .lead{margin-top:1.25rem}
.work__copy p.v3-small{margin-top:1rem}
.price{display:flex;align-items:baseline;gap:.75rem;margin-top:1.75rem}
.price b{font:500 var(--step-lead)/1 var(--sans);letter-spacing:-.025em}
.price span{color:var(--muted);font:400 1rem/1.3 var(--sans)}
@media (max-width:899px){
  .work__visual{grid-column:1/-1;margin-right:calc(-1*var(--m));border-radius:0;min-height:auto}
  .work__copy{grid-column:1/-1;margin-top:2.5rem}
}

/* Sobre: fatos ao lado, parágrafo largo */
.about .grid{row-gap:2.5rem}
.about__facts{grid-column:1/5;display:grid;gap:1.75rem;align-content:start}
.about__facts img{width:100%;max-width:22rem;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;border-radius:var(--radius)}
.about__facts dl{display:grid;gap:1.1rem;margin:0}
.about__facts dt{font:400 var(--step-small)/1.3 var(--sans);color:var(--muted)}
.about__facts dd{margin:.15rem 0 0;font:600 1rem/1.35 var(--sans)}
.about__text{grid-column:6/-1}
.about__text h2{max-width:none}
.about__text .lead{margin-top:1.5rem;max-width:44ch}
.about__text .v3-muted{margin-top:1.25rem;max-width:60ch}
@media (max-width:899px){.about__facts,.about__text{grid-column:1/-1}.about__facts{order:2;grid-template-columns:8rem 1fr;align-items:start}}

/* Faixa de três imagens + campo de cor */
.strip{display:grid;grid-template-columns:repeat(3,1fr)}
.strip img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:0}
.v3-field{background:var(--button);color:var(--on-button)}
.v3-field .grid{padding-block:clamp(3.5rem,2rem + 5vw,7rem);align-items:end;row-gap:2rem}
.v3-field h2{grid-column:1/8}
.v3-field p{grid-column:1/7;margin-top:1.25rem;font-size:1rem;max-width:46ch}
.field__act{grid-column:9/-1;justify-self:end}
.btn--on{background:var(--on-button);color:var(--button-press)}
.btn--on:hover{background:color-mix(in srgb,var(--on-button) 90%,var(--button))}
.btn--on:active{background:color-mix(in srgb,var(--on-button) 80%,var(--button))}
.v3-field :focus-visible{outline-color:var(--on-button)}
@media (max-width:899px){.strip{grid-template-columns:1fr 1fr}.strip img:first-child{grid-column:1/-1}
  .v3-field h2,.v3-field p,.field__act{grid-column:1/-1;justify-self:start}}

/* Rodapé: chão e tinta invertidos, nome de margem a margem */
.foot{background:var(--text);color:var(--bg);padding-top:clamp(3rem,2rem + 3vw,5rem)}
.foot a{color:var(--bg)}
.foot :focus-visible{outline-color:var(--bg)}
.foot__cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}
.foot__cols h2{font:650 1rem/1.3 var(--sans);letter-spacing:0;margin-bottom:.6rem}
.foot__cols ul{list-style:none;display:grid}
.foot__cols li a,.foot__cols li span{display:inline-flex;align-items:center;min-height:36px;font:400 1rem/1.3 var(--sans);text-decoration:none;opacity:.86}
.foot__cols li a:hover{opacity:1;text-decoration:underline}
.foot__legal{margin-top:clamp(3rem,2rem + 4vw,6rem);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:.75rem;font:400 .875rem/1.5 var(--sans)}
.foot__legal p{grid-column:1/8;opacity:.86}
.foot__legal small{grid-column:9/-1;justify-self:end;font-size:.875rem;opacity:.86}
.foot__mark{display:block;width:100%;margin-top:1.5rem;fill:currentColor}
@media (max-width:899px){.foot__cols{grid-template-columns:1fr 1fr;row-gap:2rem}.foot__legal p,.foot__legal small{grid-column:1/-1;justify-self:start}}

/* ——— Cabeçalho de página interna ——— */
.phead{padding-block:clamp(3.5rem,2rem + 6vw,7.5rem) clamp(2.5rem,1.5rem + 3vw,4rem)}
.phead .grid{align-items:end;row-gap:1.5rem}
.phead__side{grid-column:1/5;color:var(--text);font:400 1rem/1.5 var(--sans)}
.phead__main{grid-column:6/-1}
.phead__main .lead{margin-top:1.25rem}
@media (max-width:899px){.phead__side,.phead__main{grid-column:1/-1}.phead__side{order:2}}

/* ——— Artigo ——— */
.crumbs{display:flex;gap:.5rem;font:500 1rem/1 var(--sans);color:var(--muted);margin-bottom:1.5rem}
.crumbs a{color:var(--accent);text-decoration:none;display:inline-flex;align-items:center;min-height:var(--tap)}
.art-title{font-size:clamp(2rem,1.2rem + 2.8vw,3.75rem);line-height:1.04;letter-spacing:-.016em;max-width:22ch}
.meta{display:grid;gap:.9rem;margin:0}
.meta dt{font:400 .875rem/1.3 var(--sans);color:var(--muted)}
.meta dd{margin:.1rem 0 0;font:500 1rem/1.35 var(--sans);color:var(--text)}
.cover{margin:0}
.cover img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius)}
.v3-reading{padding-top:clamp(3rem,2rem + 3vw,5rem)}
.v3-reading .grid{align-items:start}
.toc{grid-column:1/5;position:sticky;top:1.5rem;font:400 1rem/1.4 var(--sans)}
.toc h2{font:650 1rem/1.3 var(--sans);margin-bottom:.75rem}
.toc ol{list-style:none;display:grid;gap:.15rem;max-width:26ch}
.toc a{display:block;padding:.35rem 0;color:var(--muted);text-decoration:none}
.toc a:hover{color:var(--text)}
.toc a[aria-current="true"]{color:var(--accent)}
@media (max-width:899px){.toc{display:none}}
.v3-prose{grid-column:6/-1;font-family:var(--serif);font-size:var(--step-lead);line-height:1.6;max-width:36em}
.v3-prose>*+*{margin-top:1.05em}
.v3-prose h2{font-size:clamp(1.75rem,1.4rem + 1.2vw,2.375rem);line-height:1.1;letter-spacing:-.012em;margin-top:2.4em;scroll-margin-top:1.5rem}
.v3-prose h3{font-size:1.5rem;line-height:1.2;margin-top:1.8em}
.v3-prose strong{font-weight:600}
.v3-prose a{color:var(--accent)}
.v3-prose ul,.v3-prose ol{padding-left:1.2em}
.v3-prose li+li{margin-top:.4em}
.v3-prose hr{display:none}
.v3-prose table{width:100%;border-collapse:collapse;font:400 1rem/1.4 var(--sans);font-variant-numeric:tabular-nums}
.v3-prose th,.v3-prose td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid var(--line)}
.v3-prose figure{margin-inline:0}
@media (max-width:899px){.v3-prose{grid-column:1/-1}}
.v3-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2.5rem}
.v3-tags a{display:inline-flex;align-items:center;min-height:36px;padding:0 .9rem;border-radius:999px;background:var(--surface);font:500 .875rem/1 var(--sans);text-decoration:none}
.v3-tags a:hover{background:var(--raised)}
.author{display:grid;grid-template-columns:4.5rem 1fr;gap:1.1rem;align-items:center;margin-top:3rem;padding:1.25rem;border-radius:var(--radius);background:var(--surface);font-family:var(--sans)}
.author img{width:4.5rem;height:4.5rem;border-radius:50%;object-fit:cover;object-position:50% 18%}
.author h2{font:600 1rem/1.3 var(--sans);margin:0}
.author p{font-size:1rem;line-height:1.45;color:var(--muted);margin-top:.2rem}

/* ——— Mercado ——— */
.filter{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:center;margin-bottom:1.25rem}
.field-in{display:flex;align-items:center;gap:.6rem;flex:1 1 18rem;max-width:26rem;min-height:var(--tap);padding:0 1rem;border-radius:999px;background:var(--surface);
  box-shadow:inset 0 0 0 1px var(--line)} /* taste-skill-ignore: campo de formulário */
.field-in:focus-within{box-shadow:inset 0 0 0 2px var(--focus)} /* taste-skill-ignore: campo de formulário */
.field-in svg{width:18px;height:18px;color:var(--muted);flex:none}
.field-in input{flex:1;min-width:0;border:0;background:transparent;outline:none;min-height:var(--tap);font:400 1rem/1 var(--sans)}
.field-in input::placeholder{color:var(--muted)}
.table-wrap{background:var(--surface);border-radius:var(--radius);overflow:auto}
table.data{width:100%;border-collapse:collapse;font:400 1rem/1.35 var(--sans);font-variant-numeric:tabular-nums}
.data caption{text-align:left;padding:1rem 1.25rem 0;color:var(--muted);font-size:.875rem}
.data th{font-weight:500;color:var(--muted);text-align:left;padding:.85rem 1.25rem;font-size:.875rem}
.data td{padding:.95rem 1.25rem;border-top:1px solid var(--line)}
.data td:first-child{font-weight:650}
.data .r{text-align:right}
.data tr[hidden]{display:none}
.empty{padding:2rem 1.25rem;color:var(--muted)}
@media (max-width:699px){.data .hide-s{display:none}.data th,.data td{padding-inline:.9rem}}

/* ——— E-book ——— */
.ebhero{padding-block:clamp(3rem,2rem + 4vw,6rem)}
.ebhero .grid{align-items:center;row-gap:2.5rem}
.ebhero__copy{grid-column:1/7}
.ebhero__copy .lead{margin-top:1.5rem}
.ebhero__copy p.v3-small{margin-top:1rem;color:var(--muted)}
.ebhero__art{grid-column:8/-1;background:var(--surface);border-radius:var(--radius);display:grid;place-items:center;padding:clamp(2rem,1rem + 4vw,4.5rem);min-height:min(76svh,44rem)}
.ebhero__art img{width:min(100%,22rem);height:auto;aspect-ratio:2/3;object-fit:contain;border-radius:6px}
@media (max-width:899px){.ebhero__copy,.ebhero__art{grid-column:1/-1}.ebhero__art{min-height:auto}}
.split{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:2rem}
.split>h2{grid-column:1/6}
.split>.split__body{grid-column:6/-1}
@media (max-width:899px){.split>h2,.split>.split__body{grid-column:1/-1}}
.method{list-style:none;display:grid;gap:clamp(2rem,1rem + 2vw,3rem)}
.method li{display:grid;grid-template-columns:minmax(0,12rem) 1fr;gap:var(--gap);align-items:baseline}
.method h3{font-size:var(--step-head);line-height:1;letter-spacing:-.016em}
.method b{display:block;font:600 1rem/1.35 var(--sans)}
.method p{color:var(--muted);margin-top:.3rem}
@media (max-width:599px){.method li{grid-template-columns:1fr;gap:.6rem}}
.chapters{list-style:none;counter-reset:c;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.chapters li{counter-increment:c;display:flex;gap:1rem;align-items:baseline;background:var(--surface);border-radius:var(--radius);padding:1.1rem 1.25rem;font:400 var(--step-lead)/1.25 var(--serif)}
.chapters li::before{content:"Capítulo " counter(c);flex:none;width:6.5rem;font:500 .875rem/1.6 var(--sans);color:var(--muted)}

@media (max-width:699px){.chapters{grid-template-columns:1fr}.chapters li:nth-child(n){background:var(--surface)}.chapters li:nth-child(even){background:var(--raised)}}
.calc{background:var(--surface);border-radius:var(--radius);padding:clamp(1.25rem,1rem + 2vw,2.5rem);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:1.5rem;align-items:end}
.calc__in{grid-column:1/7;display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.calc label{display:grid;gap:.45rem;font:500 1rem/1.3 var(--sans)}
.calc .money{display:flex;align-items:center;gap:.4rem;min-height:52px;padding:0 1rem;border-radius:12px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line)} /* taste-skill-ignore: campo de formulário */
.calc .money:focus-within{box-shadow:inset 0 0 0 2px var(--focus)} /* taste-skill-ignore: campo de formulário */
.calc .money span{color:var(--muted)}
.calc input{flex:1;min-width:0;border:0;background:transparent;outline:none;font:500 1.25rem/1 var(--sans);font-variant-numeric:tabular-nums}
.calc__out{grid-column:8/-1}
.calc__out output{display:block;font:500 var(--step-head)/1 var(--sans);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.calc__out p{margin-top:.6rem;color:var(--muted);font-size:1rem}
.calc__note{grid-column:1/-1;color:var(--muted);font:400 .875rem/1.45 var(--sans)}
@media (max-width:899px){.calc__in,.calc__out{grid-column:1/-1}}
@media (max-width:459px){.calc__in{grid-template-columns:1fr}}
.v3-faq{display:grid;gap:6px}
.v3-faq details{background:var(--surface);border-radius:var(--radius)}
.v3-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.15rem 1.35rem;min-height:var(--tap);font:400 var(--step-lead)/1.25 var(--serif)}
.v3-faq summary::-webkit-details-marker{display:none}
.v3-faq summary::after{content:"";flex:none;width:.6rem;height:.6rem;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg) translate(-2px,-2px);transition:transform var(--d-panel) var(--spring)}
.v3-faq details[open] summary::after{transform:rotate(225deg) translate(-2px,-2px)}
.v3-faq details p{padding:0 1.35rem 1.35rem;color:var(--muted);max-width:62ch}
.expect{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:2rem}
.expect ul{grid-column:6/-1;list-style:none;display:grid;gap:.9rem;font-family:var(--serif);font-size:var(--step-lead);line-height:1.3}
.expect h2{grid-column:1/6}
.expect .note{grid-column:6/-1;background:var(--raised);border-radius:var(--radius);padding:1.25rem 1.4rem;color:var(--text);font-size:1rem}
@media (max-width:899px){.expect ul,.expect h2,.expect .note{grid-column:1/-1}}

/* Transição entre páginas: só um cruzamento curto */
@view-transition{navigation:auto}
::view-transition-old(root),::view-transition-new(root){animation-duration:200ms}

/* Movimento reduzido: sem deslocamento nem escala; só cor e opacidade curtas */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition-property:opacity,color,background-color!important;transition-duration:120ms!important;transition-timing-function:linear!important}
  .btn:active,.icon-btn:active,.tab:active,.band:active,.press:active,.link:hover svg{transform:none}
  .sheet__panel,.menu .sheet__panel{transform:none!important;filter:none!important}
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
}
@media print{.v3-ticker,.top,.mkt-sec,.foot,.toc{display:none}}
.calc label,.calc .money,.calc__in,.calc__out{min-width:0}
.calc input{width:100%}

.phead--art .grid{align-items:start;row-gap:2rem}
.phead__title{grid-column:1/-1}
.phead--art .art-title{max-width:30ch;font-size:var(--step-head)}
.phead--art .meta{grid-template-columns:repeat(2,minmax(0,max-content));column-gap:2.5rem}
@media (max-width:899px){.phead--art .phead__side{order:0}.phead--art .art-title{font-size:clamp(1.875rem,7.4vw,2.5rem);line-height:1.08}}
.ebhero .display .br{display:block}
@media (max-width:899px){.ebhero .display{font-size:clamp(2.75rem,13vw,4.5rem)}}

/* Retrato no vazio do herói (fecha o vazio à esquerda; taste layout.md §5) */
.hero__side{grid-column:1/5;display:grid;gap:1.5rem;align-content:end}
.hero__side img{width:min(100%,17rem);aspect-ratio:4/5;object-fit:cover;object-position:50% 18%;border-radius:var(--radius)}
.hero__side .hero__note{grid-column:auto}
@media (max-width:899px){.hero__side{grid-column:1/-1;grid-row:2;grid-template-columns:6.5rem 1fr;align-items:end;gap:1rem}.hero__side img{width:100%}}
.about__facts dl{gap:1.5rem}
.about__facts dd{font:400 var(--step-lead)/1.25 var(--serif);margin-top:.25rem}
@media (max-width:899px){.about__facts{grid-template-columns:1fr}}
.cols4 strong{display:block;margin-bottom:.25rem}

.split>h2{position:sticky;top:2rem;align-self:start}
@media (max-width:899px){.split>h2{position:static}}
.calc__note,#buy-note{max-width:70ch}
/* ——— Landing do e-book e Sobre ——— */
.ticker__more{flex:none;font-weight:600;color:var(--accent);text-decoration:none;display:inline-flex;align-items:center;min-height:40px}
.ticker__more:hover{text-decoration:underline}
.btn--big{min-height:52px;padding:.85rem 1.75rem;font-size:1.0625rem}
.pending{min-height:var(--h,6rem);margin-top:2rem;padding:1.25rem 1.4rem;border-radius:var(--radius);background:var(--soft);
  outline:2px dashed var(--essential);outline-offset:-2px;display:grid;align-content:center;gap:.35rem;font:400 1rem/1.45 var(--sans);color:var(--muted)} /* taste-skill-ignore: marcador temporário */
.pending strong{color:var(--text);font-weight:650}
.plat{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap);align-items:center;margin-top:3rem}
.plat .pending{margin-top:0}
.fit{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:2rem}
.fit>h2{grid-column:1/-1}
.fit__col{grid-column:span 6;background:var(--surface);border-radius:var(--radius);padding:clamp(1.25rem,1rem + 1.5vw,2rem)}
.fit__col--no{background:var(--raised)}
.fit__col h3{font:650 1rem/1.3 var(--sans);margin-bottom:1rem}
.fit__col ul{list-style:none;display:grid;gap:.75rem;font:400 var(--step-lead)/1.3 var(--serif)}
.fit__col li{padding-left:1.4rem;position:relative}
.fit__col li::before{content:"✓";position:absolute;left:0;font:600 1rem/1.6 var(--sans);color:var(--positive)}
.fit__col--no li::before{content:"✕";color:var(--negative)}
.buy{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:2.5rem;align-items:start}
.buy>div:first-child{grid-column:1/7}
.offer{grid-column:8/-1;background:var(--surface);border-radius:var(--radius);padding:clamp(1.5rem,1rem + 2vw,2.5rem);display:grid;gap:1.25rem}
.offer__price{display:grid;gap:.25rem}
.offer__price b{font:500 var(--step-head)/1 var(--sans);letter-spacing:-.03em}
.offer__list{list-style:none;display:grid;gap:.6rem}
.offer__list li{padding-left:1.4rem;position:relative}
.offer__list li::before{content:"✓";position:absolute;left:0;color:var(--accent);font-weight:700}
.offer .btn{width:100%}
.guarantee{margin-top:2rem;background:var(--raised);border-radius:var(--radius);padding:1.25rem 1.4rem;max-width:44ch}
.guarantee h3{font:650 1rem/1.3 var(--sans);margin-bottom:.35rem}
.creds{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:6px;margin:0}
.creds>div{background:var(--surface);border-radius:var(--radius);padding:1.25rem 1.35rem}
.creds>div:nth-child(even){background:var(--raised)}
.creds dt{font:400 var(--step-lead)/1.2 var(--serif)}
.creds dd{margin:.5rem 0 0;color:var(--muted);font-size:1rem;line-height:1.45}
.quote{margin:2rem 0;font:400 var(--step-lead)/1.3 var(--serif);font-style:italic;max-width:30ch}
.buybar{display:none}
@media (max-width:899px){
  .plat,.buy{grid-template-columns:1fr}.buy>div:first-child,.offer,.fit__col{grid-column:1/-1}
  .has-buybar .buybar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;justify-content:space-between;align-items:center;gap:1rem;
    padding:.6rem var(--m) calc(.6rem + env(safe-area-inset-bottom));background:var(--glass);-webkit-backdrop-filter:blur(20px) saturate(170%);backdrop-filter:blur(20px) saturate(170%);
    box-shadow:0 -1px 0 var(--line)} /* taste-skill-ignore: barra fixa de compra (sticky bar permitida) */
  .has-buybar .buybar b{font:600 1.125rem/1 var(--sans)}
  .has-buybar .foot{padding-bottom:5rem}
}
@media (prefers-reduced-transparency:reduce){.buybar{background:var(--surface)!important;backdrop-filter:none!important}}
/* Correção da moldura em /mercado/: a tabela encosta nas mesmas margens da página (antes ficava 16px recuada à direita) */
.table-wrap{background:transparent;border-radius:0}
.data caption{padding-inline:0}
.data th:first-child,.data td:first-child{padding-left:0}
.data th:last-child,.data td:last-child{padding-right:0}
.empty{padding-inline:0}
.split__body .method li{grid-template-columns:1fr;gap:.5rem}
/* Landing v2 (briefing do Agente de Receita) */
.kicker{font:600 var(--step-small)/1.3 var(--sans);color:var(--muted);margin-bottom:1rem}
.display.lh1{font-size:clamp(2.25rem,1.2rem + 3.6vw,4.25rem);line-height:1.02;max-width:16ch}
.ticks{list-style:none;display:grid;gap:.6rem;margin:2rem 0 1rem;max-width:46ch}
.ticks li{position:relative;padding-left:1.6rem}
.ticks li::before{content:"✓";position:absolute;left:0;color:var(--accent);font-weight:700}
.signs{list-style:none;display:grid;gap:.6rem;margin-top:1rem;font:400 var(--step-lead)/1.3 var(--serif)}
.signs li{background:var(--surface);border-radius:var(--radius);padding:.9rem 1.2rem}
.formula{margin:2rem 0;padding:1.25rem 1.4rem;background:var(--raised);border-radius:var(--radius);font:500 var(--step-lead)/1.3 var(--sans);letter-spacing:-.01em}
#margem .calc{margin-top:1rem}
.flow{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:2rem}
.flow li{position:relative;background:var(--surface);border-radius:var(--radius);padding:1.1rem 1rem;font:400 var(--step-lead)/1.2 var(--serif);text-align:center}
.flow li:last-child{background:var(--button);color:var(--on-button)}
.flow li+li::before{content:"→";position:absolute;left:-.8rem;top:50%;translate:0 -50%;font:600 1rem/1 var(--sans);color:var(--muted);z-index:1}
.toc2{list-style:none;display:grid;gap:6px}
.toc2 li{display:grid;grid-template-columns:9rem 1fr;gap:var(--gap);background:var(--surface);border-radius:var(--radius);padding:1.1rem 1.35rem;align-items:baseline}
.toc2 li:nth-child(even){background:var(--raised)}
.toc2__part{font:600 1rem/1.3 var(--sans);color:var(--muted)}
.toc2 h3{font-size:var(--step-lead);line-height:1.2}
.toc2 p{color:var(--muted);margin-top:.3rem;max-width:70ch}
.phases{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:1.5rem}
.phases li{background:var(--text);color:var(--bg);border-radius:var(--radius);padding:1.1rem 1.35rem;font:400 var(--step-lead)/1.2 var(--serif)}
.phases b{display:block;font:600 1rem/1.3 var(--sans);opacity:.8;margin-bottom:.3rem}
.pages{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap);margin-bottom:2rem}
.pages img{width:100%;aspect-ratio:595/842;object-fit:cover;border-radius:6px;background:#fff}
@media (max-width:899px){
  .flow{grid-template-columns:1fr}.flow li+li::before{content:"↓";left:50%;top:-.75rem;translate:-50% 0}
  .toc2 li{grid-template-columns:1fr;gap:.3rem}
  .phases{grid-template-columns:1fr}
  .pages{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1*var(--m));padding-inline:var(--m)}
  .pages li{flex:0 0 72%;scroll-snap-align:start}
  .has-buybar .buybar{transition:opacity 180ms ease,transform var(--d-panel) var(--spring)}
  .has-buybar .buybar[data-hidden]{opacity:0;transform:translateY(100%);pointer-events:none;visibility:hidden}
}
.hero__side picture,.about__facts picture{display:block}.creds a{color:var(--accent)}
.appshots{display:grid;gap:clamp(1.5rem,3vw,2.5rem);margin-top:clamp(2rem,4vw,3rem)}
.appshot{margin:0;min-width:0}
.appshot img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid var(--line,rgba(0,0,0,.12))}
.appshot figcaption{margin-top:.5rem;font-size:.8125rem;color:var(--muted)}
@media (max-width:599px){.appshot img{max-width:24rem;margin-inline:auto}.appshot--wide{display:none}}
/* ——— Extensão 46 rotas ——— */
.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}
.chips a{display:inline-flex;align-items:center;gap:.4rem;min-height:var(--tap,44px);padding:0 1rem;border-radius:999px;background:var(--surface);color:var(--text);text-decoration:none;font:500 .9375rem/1 var(--sans)}
.chips a .num{color:var(--muted)}
.chips a[aria-current="page"]{background:var(--button);color:var(--on-button)}
.chips a[aria-current="page"] .num{color:inherit}
.list-status{margin-bottom:.5rem}
.pager{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2.5rem;font:500 1rem/1 var(--sans)}
.pager a{display:inline-flex;align-items:center;justify-content:center;min-width:var(--tap,44px);min-height:var(--tap,44px);padding:0 .9rem;border-radius:999px;color:var(--text);text-decoration:none;background:var(--surface)}
.pager a[aria-current="page"]{background:var(--button);color:var(--on-button)}
.sources{margin-top:3rem;font:400 1rem/1.5 var(--sans)}
.sources h2{font:650 1rem/1.3 var(--sans);margin:0 0 .5rem}
.sources ul{padding-left:1.2em}
.v3-prose .table-wrap{overflow-x:auto;max-width:100%}
.contact{display:grid;gap:1rem;min-width:0}
.contact label{display:grid;gap:.4rem;font:500 1rem/1.3 var(--sans)}
.contact input,.contact select,.contact textarea{min-width:0;width:100%;min-height:var(--tap,44px);padding:.6rem .8rem;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);font:400 1rem/1.4 var(--sans)} /* taste-skill-ignore */
.linklist{list-style:none;display:grid;gap:.25rem;padding:0}
.linklist a{display:inline-flex;align-items:center;min-height:var(--tap,44px);color:var(--accent);font:500 1.0625rem/1.2 var(--sans)}
.author picture{flex:none}
@media (min-width:900px){.appshots{grid-template-columns:1fr 1fr}.appshots .appshot:first-child{grid-column:1/-1}}
.chapters--mod li::before{content:counter(c,decimal-leading-zero);width:2rem}.chapters li>span{min-width:0}
/* Prova social (sem avatar, sem sombra em repouso) */
.proof__note{margin:0 0 1rem;font:400 var(--step-small)/1.45 var(--sans);color:var(--muted);max-width:32ch}
.proof__list{list-style:none;padding:0;display:grid;gap:6px;min-width:0}
.proof__item{margin:0;background:var(--surface);border-radius:var(--radius);padding:clamp(1.25rem,1rem + 1vw,2rem)}
.proof__item blockquote{margin:0;font:400 var(--step-lead)/1.4 var(--serif);color:var(--text)}
.proof__item figcaption{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.25rem .75rem;font:400 1rem/1.4 var(--sans);color:var(--muted)}
.proof__item figcaption b{color:var(--text);font-weight:600}

/* 0.3.1-s2 additions */
.nav .nav__sec{color:var(--muted);margin-left:.75rem;padding-left:1rem;border-left:1px solid var(--line)}
.foot p,.foot small,.foot li,.foot span{color:inherit}
.foot__reg a{color:inherit}

/* 0.3.2-s2 — ticker (compact layout below 600px, Design asked <480; 480–599 tested too narrow for tag+link): gesture/keyboard scroll only, never auto-animated, no number ever cut */
.ticker__list{scroll-snap-type:x mandatory;overscroll-behavior-x:contain}
.ticker__list li{white-space:nowrap;overflow:visible;text-overflow:clip}
.ticker__list:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
@media (max-width:599.98px){
  .ticker__tag{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
  .ticker__more{display:none}
  .ticker__in{gap:0}
  /* one complete item per snap position: nothing can sit half outside the strip */
  .ticker__list{gap:0;padding-right:0}
  .ticker__list li{flex:0 0 100%;justify-content:flex-start}
}
@media (min-width:600px){.ticker__list{scroll-snap-type:x proximity}}
/* items cut by the strip edge are hidden visually (still in the DOM/AT; scrolling reveals them) — ticker-fit.js */
.ticker__list li[data-cut]{opacity:0}.ticker__list li[data-cut]:focus-within{opacity:1}

/* 0.3.4-s2: tokens que o jcf-consent espera (definidos no baseline/appearance das páginas legadas, ausentes nas páginas v3) */
.jcf-privacy{--field-border:var(--essential);--field-fill:var(--raised);--notice-fill:var(--soft);--text-secondary:var(--muted);--border:var(--line);--font-sans:var(--sans);--shadow:0 12px 32px #0000002e;font-family:var(--sans)}

/* 0.3.5-s2: banner do jcf-consent unificado (todas as páginas). Só tipografia/layout, escopo .jcf-privacy; cores continuam dos tokens existentes
   (páginas v3: mapeamento acima em site.css; páginas legadas: baseline/appearance). --sans é redefinido aqui porque nas legadas ele só existe dentro de .jc-v3-shell. */
.jcf-privacy{--sans:system-ui,-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-sans:var(--sans);font-family:var(--sans)}
.jcf-privacy :is(h2,p,button,strong){font-family:var(--sans)}
.jcf-privacy .jcf-privacy__banner h2,.jcf-privacy .jcf-privacy__dialog h2{font-family:var(--sans);font-weight:600;font-style:normal}
/* Páginas legadas no modo escuro não definem --field-border (appearance.css só o define no claro): sem fallback a borda some (shorthand inválido).
   Fallback = --essential escuro do v3 (#91a7aa). Onde o token existe (legadas claro; v3 via mapeamento acima) ele continua valendo. */
.jcf-privacy .jcf-privacy__banner,.jcf-privacy .jcf-privacy__dialog,.jcf-privacy :is(.jcf-privacy__banner,.jcf-privacy__dialog) button{border:1px solid var(--field-border,#91a7aa)}
.jcf-privacy :is(.jcf-privacy__banner,.jcf-privacy__dialog) button:hover{border-color:var(--accent)}
@media (prefers-contrast:more){.jcf-privacy :is(.jcf-privacy__banner,.jcf-privacy__dialog) button{border-color:var(--text)}}
.jcf-privacy .jcf-privacy__close{border:1px solid var(--field-border,#91a7aa)}
/* < 600px: Aceitar/Recusar lado a lado com mesmo peso (LGPD); Gerenciar como link ao lado de Privacidade/Cookies. Desktop inalterado. */
@media (max-width:599.98px){
.jcf-privacy .jcf-privacy__banner{inset:auto .5rem .5rem;padding:.875rem 1rem;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;gap:.375rem .5rem}
.jcf-privacy .jcf-privacy__banner :is(.jcf-privacy__copy,.jcf-privacy__actions,.jcf-privacy__links){display:contents}
.jcf-privacy .jcf-privacy__banner h2{grid-row:1;grid-column:1/-1}
.jcf-privacy .jcf-privacy__banner .jcf-privacy__copy>p:not(.jcf-privacy__links){grid-row:2;grid-column:1/-1;margin:0}
.jcf-privacy .jcf-privacy__banner .jcf-privacy__links a{grid-row:3;grid-column:span 2;justify-self:start;display:inline-flex;align-items:center;min-height:2.75rem;padding-block:0;font-size:.9375rem}
.jcf-privacy .jcf-privacy__banner .jcf-privacy__links a:first-child{grid-column:1/3}
.jcf-privacy .jcf-privacy__banner button[data-jcf-privacy-action="manage"]{grid-row:3;grid-column:5/7;justify-self:start;min-height:2.75rem;min-width:2.75rem;padding:0 .125rem;border:0;border-radius:.25rem;background:transparent;color:var(--accent);font-size:.9375rem;font-weight:400;line-height:1.35;text-align:left;text-decoration:underline;text-underline-offset:.2em}
.jcf-privacy .jcf-privacy__banner button[data-jcf-privacy-action="manage"]:hover{background:transparent;text-decoration-thickness:2px}
.jcf-privacy .jcf-privacy__banner button[data-jcf-privacy-action="accept"]{grid-row:4;grid-column:1/4}
.jcf-privacy .jcf-privacy__banner button[data-jcf-privacy-action="reject"]{grid-row:4;grid-column:4/7}
.jcf-privacy .jcf-privacy__banner :is(button[data-jcf-privacy-action="accept"],button[data-jcf-privacy-action="reject"]){width:100%;min-height:2.75rem;padding:.5rem .375rem;white-space:normal}
}
@media (max-width:599.98px) and (prefers-contrast:more){.jcf-privacy .jcf-privacy__banner button[data-jcf-privacy-action="manage"]{border:0}}

/* 0.3.6 — ticker marquee (JS adds .is-marquee only when motion is allowed; reduced motion stays static) */
@keyframes jcf-marquee{from{transform:translateX(0)}to{transform:translateX(calc(-1*var(--jcf-shift,0px)))}}
.v3-ticker.is-marquee .ticker__list{overflow:hidden;scroll-snap-type:none;padding-right:0;gap:0}
.v3-ticker.is-marquee .ticker__list li{flex:none;padding-right:1.75rem;animation:jcf-marquee var(--jcf-dur,40s) linear infinite;will-change:transform}
.v3-ticker.is-marquee .ticker__list li[data-cut]{opacity:1;visibility:visible}
.v3-ticker.is-marquee:hover .ticker__list li,.v3-ticker.is-marquee .ticker__list:focus-within li,.v3-ticker.is-marquee .ticker__list:focus li{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){.v3-ticker.is-marquee .ticker__list li{animation:none!important;transform:none!important}}

/* 0.3.13 — e-book: open-book section (item 07) */
.ebopen__fig{margin:0;border-radius:var(--radius);overflow:hidden;background:var(--surface)}.ebopen__fig img{display:block;width:100%;height:auto;aspect-ratio:16/10}
/* 0.3.14 — Sobre: Documentos e políticas (#documentos) */
#documentos{scroll-margin-top:6rem}
.docs__body{max-width:62ch}
.docs__body p{margin:0 0 1rem;overflow-wrap:anywhere}
.docs__body a{color:var(--accent)}
.docs__list{list-style:none;margin:1.5rem 0 2rem;padding:0;display:grid;gap:6px}
.docs__list li{background:var(--surface);border-radius:var(--radius);padding:1rem 1.25rem;line-height:1.45}
.docs__list li:nth-child(even){background:var(--raised)}
.docs__list a{text-decoration:underline;text-underline-offset:.2em;overflow-wrap:anywhere}
.docs__list a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.docs__pdf{display:inline-block;margin-left:.35rem;padding:.05rem .4rem;border:1px solid var(--accent);border-radius:4px;font-size:.72rem;font-weight:600;letter-spacing:.04em;vertical-align:.12em;text-decoration:none}
.docs__meta{display:block;color:var(--muted);font-size:.95rem;margin-top:.2rem}
