.boulevard-editorial-colunas .hero { padding: 20px 20px 30px; margin: 0; }
.boulevard-editorial-colunas .hero h1 { color: #111; font-size: 44px; letter-spacing: -.04em; }
.columns-editorial { color: #111; padding-bottom: 50px; }
.columns-top { width: calc(100% - 308px); }
.columns-editorial a { text-decoration: none; }
.columns-editorial a:hover { text-decoration: underline; }
.columns-editorial .architecture-card--lead { border: 1px solid #b19e71; padding: 20px; display: flow-root; }
.columns-editorial .architecture-card--lead .architecture-card__image { float: left; width: 35%; margin: 0 32px 20px 0; }
.columns-editorial .architecture-card--lead img { width: 100%; aspect-ratio: 1.35; object-fit: cover; }
.columns-editorial .architecture-card--lead h2 { font-size: clamp(28px,3.2vw,42px); line-height: 1.15; margin: 24px 0 18px; }
.columns-editorial .architecture-card__categories { color: #94876c; font-size: 13px; line-height: 1.8; }
.columns-editorial .architecture-card__summary { color: #777; line-height: 1.9; }
.columns-editorial .architecture-card__more { color: var(--green); font-weight: 600; }
.columns-highlights { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; margin-top: 30px; }
.columns-highlights article { border: 1px solid #eee; transition: transform .25s,box-shadow .25s; }
.columns-highlights .architecture-card__image { display: block; overflow: hidden; }
.columns-highlights img { width: 100%; aspect-ratio: 4/5; object-fit: cover; transition: transform .3s; }
.columns-highlights .architecture-card__body { padding: 22px; }
.columns-highlights h2 { font-size: 23px; line-height: 1.35; margin: 16px 0 0; }
.columns-highlights article:hover { transform: translateY(-6px); box-shadow: 0 10px 25px #0001; }
.columns-highlights article:hover img { transform: scale(1.05); }
.columns-directory { margin: 60px 0; }
.columns-directory > h2 { font-size: 36px; margin-bottom: 30px; }
.columns-portraits { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 30px 20px; }
.columns-portraits a { display: flex; flex-direction: column; border: 1px solid #eee; text-align: center; padding-bottom: 16px; gap: 12px; }
.columns-portraits img { width: 100%; aspect-ratio: 4/5; object-fit: cover; }
.columns-portraits span { padding-inline: 8px; font-size: 12px; text-transform: uppercase; }
.columns-portraits .columns-name { font-weight: 700; margin-top: auto; padding-top: 12px; }
.columns-profile { display: grid; grid-template-columns: 38% minmax(0,1fr); gap: 40px; padding-block: 45px; border-bottom: 1px solid #ddd; scroll-margin-top: 40px; }
.columns-profile__portrait img { width: 100%; height: auto; }
.columns-profile__body { min-width: 0; }
.columns-profile__body:only-child { grid-column: 1/-1; }
.columns-label { color: #94876c; letter-spacing: .15em; text-transform: uppercase; }
.columns-profile h2 { font-size: 30px; margin: 8px 0 24px; }
.columns-profile h3 { font-size: 24px; }
.columns-text { font-family: Raleway, Arial, sans-serif; font-size: 18px; line-height: 1.7; text-align: justify; color: #666; overflow-wrap: anywhere; }
/* Override pasted typography only inside column copy; stored content stays intact. */
.columns-text :where(*) { font-family: inherit !important; font-size: inherit !important; line-height: inherit !important; text-align: inherit !important; }
.columns-text :where(div, p, ul, ol, li, blockquote, h1, h2, h3, h4, h5, h6) { width: auto !important; min-width: 0 !important; max-width: none !important; margin-inline: 0 !important; box-sizing: border-box; }
.columns-text :where(div, p) { padding-inline: 0 !important; text-indent: 0 !important; }
.columns-text p { margin-block: 0 18px !important; }
.columns-text :where(h1, h2, h3, h4, h5, h6) { line-height: 1.3 !important; text-align: left !important; margin-block: 24px 18px; }
.columns-text h1 { font-size: 32px !important; }
.columns-text h2 { font-size: 28px !important; }
.columns-text h3 { font-size: 24px !important; }
.columns-text h4 { font-size: 22px !important; }
.columns-text h5 { font-size: 20px !important; }
.columns-text h6 { font-size: 18px !important; }
.columns-text img { max-width: 100%; height: auto; }
.columns-share { display: inline-block; background: #25794d; color: white; padding: 12px 20px; margin-top: 20px; font-size: 12px; text-transform: uppercase; }
.columns-archive article { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 0 30px; padding: 30px 0; border-bottom: 1px solid #ddd; }
.columns-archive .architecture-card__image { grid-row: 1/3; }
.columns-archive img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.columns-archive .architecture-card__summary { grid-column: 2; }
.columns-editorial a:focus-visible { outline: 2px solid var(--green); outline-offset: 4px; }
@media(max-width:960px) { .columns-top { width: 100%; } .columns-portraits { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media(max-width:600px) { .boulevard-editorial-colunas .hero { padding-inline: 0; } .boulevard-editorial-colunas .hero h1 { font-size: 34px; } .columns-highlights,.columns-profile,.columns-archive article { grid-template-columns: 1fr; } .columns-portraits { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; } .columns-editorial .architecture-card--lead .architecture-card__image { float: none; display: block; width: 100%; margin: 0 0 20px; } .columns-directory > h2 { font-size: 28px; } .columns-profile { gap: 24px; } .columns-archive .architecture-card__summary { grid-column: 1; } }
@media(prefers-reduced-motion:reduce) { .columns-highlights article,.columns-highlights img { transition: none; transform: none !important; } }
.columns-top { width: 100%; display: grid; grid-template-columns: minmax(0,1fr); gap: 30px 28px; align-items: start; }
.columns-top--sponsored { grid-template-columns: minmax(0,1fr) 280px; }
.columns-top > .architecture-card--lead { grid-column: 1; grid-row: 1; min-height: 450px; box-sizing: border-box; }
.columns-highlights { grid-column: 1; grid-row: 2; margin-top: 0; }
.columns-sponsor { grid-column: 2; width: 280px; height: 450px; }
.columns-sponsor--1 { grid-row: 1; }
.columns-sponsor--2 { grid-row: 2; margin-top: 1px; }
.columns-sponsor .boulevard-sponsor-item,.columns-sponsor picture,.columns-sponsor .boulevard-sponsor-link { display: block; width: 280px; height: 450px; }
.columns-sponsor img { width: 100%; height: 100%; object-fit: contain; }
.columns-portraits a { display: block; border: 0; padding: 0; }
.columns-profile { display: flow-root; }
.columns-profile__portrait { float: left; width: 32%; max-width: 380px; margin: 0 30px 20px 0; }
.columns-profile__body { display: contents; }
@media(max-width:960px) { .columns-top--sponsored { grid-template-columns: 1fr; row-gap: 18px; } .columns-sponsor { grid-column: 1; justify-self: center; } .columns-sponsor--1 { grid-row: 3; } .columns-sponsor--2 { grid-row: 4; margin-top: 0; } }
@media(max-width:600px) { .columns-profile__portrait { width: 42%; margin: 0 18px 12px 0; } .columns-profile h2 { font-size: 25px; } .columns-profile h3 { font-size: 21px; } }
.columns-profile { scroll-margin-top: 210px; }
/* Full-width history, after sharing and before the columnist divider. */
.columns-history { clear: both; padding-top: 28px; }
.columns-history__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; }
.columns-history__item { display: flex; flex-direction: column; gap: 12px; padding: 20px; border: 1px solid #ded8cb; color: #111; transition: border-color .2s, background-color .2s; }
.columns-history__item h3 { font-size: 18px; line-height: 1.4; margin: 0; overflow-wrap: anywhere; }
.columns-history__item time { color: #777; font-size: 13px; }
.columns-history__item > span { margin-top: auto; color: var(--green); font-weight: 600; }
.columns-history__item:hover { background: #faf8f3; border-color: #b19e71; }
.columns-history__all { display: inline-block; margin-top: 20px; color: var(--green); font-weight: 600; }
@media(max-width:600px) { .columns-history__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; } .columns-history__item { padding: 14px; } .columns-history__item h3 { font-size: 16px; } }
@media(prefers-reduced-motion:reduce) { .columns-history__item { transition: none; } }
.columns-single { padding-block: 30px 50px; }
.columns-single h1 { margin: 8px 0 20px; font-size: clamp(28px,3vw,42px); line-height: 1.2; overflow-wrap: anywhere; }
.columns-single .columns-profile__body > time { color: #777; font-size: 14px; }
.columns-single .columns-text { margin-top: 24px; }
.columns-single__heading { display: contents; }
.columns-sponsor--mobile-after-directory { display: none; }
.columns-profile__read-more { display: none; }
@media (min-width: 601px) {
    .columns-editorial > .columns-profile .columns-text {
        display: block;
        max-height: 25.5em;
        overflow: clip;
    }
    .columns-editorial > .columns-profile .columns-profile__read-more {
        display: block;
        margin-top: 18px;
        color: var(--green);
        font-weight: 600;
    }
}
.columns-single__navigation { margin: 24px 0 0; clear: both; grid-column: 1 / -1; }
.columns-editorial.columns-single > .columns-profile:not(:has(~ .columns-profile)) { border-bottom: 1px solid #ddd; padding-bottom: 16px; }
.columns-single__back { display: inline-block; padding: 10px 18px; border: 1px solid #b68d4a; color: #87672f; font-weight: 600; text-decoration: none; }
.columns-single__back:hover { background: #87672f; color: #fff; }
.columns-single__back:focus-visible { outline: 2px solid #87672f; outline-offset: 3px; }
.columns-highlight__read-more { display: none; }
.columns-profile__heading { display: contents; }
/* Main Colunas magazine: mobile layout, preserving desktop and other editorials. */
@media(max-width:600px) {
    /* Keep the first sponsor beside the magazine flow and place the second after the directory. */
    .boulevard-editorial-colunas .boulevard-global-sponsor { width: min(100% - 32px, var(--container)); }
    .boulevard-editorial-colunas .boulevard-global-sponsor--rodape { margin-block: 60px 30px !important; }
    .boulevard-editorial-colunas .columns-editorial { padding-bottom: 0; }
    .columns-editorial > .columns-profile:not(:has(~ .columns-profile)) { border-bottom: 0; padding-bottom: 0; }
    .columns-editorial > .columns-profile:not(:has(~ .columns-profile)) .columns-profile__body > :last-child { margin-bottom: 0; }
    .columns-editorial .columns-archive:empty { display: none; }
    .columns-editorial .columns-archive > article:last-child { border-bottom: 0; padding-bottom: 0; }
    .columns-editorial > .columns-profile { display: grid; grid-template-columns: minmax(0,42fr) minmax(0,58fr); gap: 18px; align-items: start; }
    .columns-editorial > .columns-profile > .columns-profile__portrait { float: none; width: 100%; margin: 0; grid-column: 1; grid-row: 1; }
    .columns-editorial > .columns-profile .columns-profile__heading { display: block; min-width: 0; grid-column: 2; grid-row: 1; }
    .columns-editorial > .columns-profile:not(:has(> .columns-profile__portrait)) .columns-profile__heading { grid-column: 1 / -1; }
    .columns-editorial .columns-profile__heading .columns-label { margin: 0 0 8px; }
    .columns-editorial .columns-profile__heading :is(h2,h3) { white-space: nowrap; overflow: visible; text-overflow: clip; word-break: normal; overflow-wrap: normal; margin: 0 0 12px; line-height: 1.4; }
    .columns-editorial .columns-profile__heading h2 { font-size: 25px; }
    .columns-editorial .columns-profile__heading h3 { font-size: 21px; white-space: normal; text-align: left; hyphens: none; margin-bottom: 0; }
    .columns-editorial > .columns-profile .columns-profile__body > :not(.columns-profile__heading),
    .columns-editorial > .columns-profile > .columns-history { grid-column: 1 / -1; }
    .columns-editorial .columns-highlight__read-more { display: inline-block; margin-block: 12px; color: var(--green); font-size: 14px; font-weight: 600; }
    .columns-editorial .columns-directory { margin-block: 20px; }
    .columns-portraits { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
    .columns-portraits img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: contain; }
    .columns-editorial .columns-directory > h2 { margin: 0 0 20px; max-width: 75%; font-family: inherit; font-size: 34px; font-weight: 700; white-space: nowrap; word-break: normal; overflow-wrap: normal; hyphens: none; letter-spacing: -.04em; }
    .columns-editorial > .columns-profile .columns-text {
        clear: both;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 10;
        overflow: hidden;
    }
    .columns-editorial > .columns-profile .columns-profile__read-more { display: block; margin-top: 18px; color: var(--green); font-weight: 600; }
    .boulevard-editorial-colunas .hero { padding-bottom: 20px; }
    .boulevard-editorial-colunas .hero h1 { margin-block: 0; }
    .columns-top .columns-sponsor--mobile-relocated { display: none; }
    .columns-editorial .columns-sponsor { width: 100%; height: auto; aspect-ratio: auto; justify-self: stretch; }
    .columns-sponsor--mobile-after-directory { display: block; margin: 0 auto 48px; overflow: visible; }
    .columns-editorial .columns-sponsor .boulevard-sponsor-slot--estatico,
    .columns-editorial .columns-sponsor .boulevard-sponsor-item,
    .columns-editorial .columns-sponsor picture,
    .columns-editorial .columns-sponsor .boulevard-sponsor-link { width: 100%; height: auto; }
    .columns-editorial .columns-sponsor img { display: block; width: 100%; height: auto; object-fit: contain; }
    .columns-editorial .columns-top > .architecture-card--lead { padding: 0; min-height: 0; }
    .columns-editorial .architecture-card--lead .architecture-card__image { float: none; display: block; width: 100%; margin: 0; }
    .columns-editorial .architecture-card--lead .architecture-card__image img { display: block; width: 100%; height: auto; max-height: none; aspect-ratio: auto; object-fit: contain; border-radius: 0; }
    .columns-editorial .architecture-card--lead .architecture-card__body { padding: 20px 20px 0; }
    .columns-editorial .architecture-card--lead h2 { margin-top: 0; }
    .columns-editorial .architecture-card--lead .architecture-card__summary { padding: 0 20px 20px; }
    .columns-highlights .architecture-card--highlight { display: grid; grid-template-columns: minmax(0,42fr) minmax(0,58fr); gap: 18px; align-items: start; }
    .columns-highlights .architecture-card--no-image { grid-template-columns: minmax(0,1fr); }
    .columns-highlights .architecture-card__image img { display: block; height: auto; }
    .columns-highlights .architecture-card__body { min-width: 0; padding: 14px 12px 14px 0; container-type: inline-size; }
    .columns-highlights .architecture-card--no-image .architecture-card__body { padding: 14px; }
    .columns-highlights .architecture-card__columnist { display: block; margin: 0 0 8px; color: #94876c; font-size: 14px; line-height: 1.4; }
    .columns-highlights .architecture-card__categories { display: none; }
    .columns-highlights h2 { font-size: clamp(16px,4.8vw,24px); font-size: clamp(16px,10.5cqi,24px); line-height: 1.3; margin: 0; overflow-wrap: normal; word-break: normal; hyphens: none; }
}
.columns-single__sharing { display: flex; flex-wrap: wrap; gap: 12px; }
.columns-single__sharing .history-single__instagram { border: 0; cursor: pointer; font-family: inherit; background: linear-gradient(120deg,#833ab4,#c13584,#b84a1c); }
.columns-single__sharing .history-single__share-status { width: 100%; margin: 0; font-size: 14px; }
.columns-single__sharing .history-single__share-status:empty { display: none; }
.columns-single__sharing .history-single__copy-link { width: 100%; }
@media(max-width:600px) {
    .columns-single > .columns-profile {
        display: grid;
        grid-template-columns: minmax(0, 42fr) minmax(0, 58fr);
        gap: 18px;
        align-items: start;
    }
    .columns-single .columns-profile__portrait {
        grid-column: 1; grid-row: 1; float: none; width: 100%; margin: 0;
    }
    .columns-single__heading { display: block; grid-column: 2; grid-row: 1; min-width: 0; container-type: inline-size; }
    .columns-single__heading h1 {
        font-size: clamp(16px, 4.8vw, 24px);
        font-size: clamp(16px, 10.5cqi, 24px);
        line-height: 1.3; margin: 8px 0 0;
        overflow-wrap: normal; word-break: normal; hyphens: none;
        white-space: normal;
    }
    .columns-single__heading .columns-label { margin-top: 0; }
    .columns-single .columns-profile:not(:has(> .columns-profile__portrait)) .columns-single__heading { grid-column: 1 / -1; }
    .columns-single .columns-profile__body > .columns-text {
        grid-column: 1 / -1; grid-row: 2; margin: 0; min-width: 0;
    }
    .columns-single .columns-profile__body > time {
        grid-column: 1 / -1; grid-row: 3; text-align: right; margin: 0;
    }
    .columns-single .columns-profile__body > .columns-single__sharing {
        grid-column: 1 / -1; grid-row: 4; justify-self: start; margin-top: 0;
    }
    .columns-single__sharing .columns-share { margin-top: 0; }
    .columns-single .columns-text > :last-child { margin-bottom: 0 !important; }
    .columns-single .columns-history { grid-column: 1 / -1; }
}
@media(max-width:600px) {
    .columns-profile__body > h3 {
        font-size: clamp(14px, 3.5vw, 21px);
        line-height: 1.4;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }
}

/* Keep complete individual articles visible; magazine excerpts are separate. */
.columns-single > .columns-profile .columns-text { max-height:none; overflow:visible; display:block; -webkit-line-clamp:unset; }
@media(max-width:600px) {
 .columns-single > .columns-profile .columns-profile__body > .columns-single__heading { grid-column:2; grid-row:1; }
 .columns-single > .columns-profile:not(:has(> .columns-profile__portrait)) .columns-profile__body > .columns-single__heading { grid-column:1 / -1; }
 .columns-single > .columns-profile .columns-profile__body > :not(.columns-single__heading) { grid-column:1 / -1; grid-row:auto; }
}
