:root{
    --ledger-ink:#102a33;
    --ledger-paper:#f3e5cd;
    --ledger-paper-light:#f8efdf;
    --ledger-rust:#a84622;
    --ledger-leather:#60361f;
    --ledger-sand:#dfc09b;
    --ledger-dark:#15120e
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.05),transparent 30%),#17140f;
    color:var(--ledger-paper);
    font-family:Georgia,"Times New Roman",serif
}
button,input,select,textarea{font:inherit}
.ledger-site-header{
    min-height:56px;
    padding:0 4vw;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    border-bottom:1px solid rgba(223,192,155,.14);
    background:#100e0b
}
.ledger-site-header>a{
    color:var(--ledger-sand);
    text-decoration:none;
    font:700 9px Arial,sans-serif;
    letter-spacing:4px
}
.ledger-site-header nav{display:flex;gap:18px}
.ledger-site-header nav a{
    color:rgba(243,229,205,.54);
    text-decoration:none;
    font:700 7px Arial,sans-serif;
    letter-spacing:1.7px
}
.ledger-site-header nav a:hover{color:var(--ledger-paper)}
.ledger-shell{
    width:min(1500px,96vw);
    margin:0 auto;
    padding:34px 0 70px
}
.ledger-site-masthead{
    padding:22px 30px 18px;
    background:var(--ledger-paper);
    color:#18130f;
    box-shadow:0 18px 55px rgba(0,0,0,.32)
}
.ledger-double-rule{
    height:5px;
    border-top:1px solid currentColor;
    border-bottom:1px solid currentColor
}
.ledger-site-masthead>span{
    display:block;
    margin:11px 0 6px;
    color:var(--ledger-leather);
    text-align:center;
    font:700 7px Arial,sans-serif;
    letter-spacing:4px
}
.ledger-site-masthead h1{
    margin:0;
    text-align:center;
    font-family:"Times New Roman",Georgia,serif;
    font-size:clamp(48px,7.5vw,108px);
    font-weight:900;
    line-height:.88;
    letter-spacing:-4px
}
.ledger-site-meta{
    margin:11px 0;
    display:grid;
    grid-template-columns:1fr auto 1fr;
    gap:18px;
    font:700 7px Arial,sans-serif;
    letter-spacing:1.2px
}
.ledger-site-meta b:nth-child(2){text-align:center}
.ledger-site-meta b:last-child{text-align:right}
.ledger-edition-layout{
    margin-top:24px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 230px;
    gap:20px;
    align-items:start
}
.ledger-current,.ledger-archive{
    border:1px solid rgba(223,192,155,.16);
    background:#201b15
}
.ledger-current{padding:28px}
.ledger-current-heading{
    margin-bottom:22px;
    display:flex;
    justify-content:space-between;
    gap:30px
}
.ledger-current-heading>div:first-child{max-width:760px}
.ledger-current-heading span,.ledger-archive>span{
    color:var(--ledger-rust);
    font:700 7px Arial,sans-serif;
    letter-spacing:3px
}
.ledger-current-heading h2{
    margin:7px 0 5px;
    font-size:clamp(30px,3.2vw,48px);
    font-weight:400;
    line-height:1
}
.ledger-current-heading p{
    max-width:680px;
    margin:0;
    color:rgba(243,229,205,.52);
    font:400 10px/1.65 Arial,sans-serif
}
.ledger-current-actions{
    min-width:175px;
    display:grid;
    align-content:end;
    gap:8px
}
.ledger-current-actions button{
    min-height:42px;
    padding:0 14px;
    border:1px solid var(--ledger-rust);
    background:var(--ledger-rust);
    color:#fff;
    cursor:pointer;
    font:700 7px Arial,sans-serif;
    letter-spacing:1.5px
}
.ledger-current-actions button+button{
    border-color:rgba(223,192,155,.25);
    background:transparent;
    color:var(--ledger-sand)
}
.ledger-reader{
    border:1px solid rgba(223,192,155,.16);
    background:#0f0d0b
}
.ledger-reader>header,.ledger-reader>footer{
    min-height:43px;
    padding:0 14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    color:rgba(243,229,205,.45);
    font:700 7px Arial,sans-serif;
    letter-spacing:1.4px
}
.ledger-reader>header{border-bottom:1px solid rgba(223,192,155,.12)}
.ledger-reader>footer{border-top:1px solid rgba(223,192,155,.12)}
.ledger-reader-stage{position:relative;padding:18px 45px}
.ledger-spread{
    position:relative;
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:start;
    perspective:1700px;
    filter:drop-shadow(0 16px 22px rgba(0,0,0,.32))
}
.ledger-page{
    width:100%;
    aspect-ratio:210/297;
    min-width:0;
    padding:clamp(18px,2.1vw,30px);
    overflow:hidden;
    background:linear-gradient(rgba(96,54,31,.018),rgba(96,54,31,.018)),var(--ledger-paper-light);
    color:#18130f;
    box-shadow:inset 0 0 30px rgba(96,54,31,.07);
    transform-style:preserve-3d
}

/* ========================================
   LEITOR — ESCALA REAL DA FOLHA
======================================== */

.ledger-page.ledger-page-scaled {
    position: relative;
    padding: 0;
}

.ledger-page.ledger-page-scaled > .ledger-screen-page {
    width: 680px;
    height: 962px;

    padding: 30px;

    box-sizing: border-box;

    overflow: hidden;

    transform:
        scale(
            var(
                --ledger-screen-scale,
                1
            )
        );

    transform-origin:
        top left;
}

.ledger-page.left{
    border-right:1px solid rgba(96,54,31,.16);
    transform-origin:right center
}
.ledger-page.right{
    border-left:1px solid rgba(255,255,255,.34);
    transform-origin:left center
}
.ledger-page.turn-next{animation:ledgerTurnNext .4s ease-in both}
.ledger-page.turn-previous{animation:ledgerTurnPrevious .4s ease-in both}
@keyframes ledgerTurnNext{to{transform:rotateY(-82deg);filter:brightness(.75)}}
@keyframes ledgerTurnPrevious{to{transform:rotateY(82deg);filter:brightness(.75)}}
.ledger-book-gutter{
    position:absolute;
    inset:0 auto 0 50%;
    z-index:5;
    width:18px;
    transform:translateX(-50%);
    pointer-events:none;
    background:linear-gradient(90deg,transparent,rgba(60,35,20,.16),rgba(255,255,255,.08),rgba(60,35,20,.17),transparent)
}
.ledger-page-arrow{
    position:absolute;
    top:50%;
    z-index:10;
    width:34px;
    height:72px;
    margin-top:-36px;
    border:1px solid rgba(223,192,155,.15);
    background:#15120e;
    color:var(--ledger-sand);
    cursor:pointer;
    font-size:27px
}
.ledger-page-arrow:disabled{opacity:.2;cursor:not-allowed}
.ledger-page-arrow.previous{left:5px}
.ledger-page-arrow.next{right:5px}
.ledger-paper-masthead{
    padding-bottom:7px;
    border-bottom:3px double #18130f;
    text-align:center
}
.ledger-paper-masthead strong{
    display:block;
    font:900 25px/1 "Times New Roman",Georgia,serif;
    letter-spacing:-1px
}
.ledger-paper-masthead div{
    margin-top:4px;
    display:flex;
    justify-content:space-between;
    gap:8px;
    font:700 5.8px Arial,sans-serif;
    letter-spacing:.7px
}
.ledger-section-kicker{
    margin-top:10px;
    color:#88391f;
    font:700 6.5px Arial,sans-serif;
    letter-spacing:2px;
    text-transform:uppercase
}
.ledger-cover-headline{
    margin:5px 0 7px;
    font:900 clamp(27px,3.2vw,50px)/.86 "Times New Roman",Georgia,serif;
    letter-spacing:-1.7px
}
.ledger-cover-deck,.ledger-article-subtitle{
    margin:0 0 9px;
    font:italic 11px/1.25 Georgia,serif
}
.ledger-photo{
    height:205px;
    margin:9px 0 6px;
    display:grid;
    place-items:center;
    overflow:hidden;
    border:1px solid rgba(24,19,15,.3);
    background:#5e5547
}
.ledger-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    filter:grayscale(1) contrast(1.05)
}
.ledger-photo.empty span{
    color:rgba(255,255,255,.62);
    font:700 7px Arial,sans-serif;
    letter-spacing:3px
}
.ledger-photo-caption{
    margin:0 0 7px;
    padding-bottom:5px;
    border-bottom:1px solid rgba(24,19,15,.22);
    font:400 5.8px/1.4 Arial,sans-serif
}
.ledger-cover-columns{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:13px
}
.ledger-cover-columns>div>p{
    margin:3px 0 0;
    text-align:justify;
    font-size:9.6px;
    line-height:1.42
}
.ledger-byline{
    margin:5px 0;
    color:#6d2d1b;
    font:700 5.8px Arial,sans-serif;
    letter-spacing:1px
}
.ledger-cover-teaser{
    padding:8px 0;
    border-top:1px solid #18130f
}
.ledger-cover-teaser span{
    display:block;
    color:#88391f;
    font:700 5.5px Arial,sans-serif;
    letter-spacing:1px
}
.ledger-cover-teaser strong{
    display:block;
    margin-top:3px;
    font-size:13px;
    line-height:1
}
.ledger-classified{
    padding:10px;
    border:2px solid #18130f;
    text-align:center
}
.ledger-classified strong{font-size:15px}
.ledger-classified p{font:700 6.5px/1.5 Arial,sans-serif}
.ledger-article-title{
    margin:5px 0 6px;
    font:900 clamp(24px,2.7vw,40px)/.9 "Times New Roman",Georgia,serif;
    letter-spacing:-1px
}
.ledger-article-title small{
    display:block;
    margin-top:5px;
    color:#88391f;
    font:700 5.5px Arial,sans-serif;
    letter-spacing:1px
}
.ledger-article-body{
    column-count:3;
    column-gap:13px;
    column-rule:1px solid rgba(24,19,15,.16);
    text-align:justify;
    font-size:9.6px;
    line-height:1.42
}
.ledger-article-body p{margin:0 0 7px}
.ledger-article-body p:first-child::first-letter{
    float:left;
    margin:1px 4px -2px 0;
    font-size:31px;
    line-height:.78
}
.ledger-archive{
    position:sticky;
    top:16px;
    padding:19px 16px
}
.ledger-archive h3{
    margin:5px 0 16px;
    font-size:20px;
    font-weight:400
}
.ledger-archive-list{display:grid;gap:16px}
.ledger-archive-card{
    width:100%;
    padding:0;
    border:0;
    background:transparent;
    color:inherit;
    cursor:pointer;
    text-align:left
}
.ledger-archive-cover{
    aspect-ratio:4/5.35;
    padding:11px 9px;
    border:1px solid rgba(223,192,155,.15);
    background:var(--ledger-paper);
    color:#18130f;
    box-shadow:0 8px 16px rgba(0,0,0,.3);
    transition:.18s ease
}
.ledger-archive-card:hover .ledger-archive-cover,
.ledger-archive-card.active .ledger-archive-cover{
    transform:translateY(-3px);
    border-color:var(--ledger-rust)
}
.ledger-archive-cover strong{
    display:block;
    padding-bottom:5px;
    border-bottom:2px solid #18130f;
    text-align:center;
    font-size:14px
}
.ledger-archive-cover span{
    display:block;
    margin-top:8px;
    color:#88391f;
    font:700 5.5px Arial,sans-serif;
    letter-spacing:1px
}
.ledger-archive-cover h4{
    margin:3px 0 8px;
    font-size:16px;
    line-height:.95
}
.ledger-archive-image{
    height:72px;
    overflow:hidden;
    background:linear-gradient(140deg,#26211a,#8a7557);
    filter:grayscale(1)
}
.ledger-archive-image img{
    width:100%;
    height:100%;
    object-fit:cover
}
.ledger-archive-meta{
    margin-top:6px;
    display:flex;
    justify-content:space-between;
    gap:8px;
    color:rgba(243,229,205,.43);
    font:700 5.8px Arial,sans-serif;
    letter-spacing:.7px
}
.ledger-access-state{
    min-height:calc(100vh - 56px);
    padding:40px 20px;
    display:grid;
    place-content:center;
    text-align:center
}
.ledger-access-state span{
    color:var(--ledger-rust);
    font:700 8px Arial,sans-serif;
    letter-spacing:3px
}
.ledger-access-state h1{
    margin:10px 0;
    font-size:clamp(32px,5vw,60px);
    font-weight:400
}
.ledger-access-state p{
    color:rgba(243,229,205,.5);
    font:10px/1.6 Arial,sans-serif
}
.ledger-print-area{display:none}
@page{size:A4 portrait;margin:0}
@media print{
    html,body{
        width:210mm;
        margin:0!important;
        padding:0!important;
        background:#fff!important;
        -webkit-print-color-adjust:exact!important;
        print-color-adjust:exact!important
    }
    .ledger-site-header,.ledger-shell,.ledger-access-state{display:none!important}
    .ledger-print-area{
        display:block!important;
        width:210mm!important;
        margin:0!important;
        padding:0!important;
        background:#fff!important
    }
    .ledger-print-area .ledger-page{
        display:block!important;
        width:210mm!important;
        height:297mm!important;
        min-width:210mm!important;
        min-height:297mm!important;
        max-width:210mm!important;
        max-height:297mm!important;
        aspect-ratio:auto!important;
        margin:0!important;
        padding:13mm 12mm 12mm!important;
        border:0!important;
        box-shadow:none!important;
        overflow:hidden!important;
        background:var(--ledger-paper-light)!important;
        color:#18130f!important;
        break-after:page!important;
        page-break-after:always!important;
        page-break-inside:avoid!important
    }
    .ledger-print-area .ledger-page:last-child{
        break-after:auto!important;
        page-break-after:auto!important
    }
    .ledger-print-area .ledger-paper-masthead strong{font-size:26pt!important}
    .ledger-print-area .ledger-cover-headline{font-size:35pt!important}
    .ledger-print-area .ledger-article-title{font-size:30pt!important}
    .ledger-print-area .ledger-photo{height:70mm!important}
    .ledger-print-area .ledger-article-body{
        font-size:9.5pt!important;
        line-height:1.4!important;
        column-gap:4mm!important
    }
}
@media(max-width:1000px){
    .ledger-edition-layout{grid-template-columns:1fr}
    .ledger-archive{position:static}
    .ledger-archive-list{display:flex;overflow:auto}
    .ledger-archive-card{min-width:145px}
}
@media(max-width:720px){
    .ledger-site-header nav a:first-child,
    .ledger-site-header nav a:nth-child(2){display:none}
    .ledger-shell{width:100%;padding-top:0}
    .ledger-site-masthead{padding:20px 14px}
    .ledger-site-masthead h1{font-size:49px;letter-spacing:-2px}
    .ledger-current{padding:17px 8px}
    .ledger-current-heading{display:block}
    .ledger-current-actions{margin-top:15px}
    .ledger-reader-stage{padding:12px 34px}
    .ledger-spread{display:block}
    .ledger-page.left{display:none}
    .ledger-page{
        width:100%;
        aspect-ratio:210/297;
        padding:19px
    }
    .ledger-book-gutter{display:none}
    .ledger-page-arrow{width:27px}
    .ledger-page-arrow.previous{left:2px}
    .ledger-page-arrow.next{right:2px}
    .ledger-article-body{column-count:2}
}

/* ========================================
   FLIPBOOK — CAPA FECHADA + LIVRO ABERTO
   BUILD 2026-09-18-01
======================================== */

.ledger-spread {
    transition: width .32s ease, max-width .32s ease, margin .32s ease;
}

.ledger-spread.is-closed {
    display: block;
    width: min(50%, 680px);
    max-width: 680px;
    margin: 0 auto;
    filter: drop-shadow(0 22px 30px rgba(0, 0, 0, .42));
}

.ledger-spread.is-closed .ledger-page.left,
.ledger-spread.is-closed .ledger-book-gutter {
    display: none;
}

.ledger-spread.is-closed .ledger-page.right {
    width: 100%;
    margin: 0 auto;
    border: 0;
    transform-origin: left center;
    box-shadow:
        -8px 5px 18px rgba(0, 0, 0, .18),
        inset 10px 0 18px rgba(72, 44, 25, .06),
        inset -1px 0 rgba(82, 52, 29, .22);
}

.ledger-spread.is-closed .ledger-page.right::after {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 8px;
    z-index: 8;
    pointer-events: none;
    background: linear-gradient(
        90deg,
        rgba(38, 24, 14, .24),
        rgba(255, 255, 255, .05),
        transparent
    );
}

.ledger-spread.is-first-open .ledger-page.left {
    background:
        linear-gradient(
            90deg,
            rgba(96, 54, 31, .08),
            rgba(255, 255, 255, .04) 22%,
            transparent 55%
        ),
        var(--ledger-paper-light);
}

.ledger-frontpage {
    height: 100%;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    gap: 8px;
    overflow: hidden;
}

.ledger-cover-ribbon {
    flex: 0 0 88px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(24, 19, 15, .46);
}

.ledger-cover-ribbon-card {
    min-width: 0;
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 8px;
    align-items: stretch;
    padding-right: 9px;
    border-right: 1px solid rgba(24, 19, 15, .25);
}

.ledger-cover-ribbon-card:last-child {
    padding-right: 0;
    border-right: 0;
}

.ledger-cover-ribbon-card-empty {
    grid-template-columns: 1fr;
    align-content: center;
}

.ledger-cover-ribbon-thumb {
    min-width: 0;
    overflow: hidden;
    background: #d8ccb8;
}

.ledger-cover-ribbon-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: grayscale(100%) contrast(1.05) brightness(.98);
}

.ledger-cover-ribbon-card small,
.ledger-frontpage-rail small,
.ledger-frontpage-bottom-strip small,
.ledger-frontpage-fact small {
    display: block;
    color: #9a3f22;
    font: 800 6.2px/1.1 Arial, sans-serif;
    letter-spacing: 1.25px;
    text-transform: uppercase;
}

.ledger-cover-ribbon-card strong {
    display: block;
    margin-top: 4px;
    font: 900 12px/1.02 "Times New Roman", Georgia, serif;
}

.ledger-frontpage-masthead {
    flex: 0 0 auto;
    padding: 4px 0 8px;
    border-bottom: 3px double #18130f;
    text-align: center;
}

.ledger-frontpage-meta {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 10px;
    margin-bottom: 2px;
    font: 800 5.8px/1 Arial, sans-serif;
    letter-spacing: .8px;
}

.ledger-frontpage-meta span:nth-child(2) {
    text-align: center;
}

.ledger-frontpage-meta span:last-child {
    text-align: right;
}

.ledger-frontpage-masthead > strong {
    display: block;
    font: 900 58px/.82 "Times New Roman", Georgia, serif;
    letter-spacing: -3.8px;
}

.ledger-frontpage-masthead > em {
    display: block;
    margin-top: 5px;
    font: italic 9px/1 Georgia, serif;
}

.ledger-frontpage-lead {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.ledger-frontpage-lead > .ledger-section-kicker {
    margin-top: 2px;
}

.ledger-frontpage-headline {
    margin: 3px 0 3px;
    font: 900 38px/.88 "Times New Roman", Georgia, serif;
    letter-spacing: -1.6px;
}

.ledger-frontpage-deck {
    margin: 0 0 7px;
    padding-bottom: 6px;
    border-bottom: 1px solid rgba(24, 19, 15, .3);
    font: italic 10.5px/1.22 Georgia, serif;
}

.ledger-frontpage-story-grid {
    flex: 1 1 auto;
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(100px, .78fr) minmax(0, 2.65fr) minmax(105px, .86fr);
    gap: 10px;
    align-items: stretch;
}

.ledger-frontpage-center {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.ledger-frontpage-photo {
    flex: 0 0 276px;
    min-height: 0;
    margin: 0;
    overflow: hidden;
    border: 1px solid rgba(24, 19, 15, .38);
    background: #d1c5b0;
}

.ledger-frontpage-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: grayscale(100%) contrast(1.05) brightness(.98);
}

.ledger-frontpage-photo.empty {
    display: grid;
    place-content: center;
    color: rgba(24, 19, 15, .58);
    text-align: center;
}

.ledger-frontpage-photo.empty strong,
.ledger-frontpage-photo.empty span {
    display: block;
}

.ledger-frontpage-photo.empty strong {
    font: 900 25px/1 "Times New Roman", Georgia, serif;
}

.ledger-frontpage-photo.empty span {
    margin-top: 6px;
    font: 800 6px Arial, sans-serif;
    letter-spacing: 2px;
}

.ledger-frontpage-copy {
    column-count: 3;
    column-gap: 11px;
    column-rule: 1px solid rgba(24, 19, 15, .2);
    font-size: 8.9px;
    line-height: 1.34;
    text-align: justify;
}

.ledger-frontpage-copy p {
    margin: 0;
}

.ledger-frontpage-copy p:first-child::first-letter {
    float: left;
    margin: 1px 3px 0 0;
    font-size: 29px;
    line-height: .78;
}

.ledger-frontpage-rail {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.ledger-frontpage-rail-left {
    padding-right: 9px;
    border-right: 1px solid rgba(24, 19, 15, .26);
}

.ledger-frontpage-rail-right {
    padding-left: 9px;
    border-left: 1px solid rgba(24, 19, 15, .26);
}

.ledger-cover-rail-story {
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(24, 19, 15, .32);
}

.ledger-cover-rail-story strong {
    display: block;
    margin-top: 4px;
    font: 900 15px/.98 "Times New Roman", Georgia, serif;
}

.ledger-cover-rail-story p,
.ledger-frontpage-fact p {
    margin: 5px 0 0;
    font-size: 7.4px;
    line-height: 1.34;
    text-align: left;
}

.ledger-frontpage-fact {
    padding-top: 6px;
    border-top: 3px double #18130f;
}

.ledger-frontpage-quote {
    margin: 0;
    padding: 8px 0;
    border-top: 2px solid #18130f;
    border-bottom: 1px solid #18130f;
    font: italic 13px/1.08 Georgia, serif;
}

.ledger-frontpage-bottom-strip {
    flex: 0 0 auto;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    padding-top: 7px;
    border-top: 3px double #18130f;
}

.ledger-frontpage-bottom-strip article {
    min-width: 0;
    padding-right: 9px;
    border-right: 1px solid rgba(24, 19, 15, .26);
}

.ledger-frontpage-bottom-strip article:last-child {
    padding-right: 0;
    border-right: 0;
}

.ledger-frontpage-bottom-strip strong {
    display: block;
    margin-top: 3px;
    font: 900 11px/1.02 "Times New Roman", Georgia, serif;
}

/* ========================================
   CONTROLES EDITORIAIS POR MATÉRIA
======================================== */

.ledger-article-frame {
    position: relative;
    transform: translateY(var(--ledger-article-offset-y, 0px));
}

.ledger-headline-size-compact .ledger-article-title {
    font-size: 28px;
}

.ledger-headline-size-normal .ledger-article-title {
    font-size: 34px;
}

.ledger-headline-size-large .ledger-article-title {
    font-size: 40px;
}

.ledger-body-size-normal .ledger-article-body {
    font-size: 9.6px;
}

.ledger-body-size-large .ledger-article-body {
    font-size: 10.2px;
}

.ledger-body-size-xlarge .ledger-article-body {
    font-size: 10.8px;
}

.ledger-image-size-compact > .ledger-photo,
.ledger-image-size-compact .ledger-template-classic > .ledger-photo {
    height: 170px;
}

.ledger-image-size-normal > .ledger-photo,
.ledger-image-size-normal .ledger-template-classic > .ledger-photo {
    height: 205px;
}

.ledger-image-size-large > .ledger-photo,
.ledger-image-size-large .ledger-template-classic > .ledger-photo {
    height: 245px;
}

.ledger-image-size-compact .ledger-hero-photo .ledger-photo img {
    height: 270px;
}

.ledger-image-size-normal .ledger-hero-photo .ledger-photo img {
    height: 330px;
}

.ledger-image-size-large .ledger-hero-photo .ledger-photo img {
    height: 385px;
}

.ledger-image-size-compact .ledger-side-photo .ledger-photo img {
    height: 355px;
    min-height: 355px;
}

.ledger-image-size-normal .ledger-side-photo .ledger-photo img {
    height: 430px;
    min-height: 430px;
}

.ledger-image-size-large .ledger-side-photo .ledger-photo img {
    height: 495px;
    min-height: 495px;
}

.ledger-image-size-compact .ledger-photo-gallery-1 .ledger-photo img {
    height: 255px;
}

.ledger-image-size-large .ledger-photo-gallery-1 .ledger-photo img {
    height: 360px;
}

.ledger-image-size-compact .ledger-photo-gallery-2 .ledger-photo img {
    height: 200px;
}

.ledger-image-size-large .ledger-photo-gallery-2 .ledger-photo img {
    height: 280px;
}

.ledger-image-size-compact .ledger-photo-gallery-3 {
    height: 260px;
}

.ledger-image-size-large .ledger-photo-gallery-3 {
    height: 360px;
}

.ledger-end-page {
    height: 100%;
    display: grid;
    place-content: center;
}

.ledger-page.turn-next {
    z-index: 12;
    box-shadow: -24px 8px 32px rgba(0, 0, 0, .38);
}

.ledger-page.turn-previous {
    z-index: 12;
    box-shadow: 24px 8px 32px rgba(0, 0, 0, .38);
}

@media print {
    .ledger-print-area .ledger-template-cover {
        height: 100% !important;
    }

    .ledger-print-area .ledger-frontpage-photo {
        height: 83mm !important;
        flex-basis: 83mm !important;
    }
}

@media(max-width:720px) {
    .ledger-spread.is-closed {
        width: 100%;
        max-width: none;
    }

    .ledger-spread.is-first-open .ledger-page.left {
        display: none;
    }

    .ledger-frontpage-masthead > strong {
        font-size: 46px;
    }

    .ledger-cover-ribbon {
        grid-template-columns: 1fr;
        grid-auto-rows: minmax(0, 1fr);
        flex-basis: 126px;
    }

    .ledger-cover-ribbon-card:nth-child(n + 2) {
        display: none;
    }

    .ledger-frontpage-story-grid {
        grid-template-columns: 1fr;
    }

    .ledger-frontpage-rail {
        display: none;
    }

    .ledger-frontpage-photo {
        flex-basis: 300px;
    }

    .ledger-frontpage-bottom-strip {
        grid-template-columns: 1fr;
    }

    .ledger-frontpage-bottom-strip article:nth-child(n + 2) {
        display: none;
    }
}


/* ========================================
   DUAS MATÉRIAS NA MESMA FOLHA
   EMPILHADAS — SUPERIOR / INFERIOR
   BUILD 2026-09-18-03
======================================== */

.ledger-template-dual {
    height: 100%;
    min-height: 100%;
    display: flex;
    flex-direction: column;
}

.ledger-template-dual > .ledger-paper-masthead {
    flex: 0 0 auto;
}

.ledger-dual-grid {
    flex: 1 1 auto;
    min-height: 0;
    display: grid;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 0;
    margin-top: 10px;
}

.ledger-dual-grid-half {
    grid-template-rows: repeat(2, minmax(0, 1fr));
}

.ledger-dual-grid-third-two-thirds {
    grid-template-rows: minmax(0, 1fr) minmax(0, 2fr);
}

.ledger-dual-slot {
    min-width: 0;
    min-height: 0;
    overflow: hidden;
}

.ledger-dual-slot-top {
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(24, 19, 15, .34);
}

.ledger-dual-slot-bottom {
    padding-top: 12px;
}

.ledger-dual-story {
    min-width: 0;
    min-height: 0;
    height: 100%;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-content: start;
}

.ledger-dual-story + .ledger-dual-story {
    padding-left: 0;
    border-left: 0;
}

.ledger-dual-title {
    margin: 4px 0 4px;
    font: 900 27px/.92 "Times New Roman", Georgia, serif;
    letter-spacing: -.7px;
}

.ledger-dual-subtitle {
    margin: 0 0 5px;
    font: italic 10.5px/1.24 Georgia, serif;
}

.ledger-template-dual .ledger-byline {
    margin: 3px 0 5px;
}

.ledger-template-dual .ledger-dual-photo {
    height: 105px;
    margin: 5px 0 5px;
}

.ledger-template-dual .ledger-dual-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ledger-template-dual .ledger-dual-photo .ledger-photo-caption {
    font-size: 5.8px;
}

.ledger-article-body-dual {
    column-count: 2 !important;
    column-gap: 13px;
    column-rule: 1px solid rgba(24, 19, 15, .16);
    font-size: 9.4px;
    line-height: 1.4;
}

.ledger-article-body-dual p:first-child::first-letter {
    font-size: 27px;
}

.ledger-article-frame-shared.ledger-headline-size-compact .ledger-dual-title {
    font-size: 21px;
}

.ledger-article-frame-shared.ledger-headline-size-normal .ledger-dual-title {
    font-size: 24px;
}

.ledger-article-frame-shared.ledger-headline-size-large .ledger-dual-title {
    font-size: 27px;
}

.ledger-article-frame-shared.ledger-body-size-normal .ledger-article-body-dual {
    font-size: 9.1px;
}

.ledger-article-frame-shared.ledger-body-size-large .ledger-article-body-dual {
    font-size: 9.5px;
}

.ledger-article-frame-shared.ledger-body-size-xlarge .ledger-article-body-dual {
    font-size: 9.9px;
}

.ledger-article-frame-shared.ledger-image-size-compact .ledger-dual-photo {
    height: 82px;
}

.ledger-article-frame-shared.ledger-image-size-normal .ledger-dual-photo {
    height: 105px;
}

.ledger-article-frame-shared.ledger-image-size-large .ledger-dual-photo {
    height: 128px;
}

@media print {
    .ledger-print-area .ledger-template-dual {
        height: 100% !important;
    }

    .ledger-print-area .ledger-dual-grid {
        grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
        gap: 0 !important;
    }

    .ledger-print-area .ledger-dual-slot-top {
        padding-bottom: 4mm !important;
        border-bottom: .3mm solid rgba(24, 19, 15, .34) !important;
    }

    .ledger-print-area .ledger-dual-slot-bottom {
        padding-top: 4mm !important;
    }

    .ledger-print-area .ledger-template-dual .ledger-dual-photo {
        height: 28mm !important;
    }

    .ledger-print-area .ledger-article-body-dual {
        column-count: 2 !important;
        column-gap: 4mm !important;
        font-size: 9.4pt !important;
        line-height: 1.4 !important;
    }
}

@media(max-width:720px) {
    .ledger-dual-slot-top {
        padding-bottom: 10px;
    }

    .ledger-dual-slot-bottom {
        padding-top: 10px;
    }
}

@media print {
    .ledger-print-area .ledger-headline-size-compact .ledger-article-title {
        font-size: 26pt !important;
    }

    .ledger-print-area .ledger-headline-size-normal .ledger-article-title {
        font-size: 30pt !important;
    }

    .ledger-print-area .ledger-headline-size-large .ledger-article-title {
        font-size: 34pt !important;
    }

    .ledger-print-area .ledger-body-size-normal .ledger-article-body {
        font-size: 9.5pt !important;
    }

    .ledger-print-area .ledger-body-size-large .ledger-article-body {
        font-size: 10.2pt !important;
    }

    .ledger-print-area .ledger-body-size-xlarge .ledger-article-body {
        font-size: 10.9pt !important;
    }

    .ledger-print-area .ledger-article-frame-shared.ledger-headline-size-compact .ledger-dual-title {
        font-size: 17pt !important;
    }

    .ledger-print-area .ledger-article-frame-shared.ledger-headline-size-normal .ledger-dual-title {
        font-size: 20pt !important;
    }

    .ledger-print-area .ledger-article-frame-shared.ledger-headline-size-large .ledger-dual-title {
        font-size: 23pt !important;
    }
}

/* 1/3 superior: mantém o bloco compacto o bastante para não invadir os 2/3 inferiores. */
.ledger-dual-grid-third-two-thirds .ledger-dual-slot-top .ledger-dual-title {
    font-size: 23px;
}

.ledger-dual-grid-third-two-thirds .ledger-dual-slot-top .ledger-dual-photo {
    height: 68px !important;
}

.ledger-dual-grid-third-two-thirds .ledger-dual-slot-top .ledger-dual-subtitle {
    font-size: 9px;
    line-height: 1.15;
}

.ledger-dual-grid-third-two-thirds .ledger-dual-slot-top .ledger-article-body-dual {
    font-size: 8.9px;
    line-height: 1.33;
}


/* ========================================
   FLUXO EDITORIAL CONTÍNUO
   BUILD 2026-09-18-07
   As matérias ocupam somente o espaço necessário.
   Quando uma matéria continua, a próxima matéria
   aproveita o espaço restante da mesma folha.
======================================== */

.ledger-template-flow {
    min-height: 0 !important;
    height: auto !important;
}

.ledger-flow-content {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-top: 10px;
}

.ledger-flow-story {
    min-width: 0;
    position: relative;
    margin: 0;
    padding: 0 0 11px;
    border-bottom: 1px solid rgba(24, 19, 15, .22);
}

.ledger-flow-story:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.ledger-flow-story-new-section {
    margin-top: 3px;
    padding-top: 10px;
    border-top: 3px double rgba(24, 19, 15, .62);
}

.ledger-flow-story-first {
    margin-top: var(--ledger-flow-offset-y, 0px);
}

.ledger-flow-story-continuation {
    padding-top: 2px;
}

.ledger-flow-story-continuation .ledger-section-kicker {
    margin-top: 0;
}

.ledger-flow-title {
    margin: 4px 0 5px;
    font: 900 32px/.92 "Times New Roman", Georgia, serif;
    letter-spacing: -1px;
}

.ledger-flow-headline-compact .ledger-flow-title {
    font-size: 27px;
}

.ledger-flow-headline-normal .ledger-flow-title {
    font-size: 32px;
}

.ledger-flow-headline-large .ledger-flow-title {
    font-size: 38px;
}

.ledger-flow-continuation-label {
    display: none;
}

.ledger-flow-continuation-header {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 0 0 7px;
    padding: 0 0 6px;
    border-bottom: 1px solid rgba(24, 19, 15, .42);
    color: rgba(24, 19, 15, .68);
    font: 800 6.5px/1 Arial, sans-serif;
    letter-spacing: 1.55px;
    text-transform: uppercase;
}

.ledger-flow-continuation-section {
    color: #88391f;
}

.ledger-flow-subtitle {
    margin: 0 0 6px;
    font: italic 10.8px/1.25 Georgia, serif;
}

.ledger-flow-media {
    margin: 7px 0 8px;
}

.ledger-flow-photo {
    height: 165px;
    margin: 0;
}

.ledger-flow-layout-hero .ledger-flow-photo {
    height: 205px;
}

.ledger-flow-image-compact .ledger-flow-photo {
    height: 130px;
}

.ledger-flow-image-large .ledger-flow-photo {
    height: 225px;
}

.ledger-flow-gallery {
    display: grid;
    grid-template-columns: 1.55fr .9fr;
    grid-template-rows: repeat(2, 78px);
    gap: 6px;
    margin: 7px 0 8px;
}

.ledger-flow-gallery .ledger-photo {
    height: 100%;
    min-height: 0;
    margin: 0;
}

.ledger-flow-gallery .ledger-photo:first-child {
    grid-row: 1 / span 2;
}

.ledger-flow-gallery .ledger-photo img {
    height: 100%;
    min-height: 0;
}

.ledger-flow-body {
    column-count: 3;
    column-gap: 14px;
    column-rule: 1px solid rgba(24, 19, 15, .16);
    text-align: justify;
    font-size: 9.6px;
    line-height: 1.42;
}

.ledger-flow-body p {
    margin: 0;
}

.ledger-flow-body p:first-child::first-letter {
    float: left;
    margin: 1px 4px -2px 0;
    font-size: 30px;
    line-height: .78;
}

.ledger-flow-body-large .ledger-flow-body {
    font-size: 10.2px;
}

.ledger-flow-body-xlarge .ledger-flow-body {
    font-size: 10.8px;
}

.ledger-flow-story-continuation .ledger-flow-body {
    column-count: 3;
}

.ledger-flow-story .ledger-pull-quote {
    margin: 7px 0 8px;
    padding: 7px 12px;
    font-size: 15px;
}


/* ========================================
   FLUXO CONTÍNUO — MODELOS EDITORIAIS
   BUILD 2026-09-18-08
======================================== */

.ledger-flow-layout-classic .ledger-flow-body {
    column-count: 3;
}

.ledger-flow-layout-hero .ledger-flow-body {
    column-count: 2;
    column-gap: 16px;
}

.ledger-flow-layout-hero .ledger-flow-media {
    margin-top: 8px;
}

.ledger-flow-layout-hero .ledger-flow-photo {
    height: 215px;
}

.ledger-flow-side-layout {
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
    gap: 15px;
    align-items: start;
    margin-top: 7px;
}

.ledger-flow-side-right .ledger-flow-side-media {
    order: 2;
}

.ledger-flow-side-right .ledger-flow-side-copy {
    order: 1;
}

.ledger-flow-side-layout .ledger-flow-media {
    margin: 0;
}

.ledger-flow-side-layout .ledger-flow-photo {
    height: 255px;
    margin: 0;
}

.ledger-flow-side-layout .ledger-flow-body {
    column-count: 1;
    font-size: 9.7px;
}

.ledger-flow-layout-gallery .ledger-flow-body {
    column-count: 2;
    column-gap: 16px;
}

.ledger-flow-layout-gallery .ledger-flow-gallery {
    grid-template-rows: repeat(2, 98px);
}

.ledger-flow-gossip-banner {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 10px;
    margin: 0 0 9px;
    padding: 6px 0;
    border-top: 3px double rgba(24, 19, 15, .68);
    border-bottom: 1px solid rgba(24, 19, 15, .42);
    text-transform: uppercase;
}

.ledger-flow-gossip-banner span {
    font: 800 5.8px/1 Arial, sans-serif;
    letter-spacing: 1.2px;
}

.ledger-flow-gossip-banner span:last-child {
    text-align: right;
}

.ledger-flow-gossip-banner strong {
    font: 900 12px/1 Georgia, serif;
    white-space: nowrap;
}

.ledger-flow-layout-gossip .ledger-flow-body {
    column-count: 3;
    font-size: 9.4px;
}

.ledger-flow-layout-gossip .ledger-flow-gallery {
    grid-template-rows: repeat(2, 88px);
}

.ledger-flow-text-focus-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(150px, .65fr);
    gap: 15px;
    align-items: start;
    margin-top: 7px;
}

.ledger-flow-text-focus-copy .ledger-flow-body {
    column-count: 2;
}

.ledger-flow-text-focus-media .ledger-flow-media {
    margin: 0;
}

.ledger-flow-text-focus-media .ledger-flow-photo {
    height: 170px;
    margin: 0;
}

/* ========================================
   PASSATEMPOS — PALAVRA CRUZADA + SUDOKU
   BUILD 2026-09-18-08
======================================== */

.ledger-template-puzzles {
    min-height: 100%;
    height: 100%;
}

.ledger-puzzles-heading {
    padding: 8px 0 9px;
    border-bottom: 3px double rgba(24, 19, 15, .7);
}

.ledger-puzzles-title {
    margin: 4px 0 3px;
    font: 900 34px/.92 "Times New Roman", Georgia, serif;
    letter-spacing: -1px;
}

.ledger-puzzles-subtitle {
    margin: 0;
    font: italic 10.5px/1.3 Georgia, serif;
}

.ledger-puzzles-grid {
    display: grid;
    grid-template-columns: 1.25fr .75fr;
    gap: 14px;
    margin-top: 13px;
    align-items: stretch;
}

.ledger-puzzle-card {
    min-width: 0;
    display: flex;
    flex-direction: column;
    padding: 9px;
    border: 1px solid rgba(24, 19, 15, .42);
    background: rgba(255, 255, 255, .18);
}

.ledger-puzzle-card > header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 8px;
    padding-bottom: 6px;
    border-bottom: 1px solid rgba(24, 19, 15, .42);
}

.ledger-puzzle-card > header span {
    color: #88391f;
    font: 800 5.6px/1 Arial, sans-serif;
    letter-spacing: 1.2px;
}

.ledger-puzzle-card > header strong {
    font: 900 14px/1 Georgia, serif;
}

.ledger-puzzle-board {
    flex: 1 1 auto;
    min-height: 430px;
    margin-top: 8px;
    display: grid;
    place-items: center;
    overflow: hidden;
    background: #fff;
}

.ledger-puzzle-card:nth-child(2) .ledger-puzzle-board {
    min-height: 430px;
}

.ledger-puzzle-board img {
    width: 100%;
    height: 100%;
    max-height: 545px;
    object-fit: contain;
    filter: grayscale(100%) contrast(1.12);
}

.ledger-puzzle-board.empty {
    border: 1px dashed rgba(24, 19, 15, .34);
    color: rgba(24, 19, 15, .48);
    text-align: center;
}

.ledger-puzzle-board.empty strong,
.ledger-puzzle-board.empty span {
    display: block;
}

.ledger-puzzle-board.empty strong {
    font-size: 18px;
}

.ledger-puzzle-board.empty span {
    margin-top: 7px;
    font: 700 5.5px Arial, sans-serif;
    letter-spacing: 1.2px;
}

.ledger-puzzle-card > footer {
    padding-top: 5px;
    font: italic 6.2px/1.25 Georgia, serif;
}

.ledger-puzzle-bonus {
    margin-top: 10px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding-top: 8px;
    border-top: 1px solid rgba(24, 19, 15, .34);
}

.ledger-puzzle-bonus strong {
    color: #88391f;
    font: 800 6px Arial, sans-serif;
    letter-spacing: 1.3px;
}

.ledger-puzzle-bonus img {
    width: 100%;
    max-height: 105px;
    object-fit: contain;
    filter: grayscale(100%) contrast(1.1);
}

.ledger-puzzles-notes {
    margin-top: 10px;
    padding-top: 8px;
    border-top: 1px solid rgba(24, 19, 15, .3);
    font-size: 8.5px;
    line-height: 1.4;
}

.ledger-puzzles-notes p {
    margin: 0;
}

@media print {
    .ledger-print-area .ledger-template-flow {
        min-height: 0 !important;
        height: auto !important;
    }

    .ledger-print-area .ledger-flow-content {
        gap: 4mm !important;
        padding-top: 3mm !important;
    }

    .ledger-print-area .ledger-flow-title {
        font-size: 25pt !important;
    }

    .ledger-print-area .ledger-flow-headline-compact .ledger-flow-title {
        font-size: 21pt !important;
    }

    .ledger-print-area .ledger-flow-headline-large .ledger-flow-title {
        font-size: 29pt !important;
    }

    .ledger-print-area .ledger-flow-photo {
        height: 42mm !important;
    }

    .ledger-print-area .ledger-flow-layout-hero .ledger-flow-photo {
        height: 50mm !important;
    }

    .ledger-print-area .ledger-flow-image-compact .ledger-flow-photo {
        height: 34mm !important;
    }

    .ledger-print-area .ledger-flow-image-large .ledger-flow-photo {
        height: 55mm !important;
    }

    .ledger-print-area .ledger-flow-body {
        font-size: 9.6pt !important;
        line-height: 1.4 !important;
        column-gap: 4mm !important;
    }
}

@media print {
    .ledger-print-area .ledger-flow-continuation-header {
        margin-bottom: 2.5mm !important;
        padding-bottom: 2mm !important;
        font-size: 6.5pt !important;
    }

    .ledger-print-area .ledger-flow-side-layout {
        gap: 4mm !important;
    }

    .ledger-print-area .ledger-flow-side-layout .ledger-flow-photo {
        height: 62mm !important;
    }

    .ledger-print-area .ledger-puzzles-grid {
        gap: 4mm !important;
        margin-top: 4mm !important;
    }

    .ledger-print-area .ledger-puzzle-board {
        min-height: 135mm !important;
    }

    .ledger-print-area .ledger-puzzle-board img {
        max-height: 150mm !important;
    }
}

@media(max-width:720px) {
    .ledger-flow-body {
        column-count: 2;
        column-gap: 12px;
    }

    .ledger-flow-gallery {
        grid-template-rows: repeat(2, 70px);
    }

    .ledger-flow-side-layout,
    .ledger-flow-text-focus-layout,
    .ledger-puzzles-grid {
        grid-template-columns: 1fr;
    }

    .ledger-flow-side-right .ledger-flow-side-media,
    .ledger-flow-side-right .ledger-flow-side-copy {
        order: initial;
    }

    .ledger-flow-side-layout .ledger-flow-photo {
        height: 180px;
    }

    .ledger-puzzle-board {
        min-height: 320px;
    }
}


/* ========================================
   CUPONS + CLASSIFICADOS
   BUILD 2026-09-18-09
======================================== */

.ledger-puzzle-coupons {
    margin-top: 12px;
    padding-top: 9px;
    border-top: 3px double rgba(24, 19, 15, .72);
}

.ledger-puzzle-coupons > header {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: baseline;
    gap: 10px;
    margin-bottom: 8px;
}

.ledger-puzzle-coupons > header span,
.ledger-puzzle-coupons > header small {
    font: 800 5.8px/1 Arial, sans-serif;
    letter-spacing: 1.3px;
    color: #88391f;
}

.ledger-puzzle-coupons > header small {
    text-align: right;
    color: rgba(24, 19, 15, .62);
}

.ledger-puzzle-coupons > header strong {
    font: 900 16px/1 Georgia, serif;
}

.ledger-coupon-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.ledger-coupon-card {
    position: relative;
    min-width: 0;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 8px;
    padding: 8px 10px;
    border: 1px dashed rgba(24, 19, 15, .58);
    background: rgba(255, 255, 255, .23);
}

.ledger-coupon-cut {
    position: absolute;
    top: -8px;
    right: 9px;
    padding: 0 3px;
    background: var(--ledger-paper-light);
    font-size: 10px;
}

.ledger-coupon-logo {
    width: 54px;
    height: 54px;
    align-self: center;
    overflow: hidden;
    border: 1px solid rgba(24, 19, 15, .25);
}

.ledger-coupon-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: grayscale(100%) contrast(1.08);
}

.ledger-coupon-copy small {
    display: block;
    color: #88391f;
    font: 800 5.2px/1 Arial, sans-serif;
    letter-spacing: 1px;
}

.ledger-coupon-copy h3 {
    margin: 3px 0 2px;
    font: 900 14px/.95 Georgia, serif;
}

.ledger-coupon-offer {
    display: block;
    margin: 3px 0;
    font: 900 18px/.95 Arial, sans-serif;
}

.ledger-coupon-copy p {
    margin: 3px 0;
    font-size: 7.2px;
    line-height: 1.3;
}

.ledger-coupon-code {
    margin-top: 5px;
    padding-top: 4px;
    border-top: 1px solid rgba(24, 19, 15, .34);
    font: 800 6.3px/1.2 Arial, sans-serif;
    letter-spacing: .5px;
}

.ledger-template-coupons,
.ledger-template-classifieds {
    min-height: 100%;
}

.ledger-special-page-heading,
.ledger-classifieds-heading {
    padding: 10px 0 9px;
    border-bottom: 4px double #18130f;
}

.ledger-special-page-heading span,
.ledger-classifieds-heading span {
    display: block;
    color: #88391f;
    font: 800 6px Arial, sans-serif;
    letter-spacing: 1.8px;
}

.ledger-special-page-heading h2,
.ledger-classifieds-heading h2 {
    margin: 3px 0 2px;
    font: 900 48px/.9 Arial, sans-serif;
    letter-spacing: -1.7px;
}

.ledger-special-page-heading p {
    margin: 4px 0 0;
    font: italic 9px/1.3 Georgia, serif;
}

.ledger-template-coupons .ledger-coupon-grid {
    margin-top: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ledger-template-coupons .ledger-coupon-card {
    min-height: 125px;
}

.ledger-classifieds-columns {
    margin-top: 11px;
    column-count: 5;
    column-gap: 10px;
    column-rule: 1px solid rgba(24, 19, 15, .34);
}

.ledger-classified-card {
    display: inline-block;
    width: 100%;
    margin: 0 0 8px;
    padding: 0 3px 7px;
    border-bottom: 1px solid rgba(24, 19, 15, .48);
    break-inside: avoid;
    page-break-inside: avoid;
}

.ledger-classified-category {
    display: inline-block;
    margin-bottom: 4px;
    padding: 2px 4px;
    background: #18130f;
    color: var(--ledger-paper-light);
    font: 900 6.2px/1 Arial, sans-serif;
    letter-spacing: .65px;
    text-transform: uppercase;
}

.ledger-classified-card h3 {
    margin: 0 0 3px;
    font: 900 10px/1.05 Arial, sans-serif;
    text-transform: uppercase;
}

.ledger-classified-card p {
    margin: 0;
    font-size: 6.9px;
    line-height: 1.28;
    text-align: left;
}

.ledger-classified-contact {
    display: block;
    margin-top: 4px;
    font: 900 6.7px/1.25 Arial, sans-serif;
}

.ledger-classified-thumb {
    width: 100%;
    max-height: 58px;
    margin: 2px 0 4px;
    object-fit: cover;
    filter: grayscale(100%) contrast(1.08);
}

/* Passatempos com cupons: libera um pouco de altura para a faixa inferior. */
.ledger-template-puzzles:has(.ledger-puzzle-coupons) .ledger-puzzle-board,
.ledger-template-puzzles:has(.ledger-puzzle-coupons) .ledger-puzzle-card:nth-child(2) .ledger-puzzle-board {
    min-height: 260px;
}

@media print {
    .ledger-print-area .ledger-classifieds-columns {
        column-count: 5 !important;
        column-gap: 2.6mm !important;
    }

    .ledger-print-area .ledger-classified-card p {
        font-size: 6.8pt !important;
        line-height: 1.25 !important;
    }

    .ledger-print-area .ledger-coupon-card {
        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }
}

@media(max-width:720px) {
    .ledger-coupon-grid,
    .ledger-template-coupons .ledger-coupon-grid {
        grid-template-columns: 1fr;
    }

    .ledger-classifieds-columns {
        column-count: 2;
        column-gap: 8px;
    }
}
