/* Blog Simbora Paris: identidade do site (navy, coral, Cormorant Garamond + DM Sans).
   Base: preview aprovado pela Camila (propostas/blog/blog/blog.css). Sem framework, sem estilo inline. */
:root {
  --navy:#1E2D59; --navy-dark:#141D3B; --navy-soft:#2A3F7A;
  --coral:#D57C48; --coral-dark:#B8632E; --coral-soft:#FDF3EE;
  --cream:#F7F3EC; --paper:#FFFFFF; --ink:#1B2233; --ink-2:#4A5268; --ink-3:#6B7286;
  --line:rgba(30,45,89,0.12);
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:'DM Sans', system-ui, sans-serif; font-size:17px; line-height:1.65; -webkit-font-smoothing:antialiased; }
img { max-width:100%; }
h1, h2, h3, h4 { font-family:'Cormorant Garamond', Georgia, serif; font-weight:600; letter-spacing:-0.01em; color:var(--navy); }
h1 { font-size:clamp(2.1rem, 5.5vw, 3.2rem); line-height:1.08; margin:10px 0 14px; }
h2 { font-size:clamp(1.6rem, 4vw, 2.1rem); line-height:1.15; margin:38px 0 10px; scroll-margin-top:80px; }
h3 { font-size:1.3rem; margin:24px 0 6px; scroll-margin-top:80px; }
h4 { font-size:1.12rem; margin:20px 0 6px; }
p { margin:0 0 14px; }
a { color:var(--coral-dark); }
:focus-visible { outline:2px solid var(--coral); outline-offset:2px; }
.wrap { max-width:1120px; margin:0 auto; padding:0 20px; }
.narrow { max-width:760px; margin:0 auto; padding:0 20px; }

/* cabeçalho (mesmo do site) */
.hdr { position:sticky; top:0; z-index:30; background:rgba(255,255,255,0.96); border-bottom:1px solid var(--line); box-shadow:0 1px 2px rgba(0,0,0,0.04); }
.hdr .row { display:flex; align-items:center; justify-content:space-between; gap:16px; height:64px; }
.brand { display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--navy); }
.brand img { width:38px; height:38px; border-radius:50%; object-fit:cover; }
.brand b { font-family:'Cormorant Garamond', serif; font-size:1.25rem; font-weight:700; line-height:1; display:block; }
.brand span { font-size:0.62rem; letter-spacing:0.16em; text-transform:uppercase; color:var(--ink-3); }
.nav { display:flex; gap:22px; align-items:center; }
.nav a, .mnav nav a { font-size:0.82rem; font-weight:600; color:var(--ink); text-decoration:none; }
.nav a:hover, .nav a.on { color:var(--coral-dark); }
.hdr-acoes { display:flex; align-items:center; gap:8px; }
.mnav { display:none; position:relative; }
.mnav summary { list-style:none; cursor:pointer; padding:8px; color:var(--navy); display:flex; }
.mnav summary::-webkit-details-marker { display:none; }
.mnav summary svg { width:22px; height:22px; }
.mnav nav { position:absolute; right:0; top:46px; background:var(--paper); border:1px solid var(--line); border-radius:14px; box-shadow:0 18px 40px rgba(30,45,89,0.16); padding:8px; min-width:200px; display:flex; flex-direction:column; }
.mnav nav a { padding:10px 12px; border-radius:10px; font-size:0.95rem; }
.mnav nav a.on { color:var(--coral-dark); background:var(--coral-soft); }
.btn { display:inline-flex; align-items:center; gap:8px; padding:10px 16px; border-radius:12px; background:var(--coral); color:#fff; font:600 0.86rem 'DM Sans', sans-serif; text-decoration:none; border:0; cursor:pointer; line-height:1.2; }
.btn:hover { background:var(--coral-dark); color:#fff; }
.btn.ghost { background:transparent; color:var(--navy); border:1.5px solid var(--line); }
.btn.ghost:hover { border-color:var(--navy); color:var(--navy); }
.btn svg, .wa svg { width:16px; height:16px; flex-shrink:0; }
@media (max-width:900px) { .nav { display:none; } .mnav { display:block; } }
@media (max-width:520px) { .brand span { display:none; } .hdr .row { height:58px; } .hdr .btn span { display:none; } .hdr .btn { padding:9px 11px; } }

/* início e categoria */
.hero { padding:40px 0 22px; }
.eyebrow { display:inline-block; font-size:0.72rem; letter-spacing:0.16em; text-transform:uppercase; color:var(--coral-dark); font-weight:700; margin-bottom:8px; }
.lead { font-size:1.12rem; color:var(--ink-2); max-width:660px; }
.chips { display:flex; gap:8px; flex-wrap:wrap; margin:18px 0 8px; }
.chip { padding:7px 13px; border-radius:999px; border:1px solid var(--line); background:var(--paper); font-size:0.8rem; font-weight:600; color:var(--navy); text-decoration:none; }
.chip:hover { border-color:var(--navy); }
.chip.on { background:var(--navy); color:#fff; border-color:var(--navy); }
.feat { display:grid; grid-template-columns:1.25fr 1fr; gap:26px; align-items:center; background:var(--cream); border-radius:26px; overflow:hidden; margin-top:22px; text-decoration:none; color:inherit; }
.feat img { width:100%; height:100%; min-height:320px; object-fit:cover; display:block; }
.feat .tx { padding:30px 30px 30px 6px; }
.feat h2 { margin:8px 0 10px; font-size:clamp(1.7rem, 3.6vw, 2.4rem); }
.feat p { color:var(--ink-2); }
@media (max-width:820px) { .feat { grid-template-columns:1fr; } .feat .tx { padding:22px; } .feat img { min-height:220px; } }
.cat { display:inline-block; font-size:0.7rem; letter-spacing:0.12em; text-transform:uppercase; font-weight:700; padding:4px 10px; border-radius:999px; background:var(--coral-soft); color:var(--coral-dark); text-decoration:none; }
.meta { display:flex; flex-wrap:wrap; gap:6px 14px; font-size:0.82rem; color:var(--ink-3); margin-top:10px; }
.grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; margin:26px 0 40px; }
.grid-2 { grid-template-columns:repeat(2, 1fr); }
@media (max-width:900px) { .grid, .grid-3 { grid-template-columns:repeat(2, 1fr); } }
@media (max-width:600px) { .grid, .grid-2, .grid-3 { grid-template-columns:1fr; } }
.card { display:block; text-decoration:none; color:var(--ink); background:var(--paper); border:1px solid var(--line); border-radius:20px; overflow:hidden; transition:transform .25s, box-shadow .25s; }
.card:hover { transform:translateY(-3px); box-shadow:0 18px 40px rgba(30,45,89,0.12); }
.card img { width:100%; height:auto; aspect-ratio:16/10; object-fit:cover; display:block; }
.card .b { padding:16px 18px 18px; }
.card h3 { margin:8px 0 6px; font-size:1.25rem; line-height:1.2; }
.card p { font-size:0.92rem; color:var(--ink-2); margin:0 0 10px; }
.pag { display:flex; justify-content:space-between; align-items:center; gap:12px; margin:-10px 0 40px; }
.pag-n { font-size:0.85rem; color:var(--ink-3); }
.band { background:var(--navy); color:#fff; border-radius:26px; padding:30px; display:grid; grid-template-columns:1.4fr 1fr; gap:24px; align-items:center; margin:10px 0 56px; }
.band h2 { color:#fff; margin:0 0 8px; }
.band p { color:rgba(255,255,255,0.8); margin:0; }
.band-acoes { display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.wa-btn { background:#25D366; }
.wa-btn:hover { background:#1DA851; }
@media (max-width:760px) { .band { grid-template-columns:1fr; } .band-acoes { justify-content:flex-start; } }

/* artigo */
.crumbs { font-size:0.8rem; color:var(--ink-3); padding-top:22px; }
.crumbs a { color:var(--ink-3); text-decoration:none; }
.crumbs a:hover { color:var(--coral-dark); }
.art-head { padding:8px 0 18px; }
.resumo { font-size:1.08rem; color:var(--ink-2); margin:0; }
.cover { width:100%; height:auto; aspect-ratio:16/8; object-fit:cover; border-radius:22px; display:block; margin:8px 0 22px; }
.author { display:grid; grid-template-columns:56px 1fr auto; gap:6px 14px; align-items:center; background:var(--cream); border-radius:18px; padding:14px 16px; margin:0 0 26px; }
.author img { width:56px; height:56px; border-radius:50%; object-fit:cover; }
.author b { display:block; color:var(--navy); }
.author span { font-size:0.88rem; color:var(--ink-2); }
@media (max-width:520px) { .author { grid-template-columns:56px 1fr; align-items:start; } .author .btn { grid-column:2; justify-self:start; } }
.toc { border-left:3px solid var(--coral); padding:6px 16px; margin:0 0 26px; font-size:0.92rem; }
.toc b { display:block; color:var(--navy); margin-bottom:6px; }
.toc a { display:block; color:var(--ink-2); text-decoration:none; padding:3px 0; }
.toc a:hover { color:var(--coral-dark); }
.answer { font-size:1.12rem; color:var(--ink); background:var(--coral-soft); border-radius:16px; padding:16px 18px; margin:0 0 22px; border-left:3px solid var(--coral); }
.answer > b { color:var(--coral-dark); }
.art-corpo ul, .art-corpo ol, .sources ul { padding-left:22px; }
.art-corpo li { margin:5px 0; }
.art-corpo img { border-radius:16px; height:auto; display:block; margin:8px 0; }
.art-corpo blockquote { margin:18px 0; padding:4px 18px; border-left:3px solid var(--line); color:var(--ink-2); font-style:italic; }
.art-corpo pre { background:#F4F2EE; border-radius:12px; padding:12px 14px; overflow-x:auto; font-size:0.9rem; }
.art-corpo hr { border:0; border-top:1px solid var(--line); margin:30px 0; }
table { width:100%; border-collapse:collapse; font-size:0.92rem; margin:0; }
th, td { text-align:left; padding:10px 12px; border-bottom:1px solid var(--line); vertical-align:top; }
th { background:var(--navy); color:#fff; font-size:0.74rem; letter-spacing:0.08em; text-transform:uppercase; }
tr:nth-child(even) td { background:#FBFAF7; }
.al-center { text-align:center; } .al-right { text-align:right; }
.tscroll { overflow-x:auto; border-radius:14px; border:1px solid var(--line); margin:12px 0 22px; -webkit-overflow-scrolling:touch; }
@media (max-width:700px) { .tscroll table { min-width:640px; } .tscroll::after { content:"Deslize para ver a tabela inteira"; display:block; font-size:0.74rem; color:var(--ink-3); padding:6px 12px; border-top:1px solid var(--line); background:#FBFAF7; } }
.precos a { color:var(--navy); text-decoration:none; }
.precos a:hover { color:var(--coral-dark); }
.opcoes { list-style:none; padding:0 !important; margin:0; }
.opcoes li { margin:0 0 2px !important; }
.nota-precos { font-size:0.82rem; color:var(--ink-3); margin-top:-12px; }
.svc { display:grid; grid-template-columns:96px 1fr auto; gap:16px; align-items:center; background:var(--paper); border:1.5px solid var(--coral); border-radius:18px; padding:14px 16px; margin:18px 0 22px; }
.svc img { width:96px; height:72px; object-fit:cover; border-radius:12px; margin:0; }
.svc b { color:var(--navy); display:block; font-size:1.02rem; }
.svc span { font-size:0.86rem; color:var(--ink-2); }
.svc-preco { display:flex; flex-direction:column; align-items:flex-start; gap:2px; }
.svc .p { font-family:'Cormorant Garamond', serif; font-size:1.5rem; color:var(--coral-dark); font-weight:700; line-height:1; }
.svc .p-consulta { font-size:1.1rem; }
.svc small { display:block; font-size:0.72rem; color:var(--ink-3); max-width:180px; }
.svc .btn { margin-top:8px; }
@media (max-width:600px) { .svc { grid-template-columns:1fr; } .svc img { width:100%; height:140px; } }
.tip { display:grid; grid-template-columns:48px 1fr; gap:14px; background:var(--cream); border-radius:18px; padding:16px 18px; margin:18px 0 22px; }
.tip img { width:48px; height:48px; border-radius:50%; object-fit:cover; margin:0; }
.tip b { color:var(--navy); display:block; font-size:0.78rem; letter-spacing:0.12em; text-transform:uppercase; margin-bottom:4px; }
.tip p { margin:0 0 8px; font-style:italic; color:var(--ink-2); }
.tip p:last-child, .warn p:last-child, .sources p:last-child { margin-bottom:0; }
.warn { border:1px solid #F3C4A8; background:#FFF8F3; border-radius:14px; padding:12px 16px; margin:14px 0 22px; font-size:0.94rem; color:var(--ink-2); }
.warn-t { display:block; color:var(--coral-dark); margin-bottom:4px; }
.wa { display:inline-flex; align-items:center; gap:10px; background:#25D366; color:#fff; padding:12px 18px; border-radius:14px; text-decoration:none; font-weight:700; font-size:0.92rem; margin:6px 0 8px; }
.wa:hover { background:#1DA851; color:#fff; }
.reviews { display:flex; gap:16px; align-items:center; justify-content:space-between; flex-wrap:wrap; border:1px solid var(--line); border-radius:18px; padding:14px 16px; margin:18px 0 22px; }
.reviews b { display:block; color:var(--navy); }
.reviews span { font-size:0.88rem; color:var(--ink-2); }
.galeria { display:grid; grid-template-columns:repeat(auto-fit, minmax(180px, 1fr)); gap:10px; margin:14px 0 22px; }
.galeria figure { margin:0; }
.galeria img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:14px; margin:0; }
.art-corpo details { border:1px solid var(--line); border-radius:14px; padding:12px 16px; margin:8px 0; background:var(--paper); }
.art-corpo summary { cursor:pointer; font-weight:600; color:var(--navy); }
.art-corpo details p { margin:8px 0 0; color:var(--ink-2); font-size:0.95rem; }
.sources { display:block; font-size:0.84rem; color:var(--ink-3); border-top:1px solid var(--line); padding-top:14px; margin-top:34px; }
.sources b { color:var(--ink-2); }
.sources li { margin:3px 0; }
.share { display:flex; gap:10px; flex-wrap:wrap; margin:22px 0; }
.related { margin:36px 0 50px; }
.related .grid { margin-top:14px; }
.vazio { padding:70px 20px 90px; }
.vazio .btn { margin:6px 6px 0 0; }

/* rodapé (mesmo do site) */
footer.ft { background:var(--navy); color:rgba(255,255,255,0.6); padding:56px 0 28px; font-size:0.88rem; }
.ft-grid { display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr; gap:36px; }
.ft-logo { display:flex; align-items:center; gap:12px; margin-bottom:14px; }
.ft-logo img { width:40px; height:40px; border-radius:50%; object-fit:cover; }
.ft-logo b { display:block; color:#fff; font-family:'Cormorant Garamond', serif; font-size:1.15rem; line-height:1; }
.ft-logo span { font-size:0.62rem; letter-spacing:0.16em; text-transform:uppercase; color:rgba(255,255,255,0.5); }
.ft-marca p { line-height:1.6; margin:0; }
footer.ft h4 { color:#fff; font-family:'DM Sans', sans-serif; font-size:0.72rem; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; margin:0 0 14px; }
footer.ft ul { list-style:none; padding:0; margin:0; }
footer.ft li { margin:0 0 8px; }
footer.ft a { color:rgba(255,255,255,0.6); text-decoration:none; }
footer.ft a:hover { color:var(--coral); }
.ft-base { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; border-top:1px solid rgba(255,255,255,0.1); margin-top:40px; padding-top:24px; font-size:0.76rem; color:rgba(255,255,255,0.4); }
@media (max-width:900px) { .ft-grid { grid-template-columns:1fr 1fr; } .ft-marca { grid-column:1 / -1; } }
@media (max-width:520px) { .ft-grid { grid-template-columns:1fr; } }
.wa-float { position:fixed; right:20px; bottom:20px; z-index:40; width:54px; height:54px; border-radius:50%; background:#25D366; color:#fff; display:flex; align-items:center; justify-content:center; box-shadow:0 12px 28px rgba(0,0,0,0.22); }
.wa-float svg { width:26px; height:26px; }
.wa-float:hover { background:#1DA851; }
/* faixa da prévia do painel (W3): classe em vez de style inline, que a CSP do blog bloqueia */
.previa-faixa { position:sticky; top:0; z-index:50; background:var(--coral); color:#fff; font:600 13px/1.4 'DM Sans', sans-serif; padding:8px 14px; text-align:center; }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .card, .card:hover { transition:none; transform:none; } }
