    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    :root {
      --color-bg-primary:   #FBF3F0;
      --color-bg-secondary: #FFFAF8;
      --color-blue:         #8DA0B3;
      --color-brown:        #6B4C3B;
      --color-text:         #3D3D3D;
      --color-text-light:   #7A7A7A;
      --color-white:        #FFFFFF;
      --font-serif:         'Fraunces', Georgia, serif;
      --font-sans:          'DM Sans', sans-serif;
      --ease-silk:          cubic-bezier(0.25, 0.46, 0.45, 0.94);
      --nav-h:              68px;
      --content-w:          720px;
      --sidebar-w:          280px;
    }

    html { scroll-behavior: smooth; }
    body { font-family: var(--font-sans); background: var(--color-bg-secondary); color: var(--color-text); overflow-x: hidden; }

    /* ── NAVBAR ── */
    #navbar {
      position: fixed; top: 0; left: 0; right: 0;
      height: var(--nav-h);
      display: flex; align-items: center; justify-content: space-between;
      padding: 0 5vw;
      background: rgba(255,250,248,.95);
      backdrop-filter: blur(14px);
      -webkit-backdrop-filter: blur(14px);
      box-shadow: 0 1px 0 rgba(107,76,59,.08);
      z-index: 1000;
    }

    .nav-logo { display: flex;flex-direction: column;line-height: 1.1;text-decoration: none; }
    .nav-logo-name { font-family: var(--font-serif); font-size: 1.05rem; font-weight: 400; color: var(--color-brown); letter-spacing: .08em; text-transform: uppercase; }
    .nav-logo-sub { font-family: var(--font-sans); font-size: .58rem; font-weight: 300; color: var(--color-text-light); letter-spacing: .22em; text-transform: uppercase; }

    .nav-back {
      display: inline-flex; align-items: center; gap: .5rem;
      font-family: var(--font-sans); font-size: .8rem; font-weight: 400;
      color: var(--color-text-light); text-decoration: none;
      transition: color .3s;
    }
    .nav-back:hover { color: var(--color-brown); }
    .nav-back svg { width: 14px; height: 14px; }

    .nav-cta-art {
      display: inline-flex; align-items: center; gap: .5rem;
      background: var(--color-blue); color: var(--color-white);
      padding: .5rem 1.1rem; border-radius: 100px;
      font-family: var(--font-sans); font-size: .78rem; font-weight: 500;
      text-decoration: none; transition: background .3s;
      white-space: nowrap;
    }
    .nav-cta-art:hover { background: var(--color-brown); }

    /* ── LAYOUT WRAPPER ── */
    .artigo-wrapper {
      max-width: var(--content-w);
      margin: 0 auto;
      padding: calc(var(--nav-h) + 3rem) 2vw 4rem;
      display: grid;
      grid-template-columns: 1fr;
      gap: 4rem;
      align-items: start;
    }

    /* ── MAIN CONTENT ── */
    .artigo-main { min-width: 0; }

    /* breadcrumb */
    .breadcrumb {
      display: flex; align-items: center; gap: .4rem; flex-wrap: wrap;
      margin-bottom: 1.8rem;
    }
    .breadcrumb a {
      font-family: var(--font-sans); font-size: .72rem;
      color: var(--color-text-light); text-decoration: none;
      transition: color .3s;
    }
    .breadcrumb a:hover { color: var(--color-brown); }
    .breadcrumb span { font-size: .72rem; color: var(--color-text-light); opacity: .5; }
    .breadcrumb .current { font-size: .72rem; color: var(--color-blue); }

    /* header */
    .artigo-header { margin-bottom: 2.5rem; }

    .artigo-tag {
      display: inline-block;
      font-family: var(--font-sans); font-size: .65rem; font-weight: 500;
      letter-spacing: .18em; text-transform: uppercase;
      color: var(--color-blue); margin-bottom: .8rem;
    }

    .artigo-titulo {
      font-family: var(--font-serif); font-size: clamp(1.8rem, 3vw, 2.8rem);
      font-weight: 400; color: var(--color-brown); line-height: 1.2;
      margin-bottom: 1rem;
    }

    .artigo-meta {
      display: flex; align-items: center; gap: 1rem;
      font-family: var(--font-sans); font-size: .75rem;
      color: var(--color-text-light);
    }

    .artigo-meta span { display: flex; align-items: center; gap: .3rem; }
    .artigo-meta svg { width: 13px; height: 13px; }

    /* imagem destaque */
    .artigo-img-destaque {
      width: 100%; aspect-ratio: 16/9;
      object-fit: cover; border-radius: 12px;
      display: block; margin-bottom: 2.5rem;
    }

    /* corpo */
    .artigo-corpo { font-family: var(--font-sans); font-size: .97rem; font-weight: 300; color: var(--color-text); line-height: 1.85; }

    .artigo-corpo p { margin-bottom: 1.4rem; }

    .artigo-corpo h2 {
      font-family: var(--font-serif); font-size: clamp(1.3rem, 2vw, 1.7rem);
      font-weight: 400; color: var(--color-brown); line-height: 1.25;
      margin: 2.5rem 0 1rem;
    }

    .artigo-corpo h3 {
      font-family: var(--font-serif); font-size: 1.15rem;
      font-weight: 400; color: var(--color-brown);
      margin: 2rem 0 .8rem;
    }

    /* CTA inline */
    .cta-inline { color: var(--color-blue); text-decoration: underline; text-decoration-color: rgba(141,160,179,.4); text-underline-offset: 3px; transition: color .3s; }
    .cta-inline:hover { color: var(--color-brown); }

    /* CTA final botão */
    .cta-final-artigo {
      display: flex; margin: 3rem 0;
    }

    .btn-whatsapp {
      display: inline-flex; align-items: center; gap: .65rem;
      background: #25D366; color: var(--color-white);
      text-decoration: none; padding: .9rem 1.8rem; border-radius: 100px;
      font-family: var(--font-sans); font-size: .9rem; font-weight: 500;
      position: relative; overflow: hidden;
      transition: transform .3s var(--ease-silk), box-shadow .3s;
    }
    .btn-whatsapp::before {
      content: ''; position: absolute; inset: 0;
      background: rgba(255,255,255,.15);
      transform: translateX(-110%) skewX(-15deg);
      transition: transform .5s var(--ease-silk);
    }
    .btn-whatsapp:hover::before { transform: translateX(110%) skewX(-15deg); }
    .btn-whatsapp:hover { transform: translateY(-2px); box-shadow: 0 12px 32px rgba(37,211,102,.25); }

    /* aviso legal */
    .aviso-legal {
      font-family: var(--font-sans); font-size: .75rem; font-weight: 300;
      color: var(--color-text-light); line-height: 1.6;
      border-top: 1px solid rgba(107,76,59,.08);
      padding-top: 1.5rem; margin-top: 1rem;
    }

    /* artigos relacionados */
    .relacionados { margin-top: 4rem; }

    .relacionados-title {
      font-family: var(--font-serif); font-size: 1.4rem; font-weight: 400;
      color: var(--color-brown); margin-bottom: 1.8rem;
    }

    .relacionados-grid {
      display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem;
    }

    .rel-card {
      background: var(--color-white); border-radius: 12px; overflow: hidden;
      border: 1px solid rgba(107,76,59,.06);
      transition: transform .3s var(--ease-silk), box-shadow .3s;
      text-decoration: none;
    }
    .rel-card:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(107,76,59,.08); }

    .rel-card-img { width: 100%; aspect-ratio: 16/9; object-fit: cover; display: block; background: var(--color-bg-primary); }

    .rel-card-body { padding: 1rem 1.1rem 1.2rem; }
    .rel-card-body h4 { font-family: var(--font-serif); font-size: .95rem; font-weight: 400; color: var(--color-brown); line-height: 1.35; margin-bottom: .5rem; }
    .rel-card-body p { font-family: var(--font-sans); font-size: .78rem; font-weight: 300; color: var(--color-text-light); line-height: 1.6; margin-bottom: .6rem; }
    .rel-card-link { font-family: var(--font-sans); font-size: .75rem; color: var(--color-blue); }

    /* ── SIDEBAR — removida ── */
    /*
    .artigo-sidebar { position: sticky; top: calc(var(--nav-h) + 2rem); }
    .sidebar-card { background: var(--color-white); border-radius: 16px; border: 1px solid rgba(107,76,59,.06); padding: 1.8rem; margin-bottom: 1.5rem; }
    .sidebar-foto { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; object-position: top center; display: block; margin-bottom: 1rem; border: 2px solid var(--color-bg-primary); }
    .sidebar-nome { font-family: var(--font-serif); font-size: 1rem; font-weight: 400; color: var(--color-brown); margin-bottom: .2rem; }
    .sidebar-crm { font-family: var(--font-sans); font-size: .7rem; color: var(--color-text-light); letter-spacing: .08em; margin-bottom: .8rem; }
    .sidebar-bio { font-family: var(--font-sans); font-size: .8rem; font-weight: 300; color: var(--color-text-light); line-height: 1.7; margin-bottom: 1.2rem; }
    .sidebar-cta { display: flex; align-items: center; justify-content: center; gap: .5rem; background: #25D366; color: var(--color-white); padding: .7rem 1rem; border-radius: 100px; font-family: var(--font-sans); font-size: .8rem; font-weight: 500; text-decoration: none; transition: background .3s; }
    .sidebar-cta:hover { background: #1da851; }
    .sidebar-cta svg { width: 16px; height: 16px; flex-shrink: 0; }
    */

    /* ── MOBILE CTA FIXO ── */
    #mobile-cta-fixo {
      display: none;
      position: fixed; bottom: 0; left: 0; right: 0;
      background: rgba(255,250,248,.97);
      backdrop-filter: blur(10px);
      padding: .8rem 5vw;
      border-top: 1px solid rgba(107,76,59,.08);
      z-index: 800;
    }

    #mobile-cta-fixo .btn-whatsapp {
      width: 100%; justify-content: center;
    }

    /* ── FOOTER ARTIGO ── */
    #footer-artigo {
      background: #3a2a22;
      padding: 2.5rem 5vw;
      text-align: center;
    }

    .footer-artigo-logo { font-family: var(--font-serif); font-size: 1rem; font-weight: 400; color: var(--color-white); letter-spacing: .08em; text-transform: uppercase; display: block; margin-bottom: .3rem; }
    .footer-artigo-sub { font-family: var(--font-sans); font-size: .6rem; color: rgba(255,255,255,.35); letter-spacing: .2em; text-transform: uppercase; display: block; margin-bottom: 1.2rem; }

    .footer-artigo-links { display: flex; align-items: center; justify-content: center; gap: 1.5rem; flex-wrap: wrap; margin-bottom: 1rem; }
    .footer-artigo-links a { font-family: var(--font-sans); font-size: .75rem; color: rgba(255,255,255,.45); text-decoration: none; transition: color .3s; }
    .footer-artigo-links a:hover { color: var(--color-white); }

    .footer-artigo-legal { font-family: var(--font-sans); font-size: .68rem; color: rgba(255,255,255,.2); }

    /* ── RESPONSIVE ── */
    @media (max-width: 900px) {
      .artigo-wrapper {
        grid-template-columns: 1fr;
        gap: 0;
        padding: calc(var(--nav-h) + 2rem) 5vw 6rem;
      }

      #mobile-cta-fixo { display: block; }

.relacionados-grid { grid-template-columns: 1fr; gap: 1rem; }

      .rel-card { display: grid; grid-template-columns: 100px 1fr; }
      .rel-card-img { aspect-ratio: 1/1; height: 100%; }
    }