/* Sólo se carga en /carta-porte-frontera-texas. */
.doc .tx-kicker { color: #811b16; font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; margin: 0 0 8px; }
.doc .tx-summary { margin: 24px 0; padding: clamp(18px, 4vw, 28px); border: 1px solid #cbc3b3; border-top: 4px solid #901b15; border-radius: 8px; background: #fffdf7; }
.doc .tx-number { color: #811b16; font-size: clamp(2.4rem, 9vw, 3.8rem); font-weight: 700; line-height: 1.1; letter-spacing: -.04em; margin: 8px 0 12px; font-variant-numeric: tabular-nums; }
.doc .tx-summary h2 { margin-top: 0; }
.doc .tx-summary p:last-child { margin-bottom: 0; }
.doc .tx-tags { display: flex; gap: 8px; flex-wrap: wrap; margin: 16px 0; }
.doc .tx-tags span { font-size: .78rem; padding: 4px 8px; border: 1px solid #cbc3b3; border-radius: 4px; color: #3d3b34; }
.doc .tx-jump { display: flex; flex-wrap: wrap; gap: 10px 20px; font-size: .95rem; margin: 20px 0; }
.doc .tx-ports { list-style: none; padding: 0; margin: 18px 0; }
.doc .tx-ports li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 14px; padding: 14px 0; margin: 0; border-bottom: 1px solid #d6cebf; }
.doc .tx-port { font-weight: 600; color: #242424; }
.doc .tx-port small { display: block; color: #59574e; font-size: .78rem; font-weight: 400; }
.doc .tx-value { text-align: right; font-variant-numeric: tabular-nums; font-weight: 700; color: #242424; }
.doc .tx-value small { display: block; font-size: .78rem; font-weight: 400; color: #59574e; }
.doc .tx-track { grid-column: 1 / -1; height: 7px; background: #e4ddcf; border-radius: 2px; }
.doc .tx-bar { display: block; width: var(--share); height: 100%; background: #901b15; border-radius: 2px; }
.doc .tx-note { padding: 14px 18px; border-left: 3px solid #535746; background: #eeeee5; color: #34362e; }
.doc .tx-steps { list-style: none; padding: 0; counter-reset: tx-step; }
.doc .tx-steps li { counter-increment: tx-step; display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 12px; margin: 18px 0; }
.doc .tx-steps li::before { content: counter(tx-step); display: grid; place-items: center; align-self: start; width: 30px; height: 30px; background: #811b16; color: white; border-radius: 50%; font-weight: 700; }
.doc .tx-steps p { margin: 4px 0 0; }
.doc .tx-sources { overflow-wrap: anywhere; font-size: .88rem; }
.doc :is(h2, h3) { scroll-margin-top: 140px; }
.doc a { text-decoration: underline; text-underline-offset: 3px; }
.doc .lede, .doc .meta-line { color: #59574e; }
.doc a:focus-visible, .doc summary:focus-visible { outline: 3px solid #175f92; outline-offset: 4px; }
@media (max-width: 460px) {
  .doc .tx-summary { padding: 18px; }
  .doc .tx-jump { display: grid; gap: 12px; }
  .doc .tx-port { overflow-wrap: anywhere; }
}
