/* Blog SSR próprio; estilos isolados da réplica original do Elementor. */
:root { color-scheme: light; --ink:#29232b; --muted:#625a67; --purple:#694568; --violet:#856381; --lilac:#eee4ee; --wash:#fbf8fb; --line:#e5dae6; }
* { box-sizing:border-box }
html { scroll-behavior:smooth }
body { margin:0; font-family:"Lato", "Segoe UI", Arial, sans-serif; background:#fff; color:var(--ink); -webkit-font-smoothing:antialiased; line-height:1.7 }
a { color:inherit }
a:focus-visible { outline:3px solid var(--purple); outline-offset:3px }
img { max-width:100% }
h1,h2,h3 { font-family:Georgia,"Times New Roman",serif; line-height:1.17; letter-spacing:-.025em; font-weight:500 }
h1 { font-size:clamp(2.5rem,5vw,4.6rem); margin:.4em 0 .36em }
h2 { font-size:clamp(1.65rem,3vw,2.45rem) }
p { margin:0 0 1.2em }
.wrap { width:min(1100px,calc(100% - 48px)); margin-inline:auto }
.skip { position:absolute; left:-9999px; top:4px; background:#fff; z-index:20; padding:8px }
.skip:focus { left:12px }
.blog-header { background:#fff; border-bottom:1px solid var(--line) }
.header-inner { min-height:110px; display:flex; justify-content:space-between; align-items:center; gap:30px }
.brand { width:170px; max-height:90px; object-fit:contain; display:block }
nav { display:flex; align-items:center; gap:22px; font-size:.92rem }
nav a { text-decoration:none; font-weight:600 }
nav a:hover,.article-breadcrumb a:hover { color:var(--purple); text-decoration:underline }
.small-cta,.cta { display:inline-flex; align-items:center; justify-content:center; padding:12px 23px; min-height:46px; text-decoration:none; border-radius:3px; background:var(--purple); color:#fff; font-size:.91rem; font-weight:700; line-height:1.35 }
.small-cta:hover,.cta:hover { background:#4c304d; color:#fff; text-decoration:none }
.eyebrow { font-size:.77rem; letter-spacing:.12em; text-transform:uppercase; font-weight:700; color:var(--purple) }
.blog-hero { padding:90px 0 85px; background:linear-gradient(115deg,#faf6fa 0%,#f3ebf2 65%,#fff 100%); border-bottom:1px solid var(--line) }
.blog-hero .wrap { max-width:920px }
.blog-hero p { max-width:670px; font-size:1.16rem; color:var(--muted) }
.blog-list { padding-top:70px; padding-bottom:95px }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:28px }
.section-heading h2 { margin:0 }
.section-heading p { margin:0; color:var(--muted) }
.cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px }
.post-card { min-width:0; border:1px solid var(--line); background:#fff; border-radius:4px; overflow:hidden; transition:box-shadow .2s }
.post-card:hover { box-shadow:0 8px 28px #392e3a19 }
.post-card a { display:block; height:100%; text-decoration:none }
.post-card img { display:block; width:100%; height:230px; object-fit:cover; background:#f3edf3 }
.card-body { padding:24px 22px 27px }
.card-body h2 { margin:13px 0; font-size:1.6rem }
.card-body p { font-size:.94rem; color:var(--muted) }
.read-more { color:var(--purple); font-weight:700; font-size:.94rem }
.final-cta { padding:64px 0; background:var(--lilac); text-align:center }
.final-cta h2 { margin:0 0 12px }
.final-cta p { color:var(--muted) }
.article-breadcrumb { padding-top:30px; font-size:.9rem }
.article-breadcrumb a { color:var(--purple) }
.article-layout { max-width:870px; padding-top:38px }
.article-layout header { max-width:820px; margin:0 auto 34px }
.article-layout h1 { margin:.34em 0 }
.lead { font-size:1.15rem; line-height:1.8; color:var(--muted) }
.article-image { display:block; width:100%; max-height:510px; object-fit:cover; background:var(--lilac); border-radius:3px }
.article-body { max-width:730px; margin:35px auto 80px; font-size:1.07rem }
.article-body section { margin:45px 0 }
.article-body h2 { margin:0 0 18px }
.article-body p { color:#463e48 }
.article-body ul { padding-left:1.45em; margin:20px 0; color:#463e48 }
.article-body li { padding:3px 0 }
.article-cta { margin-top:50px; background:var(--wash); padding:37px; border-left:4px solid var(--purple) }
.article-cta h2 { font-size:1.75rem; margin:0 0 15px }
.article-cta p { font-size:.98rem }
.related { padding-bottom:95px }
.related h2 { margin:0 0 25px }
.blog-footer { background:#2c252e; color:#eee7ef; padding:36px 0; font-size:.92rem }
.blog-footer .wrap { display:flex; flex-wrap:wrap; gap:10px 25px; align-items:center; justify-content:space-between }
.blog-footer span { color:#d2c6d3 }
.blog-footer a { color:#f2dff4 }
.empty { text-align:center; padding-top:110px; padding-bottom:130px }
@media(max-width:850px) {
  .cards { grid-template-columns:repeat(2,minmax(0,1fr)) }
  .section-heading { display:block }
  .section-heading p { margin-top:10px }
}
@media(max-width:590px) {
  .wrap { width:min(100% - 36px,1100px) }
  .header-inner { min-height:82px; gap:10px }
  .brand { width:110px; max-height:70px }
  nav { gap:12px; font-size:.77rem }
  .small-cta { padding:10px; min-height:42px; font-size:.75rem }
  .blog-hero { padding:58px 0 55px }
  .blog-hero p { font-size:1.03rem }
  .blog-list { padding-top:48px; padding-bottom:60px }
  .cards { grid-template-columns:1fr }
  .post-card img { height:240px }
  .card-body { padding:23px }
  .article-layout { padding-top:22px }
  .article-breadcrumb { padding-top:25px }
  .article-body { font-size:1rem; margin-bottom:55px }
  .article-body section { margin:37px 0 }
  .article-cta { padding:26px }
  .related { padding-bottom:65px }
  .blog-footer .wrap { display:block }
  .blog-footer span,.blog-footer a { display:block; margin-top:9px }
}
/* Multilingual navigation: languages must never cause horizontal overflow on phones. */
.blog-header nav { flex-wrap: wrap; justify-content: flex-end; gap: 9px 17px; min-width: 0; }
.blog-header .header-inner { min-width: 0; }
.blog-header nav [aria-label="Language"],.blog-header nav [aria-label="Idioma"] { flex-shrink: 0; }
@media(max-width:590px) {
  .blog-header .header-inner { flex-wrap: wrap; justify-content: center; padding-block: 12px; }
  .blog-header nav { justify-content: center; width: 100%; gap: 9px 12px; }
  .blog-header nav a { overflow-wrap: anywhere; }
}
