/* Adaptación legal ECESAM sobre styles.css V3. Solo afecta páginas legales. */
body.legal-page{background:#f4f6f8;color:#10233c}
body.legal-page .legal-banner{background:linear-gradient(110deg,#09223b,#0a385c);color:#fff;border-bottom:4px solid #0098e0}
body.legal-page .legal-banner-inner{padding-block:38px 41px}
body.legal-page .legal-eyebrow{display:flex;align-items:center;gap:9px;color:#b6e5fc;font-size:11px;font-weight:850;letter-spacing:.13em;margin-bottom:12px}
body.legal-page .legal-eyebrow::before{content:'';display:block;width:29px;height:3px;background:#f3841d;border-radius:5px}
body.legal-page .legal-banner h2{font-size:clamp(25px,3vw,36px);color:#fff;max-width:930px;letter-spacing:-.035em;margin:0 0 10px}
body.legal-page .legal-banner p{font-size:13px;color:#d2e4f0;line-height:1.6;margin:0}
body.legal-page .legal-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
body.legal-page .legal-actions .btn{white-space:normal}
body.legal-page .legal-actions .legal-btn-secondary{background:#fff;color:#0a2540}
body.legal-page .legal-layout{display:grid;grid-template-columns:minmax(230px,265px) minmax(0,1fr);gap:22px;padding-top:30px;padding-bottom:65px;align-items:start}
body.legal-page .legal-aside{position:sticky;top:103px;max-height:calc(100vh - 126px);overflow:auto;padding:22px 18px;background:#fff;border:1px solid #dde5ec;border-top:4px solid #0098e0;border-radius:12px;box-shadow:0 11px 26px rgba(13,42,67,.06)}
body.legal-page .legal-aside .legal-nav-title{font-size:12px;font-weight:850;letter-spacing:.06em;color:#0a2540;margin:0 0 12px}
body.legal-page .legal-toc-links{display:grid;gap:0}
body.legal-page .legal-toc-links a{padding:8px 3px;border-bottom:1px solid #edf2f6;color:#315a78;font-size:11.5px;line-height:1.45;text-decoration:none}
body.legal-page .legal-toc-links a:hover,body.legal-page .legal-toc-links a:focus-visible{color:#0073bb;text-decoration:underline}
body.legal-page .legal-toc-mobile{display:none}
body.legal-page .legal-document{min-width:0;padding:36px clamp(22px,3.5vw,49px) 46px;background:#fff;border:1px solid #dde5ec;border-radius:12px;box-shadow:0 11px 26px rgba(13,42,67,.05);font-size:14px;line-height:1.8;color:#333}
body.legal-page .legal-document h1{font-family:'Montserrat','Inter',sans-serif;font-size:clamp(22px,2.5vw,29px);font-weight:800;line-height:1.3;color:#0a2540;letter-spacing:-.025em;margin:0 0 21px;padding:0 0 16px;border-bottom:3px solid #0098e0}
body.legal-page .legal-document h2,body.legal-page .legal-document h3,body.legal-page .legal-document h4{font-family:'Montserrat','Inter',sans-serif;color:#0a2540;line-height:1.35;letter-spacing:normal}
body.legal-page .legal-document h3{font-size:17px;font-weight:800;margin:29px 0 11px;scroll-margin-top:110px}
body.legal-page .legal-document h4{font-size:15px;margin:18px 0 9px}
body.legal-page .legal-document p{margin:0 0 13px;text-align:justify;overflow-wrap:anywhere}
body.legal-page .legal-document ul,body.legal-page .legal-document ol{padding-left:25px;margin:0 0 15px}
body.legal-page .legal-document li{margin:6px 0}
body.legal-page .legal-document li::marker{color:#f3841d}
body.legal-page .legal-document a{color:#006da8;text-decoration:underline}
body.legal-page .legal-document table{display:table;width:100%;border-collapse:collapse;font-size:12.5px;margin:15px 0 26px;line-height:1.6}
body.legal-page .legal-document th,body.legal-page .legal-document td{border:1px solid #dbe6ee;padding:10px 12px;text-align:left;vertical-align:top;overflow-wrap:anywhere}
body.legal-page .legal-document th{background:#0a2540;color:#fff}
body.legal-page .legal-document tbody tr:nth-child(odd){background:#f4f7fa}
body.legal-page .legal-document tbody td:first-child{font-weight:650;width:34%}
body.legal-page .legal-document hr{height:1px;border:0;background:#dce5ed;margin:30px 0}
body.legal-page .legal-version{display:flex;gap:9px;align-items:flex-start;background:#eff8fd;border:1px solid #cbe7f7;border-radius:9px;color:#315a78;padding:12px 15px;margin:0 0 24px;font-size:12px;line-height:1.5}
body.legal-page .legal-version strong{color:#09223b}
body.legal-page .legal-aside-bottom{display:block;margin-top:17px;padding-top:15px;border-top:1px solid #e4ebf1;font-size:11.5px;line-height:1.6;color:#607388}
body.legal-page .legal-bottom-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px;padding-top:22px;border-top:1px solid #dce5ed}
body.legal-page .footer-column span{cursor:default}
@media(max-width:1030px){body.legal-page .legal-layout{grid-template-columns:225px minmax(0,1fr)}body.legal-page .legal-aside{top:87px;max-height:calc(100vh - 103px)}}
@media(max-width:780px){body.legal-page .legal-layout{display:block;padding-top:18px;padding-bottom:45px}body.legal-page .legal-aside{display:none}body.legal-page .legal-toc-mobile{display:block;padding:0;background:#fff;border:1px solid #dbe6ee;border-radius:10px;margin-bottom:15px;overflow:hidden}body.legal-page .legal-toc-mobile summary{cursor:pointer;list-style:none;padding:16px 18px;font-size:13px;font-weight:800;color:#0a2540;display:flex;justify-content:space-between;align-items:center}body.legal-page .legal-toc-mobile summary::-webkit-details-marker{display:none}body.legal-page .legal-toc-mobile summary::after{content:'+';font-size:22px;color:#0098e0;line-height:1}body.legal-page .legal-toc-mobile[open] summary::after{content:'–'}body.legal-page .legal-toc-mobile .legal-toc-links{padding:0 17px 17px;max-height:270px;overflow:auto}body.legal-page .legal-document{padding:23px 19px 30px;font-size:13.5px}body.legal-page .legal-document p{text-align:left}body.legal-page .legal-document table{font-size:11.5px}body.legal-page .legal-document th,body.legal-page .legal-document td{padding:7px 8px}body.legal-page .legal-banner-inner{padding-block:29px 33px}}
@media(max-width:380px){body.legal-page .legal-document{padding:20px 13px}body.legal-page .legal-document table{font-size:10.5px}body.legal-page .legal-document h3{font-size:15px}}
@media print{body.legal-page{background:#fff}body.legal-page .header,body.legal-page .legal-banner,body.legal-page .legal-aside,body.legal-page .legal-toc-mobile,body.legal-page .footer,body.legal-page #back-top,body.legal-page .legal-bottom-actions{display:none!important}body.legal-page .legal-layout{display:block;width:100%;max-width:100%;padding:0}body.legal-page .legal-document{border:0;border-radius:0;box-shadow:none;padding:0;font-size:11pt}body.legal-page .legal-document h3{break-after:avoid}body.legal-page .legal-document p{orphans:3;widows:3}body.legal-page .legal-document tr{break-inside:avoid}}
