 

.pg-hero.art-hero h1{font-size:clamp(30px,4.6vw,58px);line-height:1.08;max-width:24ch}
.pg-hero.art-hero .lead{text-align:left;font-family:var(--serif);font-style:italic;font-size:clamp(17px,1.7vw,22px);max-width:46ch}

 
.legal.art .wrap,.legal.art-idx .wrap{max-width:calc(clamp(760px,60vw,1020px) + 2 * var(--pad-x))}
.legal.art{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere}
.legal.art p,.legal.art li{color:var(--paper-dim);font-size:16.5px;line-height:1.85;text-align:justify}
.legal.art h2{font-size:clamp(22px,2.4vw,28px);line-height:1.25;margin:46px 0 14px}
.legal.art h3{font-family:var(--serif);font-size:19px;font-weight:400;margin:28px 0 8px;color:var(--paper)}
.legal.art ul,.legal.art ol{padding-left:1.3em;margin:0 0 18px}
.legal.art li{margin-bottom:9px}
.legal.art strong{color:var(--paper);font-weight:500}

 
.art-lang{display:flex;gap:18px;flex-wrap:wrap;margin:0 0 22px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.art-lang a{color:var(--steel-300);border-bottom:1px solid transparent;padding:6px 0}
.art-lang a:hover{color:var(--amber);border-color:var(--amber)}
.art-lang span{color:var(--amber);padding:6px 0;border-bottom:1px solid var(--amber)}

 
.art-fig{position:relative;margin:0 0 38px}
.art-fig img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;filter:saturate(.85) brightness(.92)}
.cap{position:absolute;bottom:8px;right:12px;z-index:3;font-weight:300;font-size:8px;line-height:1;letter-spacing:.08em;color:rgba(237,239,242,.92);text-shadow:0 0 2px rgba(0,0,0,.6)}

 
.legal.art table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin:24px 0 28px;font-size:14.5px;line-height:1.55}
.legal.art th,.legal.art td{border:1px solid var(--concrete-700);padding:9px 12px;text-align:left;vertical-align:top;color:var(--paper-dim);hyphens:manual;overflow-wrap:normal;word-break:normal}
.legal.art th{background:rgba(237,239,242,.06);color:var(--paper);font-weight:500}
@media(max-width:600px){.legal.art th,.legal.art td{min-width:150px}}

 
.legal.art details.refs{margin:36px 0 8px;border-top:1px solid var(--concrete-700);padding-top:14px}
.legal.art details.refs summary{cursor:pointer;color:var(--paper-dim);font-size:13.5px;letter-spacing:.08em;text-transform:uppercase;list-style:none;padding:6px 0;min-height:44px;display:flex;align-items:center;gap:10px}
.legal.art details.refs summary::-webkit-details-marker{display:none}
.legal.art details.refs summary::before{content:'+';color:var(--amber);font-size:18px;width:14px;flex:none;text-align:center}
.legal.art details.refs[open] summary::before{content:'–'}
.legal.art details.refs ol{margin-top:10px}
.legal.art details.refs li{font-size:13.5px;line-height:1.55;text-align:left}

.legal.art .autoria{font-family:var(--serif);font-style:italic;font-size:13px;opacity:.75;margin-top:30px;padding-top:14px;border-top:1px solid var(--concrete-700);text-align:right}

 
.art-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:32px}
.art-card{display:block;color:inherit;border:0!important}
.art-card-img{position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--concrete-950)}
.art-card-img img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.85) brightness(.92);transition:transform .6s ease}
.art-card:hover .art-card-img img{transform:scale(1.04)}
.art-card-cat{font-family:var(--mono);font-size:10px;color:var(--amber);letter-spacing:.24em;text-transform:uppercase;margin:16px 0 8px}
.legal .art-card-t{font-family:var(--serif);font-size:21px;font-weight:400;line-height:1.3;color:var(--paper);margin:0}
.art-card:hover .art-card-t{color:var(--amber-bright)}
@media(prefers-reduced-motion:reduce){.art-card-img img{transition:none}}

 
.rolagem{overflow-x:auto}
table.creditos{width:100%;border-collapse:collapse;font-size:13px;margin:14px 0 28px}
table.creditos th{text-align:left;font-weight:500;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--paper-dim);padding:0 12px 9px 0;border-bottom:1px solid var(--concrete-700)}
table.creditos td{padding:9px 12px 9px 0;border-bottom:1px solid rgba(255,255,255,.08);vertical-align:top;color:var(--steel-300)}
table.creditos td:first-child{color:var(--amber)}
