/* v23: contraste estável, enquadramento e leitura em todas as telas. */
.hero{background:#f5f3ee;color:#102b45}
.hero::before,.hero::after{display:none}
.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,4vw,64px);padding-block:64px;min-height:0;align-items:center}
.hero-copy{padding:0;min-width:0}
.hero .eyebrow{color:#795a28;line-height:1.8;font-weight:700;letter-spacing:.14em}
.hero h1{font-size:clamp(3rem,4.5vw,4.8rem);line-height:1.09;letter-spacing:-.04em;color:#102b45}
.hero h1 em{color:#81602d}
.hero .lead{color:#394e59;line-height:1.85;font-size:1.04rem}
.hero .text-link,.hero .credentials,.hero .channel-note{color:#425861}
.hero-actions{flex-wrap:wrap;gap:20px}
.hero-trust{color:#354f5a}.hero-trust strong{color:#102b45}
.hero-portrait{height:auto;aspect-ratio:4/5;width:100%;margin:0;align-self:center;border:0;box-shadow:none;border-radius:2px}
.hero-portrait img{height:100%;width:100%;object-fit:cover;object-position:85% center}
.hero-portrait::after{display:none}
.hero-portrait figcaption{left:24px;right:24px;bottom:22px}
.content-hero--editorial{background:#f6f3ec;color:#102b45;padding-block:88px;min-height:580px}
.content-hero--editorial::before{opacity:1;filter:none;background-position:85% 20%;background-size:auto 110%;background-repeat:no-repeat;background-color:#f6f3ec}
.content-hero--editorial::after{background:linear-gradient(90deg,#f6f3ec 0%,#f6f3ec 42%,rgba(246,243,236,.97) 49%,rgba(246,243,236,.14) 70%,transparent 85%);opacity:1}
.content-hero--editorial .wrap{position:relative;z-index:1}
.content-hero--editorial h1{color:#142f43;max-width:620px;width:54%;font-size:clamp(2.7rem,4.3vw,4.3rem);line-height:1.12;letter-spacing:-.035em;text-shadow:none}
.content-hero--editorial .eyebrow{color:#73511e;font-weight:800;opacity:1;letter-spacing:.15em}
.content-hero--editorial .lead{color:#73511e;font-weight:700;opacity:1;max-width:540px;width:47%;line-height:1.85;text-shadow:none}
.trend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.content-body{white-space:normal}.content-body p{white-space:pre-wrap}.content-body h3{font-size:1.45rem;line-height:1.35}.content-body li{margin-block:8px}.content-sources{overflow-wrap:anywhere}
.content-card{scroll-margin-top:100px}.content-summary{line-height:1.8}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #94703d;outline-offset:4px}
@media(min-width:741px) and (max-width:1100px){
 .hero-grid{grid-template-columns:1fr;gap:36px;padding-block:50px}
 .hero-copy{max-width:740px;margin-inline:auto;width:100%}.hero h1{max-width:700px;font-size:clamp(3.2rem,6vw,4.6rem)}
 .hero-portrait{width:min(100%,620px);aspect-ratio:1.16;height:auto;max-width:none;margin-inline:auto;order:0}
 .hero-portrait img{object-position:88% center}
 .hero-trust{grid-template-columns:repeat(3,1fr)}.hero .credentials{margin-top:24px}
 .content-hero--editorial{min-height:540px}.content-hero--editorial h1{width:62%;font-size:3.2rem}.content-hero--editorial .lead{width:55%}
 .content-hero--editorial::after{background:linear-gradient(90deg,#f6f3ec 0%,#f6f3ec 50%,rgba(246,243,236,.88) 63%,rgba(246,243,236,.08) 90%)}
 .trend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:740px){
 .hero-grid{grid-template-columns:1fr;gap:32px;padding-block:32px 48px}.hero-copy{padding:0}.hero-portrait{order:0;aspect-ratio:1/1;height:auto;width:100%;max-width:520px;margin:auto}.hero-portrait img{object-position:85% center}
 .hero h1{font-size:clamp(2.65rem,9.3vw,3.8rem);line-height:1.1}.hero .lead{font-size:1rem}.hero .eyebrow{font-size:.66rem;letter-spacing:.1em}
 .hero .credentials{margin-top:24px}.hero-trust{grid-template-columns:1fr}.hero-portrait figcaption{left:18px;right:18px;bottom:16px}
 .content-hero--editorial{padding:300px 0 42px;min-height:0;display:block}
 .content-hero--editorial::before{inset:0 0 auto;height:310px;background-size:auto 115%;background-position:78% 8%;opacity:1}
 .content-hero--editorial::after{inset:0 0 auto;height:315px;background:linear-gradient(180deg,transparent 70%,#f6f3ec 100%)}
 .content-hero--editorial h1,.content-hero--editorial .lead{width:100%;max-width:none}.content-hero--editorial h1{font-size:clamp(2.5rem,8vw,3.2rem);line-height:1.15;margin-block:20px}
 .content-hero--editorial .eyebrow{font-size:.68rem;letter-spacing:.1em}.content-hero--editorial .lead{font-size:1rem}
 .trend-grid{grid-template-columns:1fr}
}

.hero h1,.content-hero--editorial h1{line-height:1.1!important;letter-spacing:-.035em!important}

/* The editable image replaces the former decorative CSS background. */
.content-hero--editorial::before{display:none}
.content-backdrop-editorial{position:absolute;inset:0;z-index:-2;display:block;width:100%;height:100%;object-fit:cover;object-position:85% 12%;filter:none}
@media(max-width:740px){.content-backdrop-editorial{height:310px;object-position:78% 8%}}

.content-hero--editorial::after{pointer-events:none}.content-hero--editorial .wrap{pointer-events:none}.content-hero--editorial .wrap>*{pointer-events:auto}

/* Compact opening: the title and original portrait lead on phones and tablets. */
@media(max-width:1100px){
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"kicker portrait" "title portrait" "lead portrait" "actions actions" "note note" "trust trust" "credentials credentials";column-gap:28px;row-gap:14px;padding-block:28px 36px;align-items:center}
  .hero-copy{display:contents}
  .hero-copy>.eyebrow{grid-area:kicker;align-self:end}
  .hero-copy>h1{grid-area:title;margin:0;max-width:100%;font-size:clamp(2.35rem,4.9vw,3.35rem)!important}
  .hero-copy>.lead{grid-area:lead;margin:0;font-size:1rem;line-height:1.65;align-self:start}
  .hero-copy>.hero-actions{grid-area:actions;margin:6px 0 0;gap:16px;align-items:center;justify-content:flex-start}
  .hero-copy>.channel-note{grid-area:note;margin:0}
  .hero-copy>.hero-trust{grid-area:trust;margin:4px 0 0;max-width:none}
  .hero-copy>.credentials{grid-area:credentials;margin:0;font-size:.7rem;letter-spacing:.07em}
  .hero-grid>.hero-portrait{grid-area:portrait;width:100%;max-width:none;height:auto;aspect-ratio:4/5;margin:0;align-self:stretch}
  .hero-portrait figcaption{left:18px;right:18px;bottom:18px;flex-wrap:wrap;gap:5px}
  .hero-portrait figcaption strong{font-size:1.1rem}
  .hero-portrait figcaption span{font-size:.7rem}
  .hero .eyebrow{font-size:.66rem;letter-spacing:.08em}
}
@media(max-width:740px){
  .nav{height:68px;gap:10px}
  .hero-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"kicker" "title" "portrait" "lead" "actions" "note" "trust" "credentials";row-gap:14px;padding-block:20px 32px}
  .hero-copy>h1{font-size:clamp(2rem,8.3vw,3rem)!important;line-height:1.08!important;max-width:560px}
  .hero-grid>.hero-portrait{width:100%;max-width:520px;aspect-ratio:1.45;margin:2px auto 4px;align-self:auto}
  .hero-portrait figcaption{left:16px;right:16px;bottom:14px;flex-direction:row;align-items:end}
  .hero-portrait figcaption strong{font-size:1rem;max-width:70%}
  .hero-portrait figcaption span{font-size:.65rem;letter-spacing:.08em}
  .hero-copy>.hero-actions{margin-top:0;gap:12px;align-items:stretch;flex-direction:column}
  .hero-actions .button{font-size:.9rem;padding:12px 16px}
  .hero-actions .text-link{align-self:flex-start;min-height:44px;display:inline-flex;align-items:center;gap:8px}
}
@media(max-width:1100px){
  body[data-reading-large] .hero-grid{grid-template-areas:"kicker" "title" "portrait" "lead" "actions" "note" "trust" "credentials"}
}

/* Clear navigation and reliable keyboard focus without crowding the opening. */
.nav-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;flex-shrink:0;text-align:center}
.nav-cta-short{display:none}
.nav .links a[aria-current="page"]{color:#71521f;font-weight:700;text-decoration:underline;text-underline-offset:5px}
#conteudo:focus{outline:none}
@media(max-width:1100px){
  .nav{position:relative;gap:16px}
  .brand{min-width:0}
  .menu-toggle{display:inline-flex;align-items:center;gap:8px;margin-left:auto;min-width:44px;min-height:44px;flex-shrink:0;padding:9px 11px;border:1px solid #b6a080;color:#102b45;background:#fffdf9;font:600 .8rem/1 system-ui,sans-serif;cursor:pointer}
  .menu-toggle>span:first-child{width:18px;height:12px;border-top:2px solid currentColor;border-bottom:2px solid currentColor;position:relative}
  .menu-toggle>span:first-child::after{content:"";position:absolute;top:4px;left:0;width:18px;border-top:2px solid currentColor}
  .menu-label{position:static;width:auto;height:auto;overflow:visible;clip:auto;clip-path:none}
  .nav .links{position:absolute;top:100%;left:0;right:0;display:none;margin:0;padding:12px 20px;flex-direction:column;gap:0;max-height:calc(100vh - 100px);max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain;background:#fffdf9;border:1px solid #ded6c9;box-shadow:0 16px 32px rgba(16,43,69,.12)}
  .nav.menu-open .links{display:flex}
  .nav .links a{display:block;min-height:44px;padding:12px 0;border-bottom:1px solid #ded6c9;font-size:1rem;line-height:1.5}
  .nav .links a:last-child{border-bottom:0}
  .nav .links a::after{display:none}
}
@media(max-width:740px){
  .nav{gap:10px}
  .brand{flex:1 1 auto;gap:7px}
  .brand span{font-size:.85rem;max-width:150px}
  .brand small{font-size:.6rem;letter-spacing:.08em}
  .brand img{width:32px;height:32px;flex-shrink:0}
  .nav-cta{margin-left:0;padding:8px 10px;font-size:.8rem}
  .nav-cta-full{display:none}
  .nav-cta-short{display:inline}
  .menu-toggle{margin-left:0;padding-inline:9px;gap:6px}
}
@media(max-width:380px){
  .nav{gap:6px}
  .brand span{font-size:.75rem;max-width:110px}
  .brand img{width:28px;height:28px}
  .menu-toggle{padding-inline:8px;font-size:.75rem}
  .menu-toggle>span:first-child{display:none}
  .nav-cta{font-size:.75rem;padding-inline:8px}
}
