/* Bounded editorial additions. The site's Manrope/Fraunces and brand palette remain. */
.article-toc { max-width:720px; margin:0 auto 2rem; padding:1.2rem 1.4rem; border:1px solid #e0ddd4; border-radius:12px; background:#fff; }
.article-toc h2 { font:700 .78rem var(--font-body); text-transform:uppercase; letter-spacing:.12em; margin-bottom:.8rem; }
.article-toc summary { cursor:pointer; font-weight:700; font-size:.88rem; }
.article-toc[open] summary { margin-bottom:.8rem; }
.article-toc ol { padding-left:1.2rem; display:grid; gap:.35rem; }
.article-toc a { font-size:.88rem; color:var(--ink-soft); text-decoration:underline; text-underline-offset:3px; }
.article-body blockquote { margin:1.4rem 0; padding:1.3rem 1.5rem; border-left:3px solid var(--gold-500); background:#f4f0e6; border-radius:0 12px 12px 0; }
.article-body blockquote p + p { margin-top:.8rem; }
.article-body blockquote p { font-size:.98rem; }
.article-body .table-wrap { width:100%; }
.article-body table { min-width:520px; }
.article-body a { overflow-wrap:anywhere; }
.article-body .table-wrap:focus-visible { outline:3px solid var(--gold-500); outline-offset:3px; }
.editorial-related { max-width:720px; margin:2rem auto 0; padding-top:1.5rem; border-top:1px solid #dfddd6; }
.editorial-related h2 { font:500 1.5rem var(--font-display); margin-bottom:1rem; }
.editorial-related ul { padding-left:1.2rem; }
.editorial-related a { font-size:.95rem; color:var(--ink-soft); text-decoration:underline; text-underline-offset:3px; }
.editorial-latest { padding-block:clamp(2.5rem,5vw,4rem); }
.editorial-latest h2 { font:400 clamp(1.7rem,3vw,2.5rem) var(--font-display); margin-bottom:1.5rem; }
.editorial-latest .insight-card .cat { display:block; font-size:.7rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--gold-deep); }
.editorial-latest .insight-card .go { display:block; margin-top:1rem; }
.editorial-privacy { max-width:850px; padding-block:2.5rem 4rem; }
.editorial-privacy h2 { font:500 1.65rem var(--font-display); margin:2rem 0 1rem; }
.editorial-privacy p, .editorial-privacy li { color:var(--ink-soft); font-size:1rem; }
.editorial-privacy p + p { margin-top:1rem; }
.editorial-privacy ul { padding-left:1.3rem; margin-block:1rem; }
.editorial-privacy a { color:#80612d; text-decoration:underline; overflow-wrap:anywhere; }
.editorial-privacy .company-details { margin-top:2rem; padding-top:1rem; border-top:1px solid #dfddd6; }
.editorial-privacy .company-details summary { cursor:pointer; color:var(--ink-soft); font-size:1rem; }
.editorial-privacy .company-details summary:focus-visible { outline:3px solid var(--gold-500); outline-offset:5px; }
.editorial-privacy .company-details p { margin-top:.8rem; }
.consultation-highlight { display:grid; grid-template-columns:minmax(0,2fr) minmax(210px,1fr); gap:2rem; align-items:center; margin-bottom:1.5rem; padding:clamp(1.5rem,4vw,2.5rem); border:1px solid var(--gold-500); border-radius:var(--radius-md); background:var(--white); }
.consultation-highlight h3 { font:500 clamp(1.6rem,3vw,2rem) var(--font-display); margin-bottom:.8rem; color:var(--navy-900); }
.consultation-highlight p, .consultation-highlight li { color:var(--ink-soft); font-size:1rem; }
.consultation-highlight ul { margin-top:1rem; padding-left:1.2rem; display:grid; gap:.55rem; }
.consultation-highlight__action { display:grid; justify-items:start; gap:.75rem; }
.consultation-highlight .consultation-highlight__price { font:500 clamp(2rem,4vw,2.8rem) var(--font-display); color:var(--navy-900); }
@media(max-width:700px) { .consultation-highlight { grid-template-columns:minmax(0,1fr); gap:1.5rem; } }
.contact-form__consent { display:flex; align-items:flex-start; gap:.65rem; font-size:.78rem; color:var(--ink-soft); margin:1rem 0; }
.contact-form__consent input { flex-shrink:0; width:17px; height:17px; margin-top:3px; accent-color:var(--gold-deep); }
.contact-form__consent a { text-decoration:underline; text-underline-offset:3px; }
.footer__bar a { text-decoration:underline; text-underline-offset:3px; }
.practice-card h3 { font:500 1.5rem var(--font-display); margin-bottom:.9rem; }
.practice-card p { font-size:1rem; line-height:1.7; color:var(--ink-soft); }
@media(max-width:560px) { .article-body blockquote { padding:1rem; } .article-toc { padding:1rem; } .article-toc a { font-size:.83rem; } }
