/* The Guanabara Times — site (P&B, estilo impresso do NYT) */
@font-face{font-family:"Masthead";src:url("fonts/UnifrakturMaguntia-Regular.woff2") format("woff2");font-display:swap}
@font-face{font-family:"Playfair Display";src:url("fonts/PlayfairDisplay-VariableFont_wght.woff2") format("woff2");font-weight:400 900;font-display:swap}
@font-face{font-family:"Playfair Display";src:url("fonts/PlayfairDisplay-Italic-VariableFont_wght.woff2") format("woff2");font-weight:400 900;font-style:italic;font-display:swap}
@font-face{font-family:"Libre Baskerville";src:url("fonts/LibreBaskerville-VariableFont_wght.woff2") format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"Libre Baskerville";src:url("fonts/LibreBaskerville-Italic-VariableFont_wght.woff2") format("woff2");font-weight:400 700;font-style:italic;font-display:swap}
@font-face{font-family:"Old Standard";src:url("fonts/OldStandardTT-Regular.woff2") format("woff2");font-display:swap}
@font-face{font-family:"Old Standard";src:url("fonts/OldStandardTT-Bold.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Old Standard";src:url("fonts/OldStandardTT-Italic.woff2") format("woff2");font-style:italic;font-display:swap}

:root{--ink:#111;--muted:#555;--rule:#111;--hair:#c8c8c8;--paper:#fff;--wrap:1200px;
  --serif:"Libre Baskerville",Georgia,"Times New Roman",serif;
  --head:"Playfair Display",Georgia,serif;--date:"Old Standard","Times New Roman",serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:16px;line-height:1.6}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:6px;z-index:9}

.preview-banner{background:#111;color:#fff;text-align:center;font:700 13px/1.4 var(--date);letter-spacing:.12em;text-transform:uppercase;padding:8px 12px}

/* cabeçalho */
.topbar{display:flex;justify-content:space-between;gap:12px;font:13px/1.3 var(--date);padding:10px 0 4px;color:var(--ink)}
.topbar a{text-decoration:underline}
.masthead{text-align:center;padding:4px 0 6px}
.masthead a{font-family:"Masthead",var(--head);font-weight:400;font-size:clamp(34px,7.4vw,82px);line-height:1.05;display:inline-block;text-decoration:none}
.masthead .motto{font:italic 13px/1.3 var(--date);margin-top:2px}
.rule-dbl{border:0;border-top:1px solid var(--rule);border-bottom:3px double var(--rule);height:5px;margin:0}
.dateline{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;border-bottom:1px solid var(--rule);padding:6px 0;font:13px/1.35 var(--date);text-transform:uppercase;letter-spacing:.06em}
.dateline .c{text-align:center;font-weight:700}
.dateline .r{text-align:right}
.secnav{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 22px;padding:8px 0;border-bottom:1px solid var(--rule);font:14px/1.3 var(--date);letter-spacing:.04em}
.secnav a[aria-current]{font-weight:700;text-decoration:underline}

/* tipografia */
.kicker{font:700 12px/1.2 var(--date);text-transform:uppercase;letter-spacing:.14em;margin:0 0 6px}
h1,h2,h3{font-family:var(--head);font-weight:700;line-height:1.15;margin:0 0 .35em}
.h-xl{font-size:clamp(28px,4.2vw,46px);font-weight:800;letter-spacing:-.005em}
.h-l{font-size:clamp(23px,2.6vw,30px)}
.h-m{font-size:clamp(19px,1.9vw,22px)}
.h-s{font-size:18px}
.deck{font:italic 400 clamp(17px,1.6vw,19px)/1.45 var(--serif);color:#222;margin:.2em 0 .7em}
.byline{font:12px/1.3 var(--date);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0 0 12px}
.story p{margin:0 0 .85em;hyphens:auto;-webkit-hyphens:auto}
.dropcap::first-letter{float:left;font:700 3.6em/.82 var(--head);padding:.06em .08em 0 0}
.why{font-style:italic;border-top:1px solid var(--hair);padding-top:.6em}
.more{font:700 12px/1 var(--date);text-transform:uppercase;letter-spacing:.12em;text-decoration:underline}
.fontes{font-size:13px;color:#333;border-top:1px solid var(--rule);padding-top:8px;margin-top:18px}
.section-title{display:flex;align-items:baseline;justify-content:space-between;border-top:3px double var(--rule);border-bottom:1px solid var(--rule);margin:30px 0 16px;padding:6px 0}
.section-title h2{font:700 15px/1.2 var(--date);text-transform:uppercase;letter-spacing:.18em;margin:0}
.section-title a{font:13px var(--date)}

/* fotos */
figure{margin:0 0 16px}
figure img{width:100%;background:#eee}
figure.crop img{aspect-ratio:3/2;object-fit:cover}
figcaption{font:12.5px/1.45 var(--serif);color:#333;margin-top:6px}
figcaption .credit{display:inline-block;font:11.5px/1.4 var(--date);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
figcaption .credit a{text-decoration:underline}

/* capa */
.front{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);gap:0}
.front>.main{padding-right:22px;border-right:1px solid var(--rule)}
.front>.side{padding-left:22px}
.side article{border-bottom:1px solid var(--hair);padding-bottom:14px;margin-bottom:14px}
.side article:last-child{border-bottom:0}
.lead-2col{columns:2;column-gap:24px;column-rule:1px solid var(--hair)}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.grid3>*{padding:0 18px;border-left:1px solid var(--hair)}
.grid3>*:first-child{padding-left:0;border-left:0}
.grid3>*:last-child{padding-right:0}
.world-top{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--hair)}

/* artigo */
.article{max-width:720px;margin:28px auto 0}
.article header{text-align:left;margin-bottom:14px}
.article figure{margin:18px 0 22px}
.article .story{font-size:17.5px;line-height:1.7}
.article-wide{max-width:960px;margin:28px auto 0}
.related{max-width:720px;margin:30px auto 0;border-top:3px double var(--rule);padding-top:10px}
.related ul{list-style:none;margin:0;padding:0}
.related li{border-bottom:1px solid var(--hair);padding:8px 0;font:700 16px/1.3 var(--head)}
.related li small{display:block;font:12px var(--date);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}

/* polymarket */
.pmbox{border:1px solid var(--rule);padding:10px 14px;margin:18px 0;font-size:14px}
.pmbox h3{font:700 12px/1.2 var(--date);text-transform:uppercase;letter-spacing:.14em;margin:0 0 6px}
.pmbox p{margin:0 0 4px}
.pm-market{font-style:italic}
.pm-when{font-size:12px;color:var(--muted)}

/* finanças */
.mkt{width:100%;border-collapse:collapse;font:14px/1.35 var(--date)}
.mkt caption{text-align:left;font:700 13px var(--date);text-transform:uppercase;letter-spacing:.14em;padding-bottom:6px;border-bottom:2px solid var(--rule)}
.mkt th{font-weight:700;text-align:left;border-bottom:1px solid var(--rule);padding:6px 6px 4px}
.mkt td{border-bottom:1px solid var(--hair);padding:6px}
.mkt .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.mkt-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 18px}

/* X */
.x-topic{border-top:1px solid var(--rule);padding-top:14px;margin-top:22px}
.x-tone{font-size:15px}
.bar{display:flex;border:1px solid var(--rule);margin:8px 0 4px;font:11px/1.25 var(--date);text-transform:uppercase;letter-spacing:.04em}
.bar span{padding:5px 6px;border-left:1px solid var(--rule);overflow:hidden}
.bar span:first-child{border-left:0}
.bar .neu{background:#fff}.bar .pos{background:#d9d9d9}.bar .neg{background:#111;color:#fff}
.bar .lefts{background:#bdbdbd}.bar .rights{background:#555;color:#fff}
.bar-note{font:italic 11.5px var(--date);color:var(--muted);margin:0 0 10px}
.lr{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:10px 0}
.lr h4{font:700 12px var(--date);text-transform:uppercase;letter-spacing:.12em;margin:0 0 4px}
.lr p{margin:0;font-size:15px}
.xpost{border-left:3px solid var(--rule);padding:4px 0 4px 14px;margin:12px 0;font-size:15px}
.xpost .who{font:700 14px var(--date)}
.xpost .who a{text-decoration:underline}
.xpost .metrics{font:12px var(--date);color:var(--muted)}
.xpost p{margin:4px 0}
.xpost .orig{font:12px var(--date);text-decoration:underline}
.x-method{font-size:13px;font-style:italic;color:#333;margin-top:20px}

/* passatempos */
.cw{display:grid;grid-template-columns:auto minmax(0,1fr);gap:28px;align-items:start}
.cw table.grid{border-collapse:collapse;border:2px solid var(--rule)}
.cw table.grid td{width:34px;height:34px;border:1px solid var(--rule);position:relative;padding:0}
.cw table.grid td.black{background:#111}
.cw .num{position:absolute;top:1px;left:2px;font:9px/1 var(--date)}
.cw input{width:100%;height:100%;border:0;background:transparent;text-align:center;font:700 17px var(--head);text-transform:uppercase;padding:8px 0 0;border-radius:0}
.cw input:focus{outline:2px solid #111;background:#eee}
.clues{display:grid;grid-template-columns:1fr 1fr;gap:20px;font-size:14.5px}
.clues h3{font:700 13px var(--date);text-transform:uppercase;letter-spacing:.14em;border-bottom:1px solid var(--rule);padding-bottom:4px}
.clues p{margin:0 0 6px}
.seven{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.seven img{border:1px solid var(--rule)}
details.answers{border:1px solid var(--rule);padding:10px 14px;margin:20px 0}
details.answers summary{cursor:pointer;font:700 13px var(--date);text-transform:uppercase;letter-spacing:.12em}
.light{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.light>section{padding:0 18px;border-left:1px solid var(--hair)}
.light>section:first-child{padding-left:0;border-left:0}

/* acervo / pdf */
.pdf-cta{display:inline-block;border:1px solid var(--rule);padding:8px 14px;font:700 13px var(--date);text-transform:uppercase;letter-spacing:.1em;text-decoration:none}
.pdf-cta:hover{background:#111;color:#fff;text-decoration:none}
.archive{list-style:none;padding:0;margin:0}
.archive li{display:grid;grid-template-columns:200px 1fr auto;gap:18px;border-bottom:1px solid var(--hair);padding:14px 0;align-items:baseline}
.archive .d{font:14px var(--date);text-transform:uppercase;letter-spacing:.06em}

footer.site{margin-top:46px;border-top:3px double var(--rule);padding:16px 0 30px;text-align:center;font:13px/1.6 var(--date);color:#333}
footer.site .name{font:28px/1.2 "Masthead",var(--head)}
footer.site a{text-decoration:underline}

@media (max-width:900px){
  .front{grid-template-columns:1fr}
  .front>.main{padding-right:0;border-right:0;border-bottom:1px solid var(--rule);padding-bottom:16px;margin-bottom:16px}
  .front>.side{padding-left:0}
  .grid3,.light{grid-template-columns:1fr}
  .grid3>*,.light>section{padding:0;border-left:0;border-top:1px solid var(--hair);padding-top:14px;margin-top:14px}
  .grid3>*:first-child,.light>section:first-child{border-top:0;margin-top:0;padding-top:0}
  .world-top{grid-template-columns:1fr}
  .cw{grid-template-columns:1fr}
  .archive li{grid-template-columns:1fr}
}
@media (max-width:600px){
  body{font-size:16px}
  .wrap{padding:0 14px}
  .topbar{font-size:12px}
  .dateline{grid-template-columns:1fr;text-align:center;gap:2px}
  .dateline .l,.dateline .r{text-align:center}
  .secnav{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;gap:18px;white-space:nowrap}
  .lead-2col{columns:1}
  .lr,.clues,.seven{grid-template-columns:1fr}
  .article .story{font-size:17px}
  .cw table.grid td{width:28px;height:28px}
  .cw input{font-size:15px;padding-top:6px}
  .bar{flex-wrap:wrap}
}
@media print{.secnav,.topbar,.preview-banner,footer.site{display:none}}

.see-also{font:italic 15px/1.4 var(--serif);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:8px 0;margin:6px 0 14px}
.see-also a{text-decoration:underline}

/* sem recorte destrutivo: fotos sempre na proporção original */
figure.crop img{aspect-ratio:auto;object-fit:contain}
.jump{font:italic 14px/1.3 var(--date);margin:4px 0 8px}
.jump a{text-decoration:underline}
.cont-head{margin-top:1.2em;border-top:1px solid var(--hair);padding-top:.6em}
.note h3{font-size:17px}
.tnote{font:italic 12.5px/1.45 var(--serif);color:#333;margin:6px 0 0}
.chamadas{border-top:3px double var(--rule);margin-top:10px;padding-top:8px}
.chamadas h3{font:700 12px var(--date);text-transform:uppercase;letter-spacing:.14em;margin:0 0 6px}
.chamada{border-bottom:1px solid var(--hair);padding:6px 0}
.chamada h4{font:700 16px/1.25 var(--head);margin:0 0 2px}
.chamada p{margin:0;font-size:14.5px}
.chamada .pg{font:12px var(--date);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}
.chamada .pg a,.see-also a{text-decoration:underline}
.numbox{border:1px solid var(--rule);padding:12px 14px;margin:18px 0;font-size:14.5px}
.numbox h3{font:700 13px var(--date);text-transform:uppercase;letter-spacing:.12em;margin:0 0 8px}
.nb-sub{font:italic 13px var(--serif);margin:0 0 8px}
.range{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0}
.range dt{font:700 15px var(--head);white-space:nowrap}
.range dd{margin:0}
.cbar{margin:0 0 8px}
.cbar-l{font-size:13.5px}
.cbar-t{display:flex;align-items:center;gap:8px}
.cbar-f{display:block;height:14px;background:#111}
.cbar-f.light{background:#9a9a9a}
.cbar-v{font:700 13px var(--date);white-space:nowrap}
.gtable td,.gtable th{font-size:13.5px}
.results{border-top:1px solid var(--rule);margin-top:16px;padding-top:8px;font-size:14.5px}
.results p{margin:4px 0}

/* Opinião (estilo NYT Opinion) */
.opinion .op-band{border-top:4px solid var(--rule);border-bottom:1px solid var(--rule);padding:6px 0;margin-bottom:18px;font:700 14px var(--date);text-transform:uppercase;letter-spacing:.2em}
.op-selo{display:inline-block;background:#111;color:#fff;font:700 11px/1 var(--date);text-transform:uppercase;letter-spacing:.2em;padding:6px 10px;margin:0 0 10px}
.op-title{font-family:var(--head);font-style:italic;font-weight:500;font-size:clamp(30px,4.4vw,48px);line-height:1.12;margin:0 0 .4em}
.op-title-s{font-size:clamp(22px,2.4vw,28px)}
.op-note{font:italic 13px/1.45 var(--date);color:var(--muted);border-left:3px solid var(--rule);padding-left:10px}
.opinion .story{font-size:18px;line-height:1.75}
.op-sign{font:italic 15px var(--serif);text-align:right}
.op-slot{background:#f3f3f3;padding:0 18px 16px;margin-top:30px}
.op-slot .section-title{margin-top:0;padding-top:10px}
