/* REVISION 2026-11-01: refinamientos de escritorio y móvil. No cambiar headers. */
:root{--rdg-accent:#96232b}
@media(min-width:900px){
/* Editorial rhythm: headings do not overwhelm copy. */
.inner-body .reading-section>h2,.inner-body .opening-heading,.page-areas .reading-section>h2,.private-page .private-main h2{font-size:clamp(23px,1.75vw,29px)!important;line-height:1.27!important}
.inner-body .opening-subline,.inner-body .closing-thought,.page-quien-soy .bio-text-wrap blockquote{font-size:clamp(18px,1.45vw,22px)!important;line-height:1.36!important}
.inner-body .reading-section{margin-bottom:23px!important}
/* Float illustrations to right edge of actual content column; keep dimensions. */
.inner-body .reading-section:has(>.watercolor-inline){display:flow-root!important}
.inner-body .reading-section>.watercolor-inline{float:right!important;width:min(31%,410px)!important;margin:2px 0 12px 26px!important;max-width:410px!important}
.inner-body .reading-section:has(>.watercolor-inline)>p{max-width:830px!important}
.inner-body .reading-section:has(>.watercolor-inline)>.opening-heading{margin-bottom:17px!important}
/* Avoid unnecessarily long reading lines. */
.inner-body .reading-section:not(:has(>.watercolor-inline))>p{max-width:860px!important}
/* Family: list occupies its allotted column without blank gap beneath. */
#familia .area-topics-card ul{row-gap:15px!important;align-content:space-evenly!important}
#familia .area-topics-card{align-self:stretch!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
/* Contracts: retain bottom alignment, distribute eight topics vertically. */
#contratos .area-topics-card{align-self:stretch!important;display:flex!important;align-items:stretch!important}
#contratos .area-topics-card ul{display:flex!important;flex-direction:column!important;justify-content:space-around!important;flex:1!important;gap:10px!important}
/* Contact: centre the entire introduction and form, not just the fields. */
.contact-page .contact-inner{width:min(1120px,calc(100% - 48px))!important;max-width:1120px!important;margin-left:auto!important;margin-right:auto!important;grid-template-columns:1fr!important}
.contact-page .contact-inner>div:first-child{grid-column:1/-1!important}
.contact-page .consultation-form{width:100%!important;box-sizing:border-box!important;margin:12px auto 0!important}
/* Private mediation: bring image and second row closer. */
.private-page .private-main{padding-top:25px!important}
.private-page .editorial-private-intro{margin-bottom:12px!important;gap:18px!important}
.private-page .editorial-private-illustration{margin-top:0!important}
}
/* Penal: no outer boxes, only small specialist list retains a border. */
.page-areas #penal .penal-card,.page-areas .editorial-penal .penal-card,.page-areas .editorial-penal .penal-final-column{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important}
.page-areas #penal .penal-situations,.page-areas .editorial-penal .penal-situations{border:1px solid #b99389!important;background:#eee4d8!important;padding:13px 16px!important}
/* True WhatsApp logo: preserve vector fill, never force an outline over it. */
.wa-link svg,.floating-whatsapp svg{fill:currentColor!important;stroke:none!important;stroke-width:0!important}
/* Correct seated portrait: retain complete hands and do not crop. */
.page-quien-soy .bio-inline-photo{display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important}
.page-quien-soy .bio-inline-photo img{width:100%!important;height:auto!important;object-fit:contain!important;object-position:center center!important;display:block!important}
@media(max-width:760px){
/* Keep previously approved mobile lists compact; do not inherit desktop stretch. */
#familia .area-topics-card,#contratos .area-topics-card{display:block!important}
#familia .area-topics-card ul{row-gap:5px!important}
#contratos .area-topics-card ul{display:grid!important;gap:8px!important}
.contact-page .contact-inner{width:calc(100% - 32px)!important;max-width:none!important}
.private-page .private-main{padding-top:22px!important}
.inner-body .reading-section>h2,.inner-body .opening-heading,.page-areas .reading-section>h2,.private-page .private-main h2{font-size:clamp(21px,5.1vw,26px)!important}
}
