/* Componentes compartidos de artículos (byline de marca; widget y mejoras UX en PRs siguientes). */
.hero-brand{display:flex;width:fit-content;align-items:center;gap:14px;margin:0 0 20px;text-decoration:none;color:inherit}
.hero-brand picture,.hero-brand img{display:block}
.hero-brand img{width:64px;height:49px}
.hero-brand-txt{display:flex;flex-direction:column;gap:2px;font-size:13px;line-height:1.3;font-weight:600;color:#1f2a2e;padding-left:14px;border-left:1.5px solid rgba(20,181,167,.35)}
.hero-brand-txt small{font-size:11px;font-weight:500;letter-spacing:.4px;color:#5b6b70}

/* ── Widget de agendamiento (js/agenda-widget.js) ── */
.agenda-widget{--aw-ink:#14201F;--aw-ink2:#4A6B6B;--aw-cta:#0B8076;--aw-cta-d:#086058;--aw-soft:#EAF7F5;--aw-line:rgba(20,181,167,.28);
  background:#fff;border:1px solid var(--aw-line);border-radius:16px;padding:20px 18px 18px;box-shadow:0 1px 2px rgba(20,32,31,.04),0 12px 32px -16px rgba(11,128,118,.28);
  min-height:150px;text-align:left;font-family:inherit;color:var(--aw-ink)}
.agenda-widget:not(.is-ready){display:flex;align-items:center;justify-content:center}
.agenda-fallback{display:inline-flex;align-items:center;gap:8px;background:#0B8076;color:#fff;padding:13px 26px;border-radius:10px;font-size:15px;font-weight:600;text-decoration:none}
:is(.agenda-widget,.aw-side) .aw-head{display:flex;align-items:center;gap:12px;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid rgba(20,32,31,.07)}
:is(.agenda-widget,.aw-side) .aw-head picture{flex:none;display:block;width:44px;height:34px}
:is(.agenda-widget,.aw-side) .aw-head img{display:block;width:44px;height:34px;max-width:none}
:is(.agenda-widget,.aw-side) .aw-title{margin:0;font-size:16px;font-weight:700;line-height:1.25;color:var(--aw-ink)}
:is(.agenda-widget,.aw-side) .aw-sub{margin:2px 0 0;font-size:12.5px;line-height:1.35;color:var(--aw-ink2)}
:is(.agenda-widget,.aw-side) .aw-step{margin:0 0 10px;font-size:11px;letter-spacing:1.6px;text-transform:uppercase;font-weight:700;color:var(--aw-cta)}
:is(.agenda-widget,.aw-side) .aw-pane{display:grid;gap:10px;animation:aw-in .25s ease both}
:is(.agenda-widget,.aw-side) .aw-pane[hidden]{display:none}
@keyframes aw-in{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
:is(.agenda-widget,.aw-side) .aw-sede{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 14px;border:1.5px solid rgba(20,32,31,.12);border-radius:12px;background:#fff;color:var(--aw-ink);text-align:left;text-decoration:none;cursor:pointer;font:inherit;transition:border-color .15s,background .15s,transform .15s}
:is(.agenda-widget,.aw-side) .aw-sede:hover,.aw-sede.is-on{border-color:var(--aw-cta);background:var(--aw-soft)}
:is(.agenda-widget,.aw-side) .aw-sede:active{transform:scale(.99)}
:is(.agenda-widget,.aw-side) .aw-sede-ico{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--aw-soft);color:var(--aw-cta);flex:none}
:is(.agenda-widget,.aw-side) .aw-sede-txt{display:flex;flex-direction:column;gap:1px;font-size:15px}
:is(.agenda-widget,.aw-side) .aw-sede-txt small{font-size:12.5px;color:var(--aw-ink2)}
:is(.agenda-widget,.aw-side) .aw-chosen{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:13px;font-weight:600;color:var(--aw-cta)}
:is(.agenda-widget,.aw-side) .aw-label{margin:6px 0 0;font-size:12px;font-weight:700;letter-spacing:.4px;color:var(--aw-ink2)}
:is(.agenda-widget,.aw-side) .aw-days{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
:is(.agenda-widget,.aw-side) .aw-day,.aw-slot{border:1.5px solid rgba(20,32,31,.12);border-radius:10px;background:#fff;color:var(--aw-ink);cursor:pointer;font:inherit;min-height:48px;transition:border-color .15s,background .15s}
:is(.agenda-widget,.aw-side) .aw-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:6px 0}
:is(.agenda-widget,.aw-side) .aw-day span{font-size:11px;font-weight:600;color:var(--aw-ink2)}
:is(.agenda-widget,.aw-side) .aw-day strong{font-size:17px}
:is(.agenda-widget,.aw-side) .aw-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
:is(.agenda-widget,.aw-side) .aw-slot{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 4px;gap:1px}
:is(.agenda-widget,.aw-side) .aw-slot strong{font-size:13.5px}.aw-slot small{font-size:11.5px;color:var(--aw-ink2)}
:is(.agenda-widget,.aw-side) .aw-day:hover,.aw-slot:hover,.aw-day.is-on,.aw-slot.is-on{border-color:var(--aw-cta);background:var(--aw-soft)}
:is(.agenda-widget,.aw-side) .aw-day.is-on,.aw-slot.is-on{box-shadow:inset 0 0 0 1px var(--aw-cta)}
:is(.agenda-widget,.aw-side) .aw-go{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;margin-top:8px;padding:12px 16px;border-radius:12px;background:var(--aw-cta);color:#fff;font-size:15px;font-weight:700;text-decoration:none;transition:background .15s,opacity .15s}
:is(.agenda-widget,.aw-side) .aw-go:hover{background:var(--aw-cta-d)}
:is(.agenda-widget,.aw-side) .aw-go[aria-disabled="true"]{opacity:.4;cursor:not-allowed;pointer-events:none}
:is(.agenda-widget,.aw-side) .aw-back{justify-self:center;background:none;border:0;color:var(--aw-ink2);font:inherit;font-size:13px;text-decoration:underline;padding:10px;min-height:44px;cursor:pointer}
.agenda-widget :focus-visible,.aw-side :focus-visible{outline:2px solid var(--aw-cta);outline-offset:2px}
.inline-cta .agenda-widget{margin-top:4px}
.aw-side{--aw-ink:#14201F;--aw-ink2:#4A6B6B;--aw-cta:#0B8076;--aw-soft:#EAF7F5;--aw-line:rgba(20,181,167,.28);
  position:fixed;z-index:40;top:120px;right:max(16px,calc((100vw - 820px)/2 - 330px));width:296px;display:grid;gap:10px;padding:18px 16px;
  background:#fff;border:1px solid var(--aw-line);border-radius:16px;box-shadow:0 12px 32px -16px rgba(11,128,118,.35);
  opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .25s,transform .25s,visibility .25s}
.aw-side.is-on{opacity:1;visibility:visible;transform:none}
.aw-side .aw-head{margin-bottom:2px}
@media (max-width:1359px){.aw-side{display:none}}
@media (max-width:420px){.agenda-widget{padding:16px 14px}.aw-slot strong{font-size:12.5px}}
@media (prefers-reduced-motion:reduce){.aw-pane,.aw-side{animation:none;transition:none}}
:is(.agenda-widget,.aw-side) .aw-go{text-align:center}
:is(.agenda-widget,.aw-side) .aw-go svg{flex:none}

/* ── Lectura y UX de artículos (js/articulo.js) ── */
.read-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:120;background:linear-gradient(90deg,#14B5A7,#0A6B65);transform:scaleX(0);transform-origin:0 50%;pointer-events:none}
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:20px 0;border-radius:10px;
  background:linear-gradient(to right,#fff 30%,rgba(255,255,255,0)) left center/24px 100% no-repeat local,
             linear-gradient(to left,#fff 30%,rgba(255,255,255,0)) right center/24px 100% no-repeat local,
             linear-gradient(to right,rgba(20,32,31,.14),rgba(20,32,31,0)) left center/10px 100% no-repeat scroll,
             linear-gradient(to left,rgba(20,32,31,.14),rgba(20,32,31,0)) right center/10px 100% no-repeat scroll}
.table-scroll:focus-visible{outline:2px solid #0B8076;outline-offset:2px}
.table-scroll>table{margin:0;min-width:520px}
details.toc{margin:24px 0 32px;border:1px solid rgba(20,181,167,.28);border-radius:12px;background:#F6F9F9}
details.toc>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:12px 18px;font-size:13px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:#0A6B65}
details.toc>summary::-webkit-details-marker{display:none}
details.toc>summary::after{content:'+';font-size:20px;font-weight:500;line-height:1}
details.toc[open]>summary::after{content:'–'}
details.toc ol{margin:0;padding:0 18px 14px 40px;display:grid;gap:2px}
details.toc li{font-size:15px;line-height:1.45}
details.toc a{display:block;padding:8px 0;min-height:44px;color:#14201F;text-decoration:none;border-bottom:1px solid rgba(20,32,31,.06)}
details.toc a:hover{color:#0A6B65}
.article-body h2[id]{scroll-margin-top:84px}
@media (max-width:600px){
  .article-body p,.article-body li{font-size:17px;line-height:1.72}
  .article-body .faq-q{min-height:52px}
  .hero-chips .chip{padding:8px 14px}
}
@media (min-width:900px){
  .article-body>.wrap>p,.article-body>.wrap>ul,.article-body>.wrap>ol{max-width:68ch}
  .article-body>.wrap>.answer-capsule{max-width:none}
}
@media (prefers-reduced-motion:reduce){.read-progress{transition:none}}
