:root, [data-theme="light"] {
--paper: #f2efe7;
--paper-raised: #faf8f3;
--ink: #141414;
--ink-muted: #5a564e;
--hairline: #cdc7ba;
--rule: var(--ink);
--sign: #141414;
--on-sign: #f6f4ee;
--sign-edge: #141414;
--line-red: #d63a1c;
--on-line-red: #ffffff;
--line-blue: #1b5fc4;
--on-line-blue: #ffffff;
--line-yellow: #f2b417;
--on-line-yellow: #141414;
--line-green: #0b7a4a;
--on-line-green: #ffffff;
--line-magenta: #ad2c79;
--on-line-magenta: #ffffff;
--line-grey: #a39e93;
--on-line-grey: #141414;
--link: #1b56b3;
--alert: #b02a10;
--focus: #1b56b3;
}
[data-theme="dark"] {
--paper: #151515;
--paper-raised: #1f1f1f;
--ink: #f2efe7;
--ink-muted: #a6a196;
--hairline: #3a3833;
--sign: #000000;
--sign-edge: #3a3833;
--link: #8cb6ff;
--alert: #ff8c72;
--focus: #f2b417;
}
@media (prefers-color-scheme: dark) {
:root:not([data-theme="light"]) {
--paper: #151515;
--paper-raised: #1f1f1f;
--ink: #f2efe7;
--ink-muted: #a6a196;
--hairline: #3a3833;
--sign: #000000;
--sign-edge: #3a3833;
--link: #8cb6ff;
--alert: #ff8c72;
--focus: #f2b417;
}
}
:root {
--space-1: 4px;
--space-2: 8px;
--space-3: 12px;
--space-4: 16px;
--space-6: 24px;
--space-8: 32px;
--space-12: 48px;
--space-16: 64px;
--space-24: 96px;
--radius-none: 0;
--radius-route: 48px;
--radius-bullet: 50%;
--stroke-hair: 1px;
--stroke-rule: 2px;
--stroke-band: 8px;
--stroke-route: 8px;
--measure-prose: 38em;
--measure-page: 1200px;
--font-sans: "Archivo", "Helvetica Neue", Helvetica, Arial, sans-serif;
--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;
--fs-display-xl: 120px;
--lh-display-xl: 0.92;
--fw-display-xl: 700;
--ls-display-xl: -0.035em;
--ff-display-xl: var(--font-sans);
--fs-display: 72px;
--lh-display: 0.95;
--fw-display: 700;
--ls-display: -0.03em;
--ff-display: var(--font-sans);
--fs-h1: 48px;
--lh-h1: 1;
--fw-h1: 700;
--ls-h1: -0.025em;
--ff-h1: var(--font-sans);
--fs-h2: 32px;
--lh-h2: 1.08;
--fw-h2: 700;
--ls-h2: -0.02em;
--ff-h2: var(--font-sans);
--fs-h3: 22px;
--lh-h3: 1.2;
--fw-h3: 600;
--ls-h3: -0.01em;
--ff-h3: var(--font-sans);
--fs-lead: 21px;
--lh-lead: 1.45;
--fw-lead: 400;
--ls-lead: normal;
--ff-lead: var(--font-sans);
--fs-body: 18px;
--lh-body: 1.6;
--fw-body: 400;
--ls-body: normal;
--ff-body: var(--font-sans);
--fs-body-sm: 15px;
--lh-body-sm: 1.5;
--fw-body-sm: 400;
--ls-body-sm: normal;
--ff-body-sm: var(--font-sans);
--fs-label: 14px;
--lh-label: 1.2;
--fw-label: 600;
--ls-label: 0.005em;
--ff-label: var(--font-sans);
--fs-meta: 13px;
--lh-meta: 1.4;
--fw-meta: 500;
--ls-meta: 0.01em;
--ff-meta: var(--font-mono);
}
@media (max-width: 640px) {
:root {
--fs-display-xl: 64px;
--fs-display: 44px;
--fs-h1: 36px;
--fs-h2: 26px;
}
}
.display-xl { font-family: var(--ff-display-xl); font-size: var(--fs-display-xl); line-height: var(--lh-display-xl); font-weight: var(--fw-display-xl); letter-spacing: var(--ls-display-xl); }
.display { font-family: var(--ff-display); font-size: var(--fs-display); line-height: var(--lh-display); font-weight: var(--fw-display); letter-spacing: var(--ls-display); }
.h1 { font-family: var(--ff-h1); font-size: var(--fs-h1); line-height: var(--lh-h1); font-weight: var(--fw-h1); letter-spacing: var(--ls-h1); }
.h2 { font-family: var(--ff-h2); font-size: var(--fs-h2); line-height: var(--lh-h2); font-weight: var(--fw-h2); letter-spacing: var(--ls-h2); }
.h3 { font-family: var(--ff-h3); font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: var(--fw-h3); letter-spacing: var(--ls-h3); }
.lead { font-family: var(--ff-lead); font-size: var(--fs-lead); line-height: var(--lh-lead); font-weight: var(--fw-lead); letter-spacing: var(--ls-lead); }
.body { font-family: var(--ff-body); font-size: var(--fs-body); line-height: var(--lh-body); font-weight: var(--fw-body); letter-spacing: var(--ls-body); }
.body-sm { font-family: var(--ff-body-sm); font-size: var(--fs-body-sm); line-height: var(--lh-body-sm); font-weight: var(--fw-body-sm); letter-spacing: var(--ls-body-sm); }
.label { font-family: var(--ff-label); font-size: var(--fs-label); line-height: var(--lh-label); font-weight: var(--fw-label); letter-spacing: var(--ls-label); }
.meta { font-family: var(--ff-meta); font-size: var(--fs-meta); line-height: var(--lh-meta); font-weight: var(--fw-meta); letter-spacing: var(--ls-meta); }body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--font-sans); font-size: 18px; line-height: 1.6; -webkit-font-smoothing: antialiased; }
.ln-meta { font-family: var(--font-mono); font-size: 13px; line-height: 1.4; font-weight: 500; letter-spacing: .01em; color: var(--ink-muted); } .ln-focusable:focus-visible, .ln-btn:focus-visible, .ln-dir:focus-visible, .ln-nav a:focus-visible, .ln-card:focus-visible, .ln-post:focus-visible, .ln-field input:focus-visible, .ln-prose a:focus-visible {
outline: 3px solid var(--focus); outline-offset: 2px;
}
.ln-arrow { display: inline-block; flex: none; transition: transform 120ms ease-out; }
@media (prefers-reduced-motion: reduce) { .ln-arrow, .ln-card, .ln-card::before { transition: none !important; } } .ln-line-red { --ln-fill: var(--line-red); --ln-on: var(--on-line-red); }
.ln-line-blue { --ln-fill: var(--line-blue); --ln-on: var(--on-line-blue); }
.ln-line-yellow { --ln-fill: var(--line-yellow); --ln-on: var(--on-line-yellow); }
.ln-line-green { --ln-fill: var(--line-green); --ln-on: var(--on-line-green); }
.ln-line-magenta { --ln-fill: var(--line-magenta); --ln-on: var(--on-line-magenta); }
.ln-line-grey { --ln-fill: var(--line-grey); --ln-on: var(--on-line-grey); } .ln-bullet { --ln-size: 36px; display: inline-flex; align-items: center; justify-content: center; flex: none; width: var(--ln-size); height: var(--ln-size); border-radius: var(--radius-bullet); background: var(--ln-fill, var(--line-grey)); color: var(--ln-on, var(--on-line-grey)); font-family: var(--font-sans); font-weight: 700; font-size: calc(var(--ln-size) * .56); line-height: 1; letter-spacing: -.02em; font-variant-numeric: lining-nums; user-select: none; }
.ln-bullet--sm { --ln-size: 24px; }
.ln-bullet--md { --ln-size: 36px; }
.ln-bullet--lg { --ln-size: 56px; }
.ln-bullet--xl { --ln-size: 96px; }
.ln-bullet--pair { font-stretch: 82%; font-size: calc(var(--ln-size) * .48); letter-spacing: -.03em; }
.ln-bullets { display: inline-flex; gap: var(--space-2); align-items: center; } .ln-badge { display: inline-flex; align-items: center; gap: var(--space-2); height: 24px; padding: 0 var(--space-2); font-family: var(--font-sans); font-size: 13px; font-weight: 600; line-height: 1; white-space: nowrap; border-radius: var(--radius-none); }
.ln-badge--filled { background: var(--ln-fill, var(--line-grey)); color: var(--ln-on, var(--on-line-grey)); }
.ln-badge--outline { color: var(--ink); box-shadow: inset 0 0 0 var(--stroke-hair) var(--rule); }
.ln-badge--outline::before { content: ""; width: 8px; height: 8px; border-radius: var(--radius-bullet); background: var(--ln-fill, var(--line-grey)); } .ln-dir { display: inline-flex; align-items: stretch; min-height: var(--space-12); color: var(--ink); text-decoration: none; border-top: var(--stroke-band) solid var(--rule); }
.ln-dir__mod { display: inline-flex; align-items: center; justify-content: center; width: var(--space-12); min-height: var(--space-12); background: var(--sign); color: var(--on-sign); box-shadow: inset 0 0 0 var(--stroke-hair) var(--sign-edge); }
.ln-dir__text { display: flex; flex-direction: column; justify-content: center; gap: 2px; padding: var(--space-2) var(--space-4); box-shadow: inset 0 calc(-1 * var(--stroke-hair)) 0 var(--hairline); }
.ln-dir__label { font-size: 20px; line-height: 1.15; font-weight: 700; letter-spacing: -.015em; }
.ln-dir--end { flex-direction: row-reverse; text-align: right; }
.ln-dir:hover .ln-arrow[data-dir="right"] { transform: translateX(4px); }
.ln-dir:hover .ln-arrow[data-dir="left"] { transform: translateX(-4px); }
.ln-dir:hover .ln-arrow[data-dir="up"] { transform: translateY(-4px); }
.ln-dir:hover .ln-arrow[data-dir="down"] { transform: translateY(4px); }
.ln-dir:hover .ln-dir__label { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; } .ln-sign { position: relative; background: var(--sign); color: var(--on-sign); box-shadow: inset 0 0 0 var(--stroke-hair) var(--sign-edge); padding: calc(var(--space-6) + var(--space-3)) var(--space-6) var(--space-6); display: flex; gap: var(--space-6); align-items: flex-end; justify-content: space-between; }
.ln-sign::before { content: ""; position: absolute; left: var(--space-3); right: var(--space-3); top: var(--space-3); height: var(--stroke-rule); background: var(--on-sign); }
.ln-sign__kicker { font-family: var(--font-mono); font-size: 13px; font-weight: 500; letter-spacing: .01em; opacity: .78; margin: 0 0 var(--space-2); }
.ln-sign__title { margin: 0; font-weight: 700; font-size: 48px; line-height: 1; letter-spacing: -.025em; }
.ln-sign--page { padding: calc(var(--space-12) + var(--space-3)) var(--space-8) var(--space-8); }
.ln-sign--page .ln-sign__title { font-size: 72px; line-height: .95; letter-spacing: -.03em; }
.ln-sign__bullets { display: inline-flex; gap: var(--space-2); flex: none; }
@media (max-width: 640px) {
.ln-sign { flex-direction: column; align-items: flex-start; padding: calc(var(--space-6) + var(--space-3)) var(--space-4) var(--space-4); }
.ln-sign__title, .ln-sign--page .ln-sign__title { font-size: 40px; }
} .ln-btn { display: inline-flex; align-items: center; gap: var(--space-3); height: var(--space-12); padding: 0 var(--space-6); font-family: var(--font-sans); font-size: 16px; font-weight: 600; line-height: 1; letter-spacing: .005em; border: 0; border-radius: var(--radius-none); cursor: pointer; text-decoration: none; transition: background 120ms ease-out, color 120ms ease-out; }
.ln-btn--primary { background: var(--sign); color: var(--on-sign); box-shadow: inset 0 0 0 var(--stroke-hair) var(--sign-edge); }
.ln-btn--primary:hover { background: var(--ink); color: var(--paper); }
.ln-btn--secondary { background: transparent; color: var(--ink); box-shadow: inset 0 0 0 var(--stroke-rule) var(--rule); }
.ln-btn--secondary:hover { background: var(--ink); color: var(--paper); }
.ln-btn--quiet { background: transparent; color: var(--ink); padding: 0; }
.ln-btn--quiet:hover .ln-btn__label { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
.ln-btn:hover .ln-arrow { transform: translateX(4px); }
.ln-btn[disabled] { background: var(--line-grey); color: var(--on-line-grey); box-shadow: none; cursor: not-allowed; }
.ln-btn[disabled]:hover .ln-arrow { transform: none; } .ln-field { display: flex; flex-direction: column; gap: var(--space-2); max-width: 420px; }
.ln-field label { font-size: 14px; font-weight: 600; line-height: 1.2; }
.ln-field input { height: var(--space-12); padding: 0 var(--space-4); font: inherit; font-size: 16px; color: var(--ink); background: var(--paper-raised); border: var(--stroke-rule) solid var(--rule); border-radius: var(--radius-none); }
.ln-field input::placeholder { color: var(--ink-muted); }
.ln-field__help { font-size: 14px; line-height: 1.4; color: var(--ink-muted); }
.ln-field--error input { border-color: var(--alert); }
.ln-field--error .ln-field__help { color: var(--alert); font-weight: 600; }
.ln-inline-form { display: flex; align-items: flex-end; gap: 0; flex-wrap: wrap; }
.ln-inline-form .ln-field { flex: 1 1 260px; }
.ln-inline-form .ln-field input { border-right-width: 0; } .ln-nav { border-top: var(--stroke-band) solid var(--rule); border-bottom: var(--stroke-hair) solid var(--hairline); display: flex; align-items: center; justify-content: space-between; gap: var(--space-6); padding: 0 var(--space-6); min-height: 64px; }
.ln-nav__name { font-family: var(--font-sans); font-size: 26px; font-weight: 700; letter-spacing: -.04em; line-height: 1; color: var(--ink); text-decoration: none; white-space: nowrap; }
.ln-nav__links { display: flex; gap: var(--space-6); list-style: none; margin: 0; padding: 0; overflow-x: auto; }
.ln-nav__group-start { display: flex; align-items: center; gap: var(--space-6); }
.ln-nav__group-start::before { content: ""; width: var(--stroke-rule); height: 24px; background: var(--rule); }
.ln-nav a.ln-nav__link { display: inline-flex; align-items: center; gap: var(--space-2); height: 64px; font-size: 15px; font-weight: 600; color: var(--ink); text-decoration: none; white-space: nowrap; box-shadow: inset 0 0 0 0 var(--ln-fill, var(--ink)); transition: box-shadow 120ms ease-out; }
.ln-nav a.ln-nav__link:hover, .ln-nav a.ln-nav__link[aria-current="page"] { box-shadow: inset 0 -4px 0 0 var(--ln-fill, var(--ink)); } .ln-nav__toggle, .ln-nav__panel { display: none; }
@media (max-width: 900px) {
.ln-nav { flex-wrap: wrap; gap: 0; padding: 0 var(--space-4); }
.ln-nav__name { line-height: 64px; }
.ln-nav__links { display: none; }
.ln-nav__toggle { display: inline-flex; align-items: center; gap: var(--space-2); height: var(--space-12); margin-left: auto; padding: 0 var(--space-3); font-family: var(--font-sans); font-size: 15px; font-weight: 600; color: var(--ink); background: transparent; border: 0; border-radius: var(--radius-none); box-shadow: inset 0 0 0 var(--stroke-rule) var(--rule); cursor: pointer; }
.ln-nav__toggle:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
.ln-nav--open .ln-nav__toggle { background: var(--sign); color: var(--on-sign); box-shadow: inset 0 0 0 var(--stroke-hair) var(--sign-edge); }
.ln-nav__panel { display: block; position: relative; box-sizing: border-box; flex: 0 0 calc(100% + 2 * var(--space-4)); margin: 0 calc(-1 * var(--space-4)); padding: calc(var(--space-6) + var(--space-3)) var(--space-4) var(--space-6); background: var(--sign); color: var(--on-sign); box-shadow: inset 0 0 0 var(--stroke-hair) var(--sign-edge); }
.ln-nav__panel[hidden] { display: none; }
.ln-nav__panel::before { content: ""; position: absolute; left: var(--space-3); right: var(--space-3); top: var(--space-3); height: var(--stroke-rule); background: var(--on-sign); }
.ln-nav__group + .ln-nav__group { margin-top: var(--space-6); }
.ln-nav__group-label { margin: 0 0 var(--space-1); font-family: var(--font-mono); font-size: 13px; font-weight: 500; letter-spacing: .01em; opacity: .78; }
.ln-nav__group ul { list-style: none; margin: 0; padding: 0; }
.ln-nav__row { position: relative; display: flex; align-items: center; gap: var(--space-3); min-height: 56px; color: var(--on-sign); text-decoration: none; }
.ln-nav__row::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: var(--stroke-hair); background: var(--on-sign); opacity: .22; }
.ln-nav__row:focus-visible { outline: 3px solid var(--on-sign); outline-offset: 2px; }
.ln-nav__row-label { font-size: 22px; font-weight: 700; line-height: 1.1; letter-spacing: -.02em; }
.ln-nav__row[aria-current="page"] .ln-nav__row-label { text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 6px; text-decoration-color: var(--ln-fill, var(--on-sign)); }
.ln-nav__here { margin-left: auto; font-family: var(--font-mono); font-size: 13px; font-weight: 500; opacity: .78; }
}
@media (prefers-reduced-motion: reduce) { .ln-nav__toggle .ln-arrow { transition: none; } } .ln-card { position: relative; display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-6) 0 var(--space-4); color: var(--ink); text-decoration: none; border-top: var(--stroke-band) solid var(--rule); }
.ln-card::before { content: ""; position: absolute; left: 0; top: calc(-1 * var(--stroke-band)); height: var(--stroke-band); width: 0; background: var(--ln-fill, var(--ink)); transition: width 160ms ease-out; }
.ln-card:hover::before { width: 100%; }
.ln-card__head { display: flex; align-items: center; gap: var(--space-3); }
.ln-card__title { margin: 0; font-size: 22px; line-height: 1.2; font-weight: 600; letter-spacing: -.01em; }
.ln-card__summary { margin: 0; font-size: 15px; line-height: 1.5; color: var(--ink-muted); }
.ln-card__outcome { display: flex; flex-direction: column; gap: var(--space-1); padding-top: var(--space-3); border-top: var(--stroke-hair) solid var(--hairline); }
.ln-card__metric { font-size: 48px; line-height: 1; font-weight: 700; letter-spacing: -.03em; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ln-card__metric-label { font-size: 15px; line-height: 1.3; color: var(--ink-muted); }
.ln-card__cta { display: inline-flex; align-items: center; gap: var(--space-2); font-size: 14px; font-weight: 600; }
.ln-card:hover .ln-arrow { transform: translateX(4px); } .ln-posts { list-style: none; margin: 0; padding: 0; border-top: var(--stroke-rule) solid var(--rule); }
.ln-post { display: grid; grid-template-columns: 112px 24px 1fr auto; gap: var(--space-4); align-items: baseline; padding: var(--space-4) 0; border-bottom: var(--stroke-hair) solid var(--hairline); color: var(--ink); text-decoration: none; }
.ln-post .ln-bullet { align-self: start; margin-top: 1px; }
.ln-post__title { display: block; margin: 0; font-size: 22px; line-height: 1.2; font-weight: 600; letter-spacing: -.01em; }
.ln-post__excerpt { margin: var(--space-1) 0 0; font-size: 15px; line-height: 1.5; color: var(--ink-muted); }
.ln-post:hover .ln-post__title { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
@media (max-width: 640px) {
.ln-post { grid-template-columns: 24px 1fr; grid-template-areas: "b date" "b title" "b time"; row-gap: var(--space-1); }
.ln-post > .ln-meta:first-child { grid-area: date; } .ln-post .ln-bullet { grid-area: b; } .ln-post__body { grid-area: title; } .ln-post > .ln-meta:last-child { grid-area: time; }
} .ln-route { list-style: none; margin: 0; padding: 0; position: relative; }
.ln-route__stop { position: relative; display: grid; grid-template-columns: 40px 1fr; gap: var(--space-4); padding-bottom: var(--space-8); }
.ln-route__stop::before { content: ""; position: absolute; left: calc(20px - var(--stroke-route) / 2); top: 12px; bottom: -12px; width: var(--stroke-route); background: var(--ln-fill, var(--ink)); }
.ln-route__stop:last-child::before { display: none; }
.ln-route__dot { position: relative; z-index: 1; justify-self: center; width: 24px; height: 24px; margin-top: 2px; border-radius: var(--radius-bullet); background: var(--paper); box-shadow: inset 0 0 0 5px var(--ink); }
.ln-route__stop--transfer .ln-route__dot { width: 32px; height: 32px; margin-top: -2px; }
.ln-route__stop--terminal .ln-route__dot { background: var(--ink); }
.ln-route__role { margin: var(--space-1) 0 0; font-size: 22px; line-height: 1.2; font-weight: 600; letter-spacing: -.01em; }
.ln-route__org { margin: 0; font-size: 15px; font-weight: 600; }
.ln-route__desc { margin: var(--space-2) 0 0; font-size: 15px; line-height: 1.5; color: var(--ink-muted); max-width: 52ch; } .ln-quote { margin: 0; padding-top: var(--space-4); border-top: var(--stroke-band) solid var(--rule); max-width: 28em; }
.ln-quote p { margin: 0; font-size: 32px; line-height: 1.12; font-weight: 700; letter-spacing: -.02em; }
.ln-quote footer { margin-top: var(--space-4); display: flex; gap: var(--space-2); align-items: center; }
@media (max-width: 640px) { .ln-quote p { font-size: 26px; } } .ln-prose { max-width: var(--measure-prose); font-size: 18px; line-height: 1.6; color: var(--ink); }
.ln-prose > * + * { margin-top: 1.1em; }
.ln-prose p, .ln-prose ul, .ln-prose ol, .ln-prose h2, .ln-prose h3, .ln-prose blockquote, .ln-prose figure, .ln-prose pre { margin-bottom: 0; }
.ln-prose h2 { margin-top: 2em; font-size: 32px; line-height: 1.08; font-weight: 700; letter-spacing: -.02em; padding-top: var(--space-3); border-top: var(--stroke-rule) solid var(--rule); }
.ln-prose h3 { margin-top: 1.6em; font-size: 22px; line-height: 1.2; font-weight: 600; letter-spacing: -.01em; }
.ln-prose a { color: var(--link); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.ln-prose a:hover { text-decoration-thickness: 2px; }
.ln-prose ul, .ln-prose ol { padding-left: 1.4em; }
.ln-prose li + li { margin-top: .4em; }
.ln-prose ul li::marker { content: "■  "; font-size: .7em; }
.ln-prose blockquote { margin-left: 0; padding-left: var(--space-4); border-left: var(--stroke-rule) solid var(--rule); color: var(--ink-muted); }
.ln-prose code { font-family: var(--font-mono); font-size: .85em; background: var(--paper-raised); padding: .1em .3em; box-shadow: inset 0 0 0 1px var(--hairline); }
.ln-prose pre { font-family: var(--font-mono); font-size: 14px; line-height: 1.5; background: var(--paper-raised); padding: var(--space-4); overflow-x: auto; box-shadow: inset 0 0 0 1px var(--hairline); }
.ln-prose pre code { background: none; box-shadow: none; padding: 0; }
.ln-prose figcaption { margin-top: var(--space-2); font-size: 15px; line-height: 1.5; color: var(--ink-muted); }
.ln-prose .ln-lead { font-size: 21px; line-height: 1.45; } .ln-wrap { box-sizing: border-box; max-width: var(--measure-page); margin: 0 auto; padding: 0 var(--space-16); }
.ln-section { padding-top: var(--space-24); }
@media (max-width: 900px) { .ln-wrap { padding: 0 var(--space-6); } }
@media (max-width: 640px) { .ln-wrap { padding: 0 var(--space-4); } .ln-section { padding-top: var(--space-16); } } .ln-section-head { display: flex; justify-content: space-between; align-items: flex-end; gap: var(--space-3) var(--space-6); flex-wrap: wrap; padding-top: var(--space-4); border-top: var(--stroke-rule) solid var(--rule); margin-bottom: var(--space-8); }
.ln-section-head__title { display: flex; align-items: center; gap: var(--space-3); }
.ln-section-head__h { margin: 0; font-family: var(--font-sans); font-size: 32px; line-height: 1.08; font-weight: 700; letter-spacing: -.02em; color: var(--ink); }
@media (max-width: 640px) { .ln-section-head__h { font-size: 26px; } } .ln-stats { margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: var(--space-4); }
.ln-stat { display: flex; flex-direction: column-reverse; justify-content: flex-end; gap: var(--space-2); padding-top: var(--space-3); border-top: var(--stroke-hair) solid var(--hairline); }
.ln-stat__value { margin: 0; font-size: 48px; line-height: 1; font-weight: 700; letter-spacing: -.03em; font-variant-numeric: tabular-nums; white-space: nowrap; color: var(--ink); }
.ln-stat__label { font-size: 15px; line-height: 1.4; color: var(--ink-muted); }
@media (max-width: 640px) {
.ln-stats { grid-template-columns: minmax(0, 1fr); gap: 0; }
.ln-stat { flex-direction: row-reverse; justify-content: flex-end; align-items: baseline; gap: var(--space-4); padding: var(--space-3) 0; }
.ln-stat__value { font-size: 36px; min-width: 3.2ch; }
} .ln-field--area { max-width: none; }
.ln-field textarea { min-height: 176px; padding: var(--space-3) var(--space-4); font: inherit; font-size: 16px; line-height: 1.5; color: var(--ink); background: var(--paper-raised); border: var(--stroke-rule) solid var(--rule); border-radius: var(--radius-none); resize: vertical; }
.ln-field textarea::placeholder { color: var(--ink-muted); }
.ln-field textarea:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
.ln-field--error textarea { border-color: var(--alert); } .ln-choice { border: 0; margin: 0; padding: 0; min-width: 0; }
.ln-choice__legend { padding: 0; margin-bottom: var(--space-2); font-family: var(--font-sans); font-size: 14px; font-weight: 600; line-height: 1.2; color: var(--ink); }
.ln-choice__options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2); }
.ln-choice__option { position: relative; display: flex; align-items: center; gap: var(--space-3); min-height: var(--space-12); padding: var(--space-2) var(--space-4); font-family: var(--font-sans); font-size: 16px; font-weight: 600; line-height: 1.2; color: var(--ink); background: var(--paper-raised); box-shadow: inset 0 0 0 var(--stroke-rule) var(--rule); cursor: pointer; }
.ln-choice__option input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; }
.ln-choice__option:focus-within { outline: 3px solid var(--focus); outline-offset: 2px; }
.ln-choice__dot { flex: none; width: 16px; height: 16px; border-radius: var(--radius-bullet); box-shadow: inset 0 0 0 var(--stroke-rule) currentColor; }
.ln-choice__option--on { background: var(--sign); color: var(--on-sign); box-shadow: inset 0 0 0 var(--stroke-hair) var(--sign-edge); }
.ln-choice__option--on .ln-choice__dot { background: var(--ln-fill, var(--on-sign)); box-shadow: inset 0 0 0 3px var(--on-sign); }
@media (max-width: 640px) { .ln-choice__options { grid-template-columns: minmax(0, 1fr); } } .ln-footer { margin-top: var(--space-24); border-top: var(--stroke-band) solid var(--rule); padding: var(--space-8) 0 var(--space-12); color: var(--ink); }
.ln-footer__in { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-6) var(--space-8); align-items: start; }
.ln-footer__brand { margin: 0 0 var(--space-1); font-family: var(--font-sans); font-size: 26px; font-weight: 700; letter-spacing: -.04em; line-height: 1.1; }
.ln-footer__tagline { margin: 0; max-width: 36ch; }
.ln-footer__cols { display: flex; gap: var(--space-12); flex-wrap: wrap; }
.ln-footer__col p { margin: 0; }
.ln-footer__col ul { list-style: none; margin: var(--space-2) 0 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-1); }
.ln-footer__col a { color: var(--ink); font-size: 15px; font-weight: 600; line-height: 1.6; text-decoration: none; }
.ln-footer__col a:hover { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
.ln-footer__col a:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
.ln-footer__legal { grid-column: 1 / -1; margin: 0; padding-top: var(--space-4); border-top: var(--stroke-hair) solid var(--hairline); }
@media (max-width: 640px) { .ln-footer { margin-top: var(--space-16); } .ln-footer__in { grid-template-columns: minmax(0, 1fr); } .ln-footer__cols { gap: var(--space-8); } } .ln-series__title { margin: 0 0 var(--space-3); }
.ln-series__list { list-style: none; margin: 0; padding: 0; position: relative; }
.ln-series__list::before { content: ""; position: absolute; left: 7px; top: 10px; bottom: 10px; width: var(--stroke-rule); background: var(--ln-fill, var(--ink)); }
.ln-series__stop { position: relative; padding: 0 0 var(--space-3) 28px; font-family: var(--font-sans); font-size: 14px; line-height: 1.35; font-weight: 600; color: var(--ink); }
.ln-series__stop::before { content: ""; position: absolute; left: 0; top: 2px; width: 16px; height: 16px; border-radius: var(--radius-bullet); background: var(--paper); box-shadow: inset 0 0 0 3px var(--ink); }
.ln-series__stop--here::before { background: var(--ink); }
.ln-series__stop--soon { color: var(--ink-muted); font-weight: 500; }
.ln-series__stop a { color: inherit; text-decoration: none; }
.ln-series__stop a:hover, .ln-series__stop a[aria-current="page"] { text-decoration: underline; text-underline-offset: 3px; }
.ln-series__stop a:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; } .ln-prose--escritura { font-size: 19px; line-height: 1.7; }
.ln-prose--escritura h2 { border-top: 0; padding-top: 0; font-size: 26px; }
.ln-prose--escritura > p + p { margin-top: .9em; }
.ln-prose .ln-break { margin: 2em 0; text-align: center; letter-spacing: .8em; font-size: 10px; line-height: 1; color: var(--ink-muted); }*, *::before, *::after { box-sizing: border-box; }
img, video, iframe { max-width: 100%; height: auto; }
a { color: var(--link); }
.pblo-skip { position: absolute; left: calc(-1 * var(--measure-page)); }
.pblo-skip:focus { left: var(--space-4); top: var(--space-4); z-index: 10; padding: var(--space-3) var(--space-4); background: var(--sign); color: var(--on-sign); font-weight: var(--fw-label); outline: 3px solid var(--focus); outline-offset: 2px; }
.screen-reader-text { position: absolute !important; width: var(--stroke-hair); height: var(--stroke-hair); overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }  .ln-wrap.ln-section { padding-top: var(--space-24); }
.pblo-cabecera { padding-top: var(--space-8); }
.pblo-entradilla { padding-top: var(--space-12); display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-8); align-items: end; }
.pblo-entradilla .ln-prose { max-width: var(--measure-prose); }
.pblo-entradilla__meta { grid-column: 1 / -1; margin: 0; }
.pblo-mas { margin: var(--space-8) 0 0; }
.pblo-vacio { margin: 0; color: var(--ink-muted); font-size: var(--fs-body); }
.pblo-direcciones { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--space-8); flex-wrap: wrap; }
.pblo-direcciones .ln-dir--end { margin-left: auto; } .pblo-rejilla { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-8); }
.pblo-captura { margin: 0; background: var(--paper-raised); box-shadow: inset 0 0 0 var(--stroke-hair) var(--hairline); }
.pblo-captura img { display: block; width: 100%; border: var(--stroke-hair) solid var(--hairline); } .pblo-texto { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 9fr); gap: var(--space-8); align-items: start; }
.pblo-texto__lado { display: flex; flex-direction: column; gap: var(--space-3); padding-top: var(--space-3); border-top: var(--stroke-rule) solid var(--rule); }
.pblo-texto__lado p { margin: 0; }
.pblo-firma { font-size: var(--fs-label); font-weight: var(--fw-label); line-height: var(--lh-label); }
.pblo-aclaracion { font-size: var(--fs-body-sm); line-height: var(--lh-body-sm); color: var(--ink-muted); } .pblo-contacto { display: grid; grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); gap: var(--space-12); align-items: start; }
.pblo-form { display: flex; flex-direction: column; gap: var(--space-6); }
.pblo-form p { margin: 0; }
.pblo-trampa { position: absolute; left: calc(-1 * var(--measure-page)); }
.pblo-vias { padding-top: var(--space-3); border-top: var(--stroke-rule) solid var(--rule); }
.pblo-vias p { margin: 0; }
.pblo-vias ul { list-style: none; margin: var(--space-2) 0 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-1); }
.pblo-vias a { color: var(--ink); font-size: var(--fs-body-sm); font-weight: var(--fw-label); text-decoration: none; }
.pblo-vias a:hover { text-decoration: underline; text-decoration-thickness: var(--stroke-rule); text-underline-offset: var(--space-1); }
.pblo-aviso { margin: 0 0 var(--space-6); padding: var(--space-3) var(--space-4); font-weight: var(--fw-label); border-top: var(--stroke-band) solid var(--line-green); background: var(--paper-raised); }
.pblo-aviso--error { border-top-color: var(--alert); color: var(--alert); } .pblo-busqueda .ln-field { max-width: none; } .pblo-paginacion { margin-top: var(--space-8); }
.pblo-paginacion .nav-links { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.pblo-paginacion .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: var(--space-12); height: var(--space-12); padding: 0 var(--space-4); color: var(--ink); font-weight: var(--fw-label); text-decoration: none; box-shadow: inset 0 0 0 var(--stroke-rule) var(--rule); }
.pblo-paginacion .page-numbers.current { background: var(--sign); color: var(--on-sign); box-shadow: inset 0 0 0 var(--stroke-hair) var(--sign-edge); }
.pblo-paginacion a.page-numbers:hover { background: var(--ink); color: var(--paper); }
.pblo-paginacion a:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; } .ln-prose img { border: var(--stroke-hair) solid var(--hairline); }
.ln-prose figure { margin-left: 0; margin-right: 0; }
.ln-prose .wp-caption-text, .ln-prose .wp-element-caption { margin-top: var(--space-2); font-size: var(--fs-body-sm); line-height: var(--lh-body-sm); color: var(--ink-muted); }
.ln-prose .alignleft { float: left; margin: 0 var(--space-6) var(--space-4) 0; }
.ln-prose .alignright { float: right; margin: 0 0 var(--space-4) var(--space-6); }
.ln-prose .aligncenter { display: block; margin-left: auto; margin-right: auto; }
.ln-prose hr { border: 0; border-top: var(--stroke-hair) solid var(--hairline); margin: var(--space-12) 0; }
.ln-prose table { width: 100%; border-collapse: collapse; font-size: var(--fs-body-sm); }
.ln-prose th, .ln-prose td { text-align: left; padding: var(--space-2) var(--space-3) var(--space-2) 0; border-bottom: var(--stroke-hair) solid var(--hairline); }
.ln-prose th { font-weight: var(--fw-label); border-bottom: var(--stroke-rule) solid var(--rule); }
.ln-prose h4 { font-size: var(--fs-label); font-weight: var(--fw-label); } .ln-prose #ez-toc-container { background: var(--paper-raised); border: 0; border-top: var(--stroke-rule) solid var(--rule); border-radius: var(--radius-none); box-shadow: none; padding: var(--space-4); } .pblo-comentarios { max-width: var(--measure-prose); }
.pblo-comentarios__lista { list-style: none; margin: 0 0 var(--space-12); padding: 0; }
.pblo-comentarios__lista .children { list-style: none; padding-left: var(--space-8); }
.pblo-comentarios .comment-body { padding: var(--space-4) 0; border-bottom: var(--stroke-hair) solid var(--hairline); font-size: var(--fs-body-sm); line-height: var(--lh-body-sm); }
.pblo-comentarios .comment-meta { font-family: var(--font-mono); font-size: var(--fs-meta); color: var(--ink-muted); }
.pblo-comentarios .comment-meta a { color: inherit; }
.pblo-comentarios .comment-author { font-family: var(--font-sans); font-weight: var(--fw-label); color: var(--ink); }
.pblo-comentarios .comment-form { display: flex; flex-direction: column; gap: var(--space-6); }
.pblo-comentarios .comment-form p { margin: 0; }
.pblo-comentarios .ln-field { max-width: none; }
.pblo-comentarios .comment-form-cookies-consent { display: flex; gap: var(--space-2); align-items: baseline; font-size: var(--fs-body-sm); } @media (max-width: 900px) {
.pblo-rejilla { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.pblo-entradilla, .pblo-contacto { grid-template-columns: minmax(0, 1fr); } .pblo-texto { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
} @media (max-width: 640px) {
.ln-wrap.ln-section { padding-top: var(--space-16); }
.pblo-cabecera { padding-top: var(--space-4); }
.pblo-rejilla { grid-template-columns: minmax(0, 1fr); }
.pblo-direcciones { flex-direction: column; }
.pblo-direcciones .ln-dir { width: 100%; }
}  .pblo-card { display: flex; flex-direction: column; min-width: 0; }
.pblo-card .ln-card { border-top: 0; padding-top: var(--space-4); }
.pblo-card .ln-card::before { display: none; }
.pblo-card__img { position: relative; display: block; text-decoration: none; aspect-ratio: 16 / 10; overflow: hidden; background: var(--paper-raised); border-top: var(--stroke-band) solid var(--rule); box-shadow: inset 0 0 0 var(--stroke-hair) var(--hairline); }
.pblo-card__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 240ms ease-out; }
.pblo-card__img::after { content: ""; position: absolute; left: 0; top: calc(-1 * var(--stroke-band)); height: var(--stroke-band); width: 0; background: var(--ln-fill, var(--ink)); transition: width 160ms ease-out; }
.pblo-card:hover .pblo-card__img::after, .pblo-destacado-portada:hover .pblo-card__img::after { width: 100%; }
.pblo-card:hover .pblo-card__img img, .pblo-destacado-portada:hover .pblo-card__img img { transform: scale(1.03); }
.pblo-card:hover .ln-card .ln-arrow { transform: translateX(var(--space-1)); }
.pblo-card__img > .ln-bullet { position: absolute; left: var(--space-3); bottom: var(--space-3); }
.pblo-card__img--sin { display: flex; align-items: center; justify-content: center; }
.pblo-card__img--sin > .ln-bullet { position: static; }
.pblo-card__web { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); padding-top: var(--space-3); border-top: var(--stroke-hair) solid var(--hairline); }
.pblo-card__web .ln-btn:hover .ln-arrow, .pblo-acciones .ln-btn:hover .ln-arrow[data-dir="up-right"], .pblo-dos .ln-btn:hover .ln-arrow[data-dir="up-right"] { transform: translate(var(--space-1), calc(-1 * var(--space-1))); } .pblo-estado { display: inline-flex; align-items: center; gap: var(--space-2); font-family: var(--font-mono); font-size: var(--fs-meta); font-weight: var(--fw-meta); color: var(--ink); }
.pblo-estado::before { content: ""; width: 10px; height: 10px; border-radius: var(--radius-bullet); background: var(--line-green); animation: pblo-late 2.4s ease-out infinite; }
@keyframes pblo-late { 0% { box-shadow: 0 0 0 0 var(--line-green); } 70%, 100% { box-shadow: 0 0 0 var(--space-2) transparent; } } .pblo-destacado-portada { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-8); align-items: end; }
.pblo-destacado-portada .pblo-card__img { aspect-ratio: 4 / 3; }
.pblo-destacado-portada__txt { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding-bottom: var(--space-2); }
.pblo-destacado-portada__titulo { margin: 0; font-size: var(--fs-h1); line-height: var(--lh-h1); font-weight: var(--fw-h1); letter-spacing: var(--ls-h1); }
.pblo-destacado-portada__resumen { margin: 0; font-size: var(--fs-lead); line-height: var(--lh-lead); color: var(--ink-muted); }
.pblo-acciones { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-top: var(--space-2); }
.pblo-dos { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-12); align-items: start; }
.pblo-frase { margin: 0 0 var(--space-6); font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: var(--fw-h3); letter-spacing: var(--ls-h3); } .pblo-cambio { display: flex; align-items: center; gap: var(--space-4); margin: var(--space-24) 0 0; font-family: var(--font-mono); font-size: var(--fs-meta); color: var(--ink-muted); }
.pblo-cambio::before, .pblo-cambio::after { content: ""; flex: 1; height: var(--stroke-band); background: var(--rule); }
.ln-wrap.ln-section.pblo-tras-cambio { padding-top: var(--space-12); } .pblo-plano { padding-top: var(--space-8); }
.pblo-red { position: relative; background: var(--paper-raised); box-shadow: inset 0 0 0 var(--stroke-hair) var(--hairline); border-top: var(--stroke-band) solid var(--rule); }
.pblo-red__cab { display: flex; justify-content: space-between; align-items: baseline; gap: var(--space-4); flex-wrap: wrap; padding: var(--space-4) var(--space-8) 0; }
.pblo-red__lienzo { position: relative; height: 460px; margin: 0 var(--space-8); }
.pblo-red__lienzo--v { display: none; }
.pblo-red__pie { display: flex; flex-wrap: wrap; gap: var(--space-6); padding: 0 var(--space-8) var(--space-6); font-size: var(--fs-label); font-weight: var(--fw-label); }
.pblo-red__pie span { display: inline-flex; align-items: center; gap: var(--space-2); }
.pblo-tramo { position: absolute; height: var(--stroke-route); background: var(--ln-fill); transform: translateY(-50%) scaleX(1); transform-origin: 0 50%; animation: pblo-traza 900ms ease-out both; }
.pblo-tramo--v { width: var(--stroke-route); transform: translateX(-50%); transform-origin: 50% 0; animation-name: pblo-traza-v; }
@keyframes pblo-traza { from { transform: translateY(-50%) scaleX(0); } to { transform: translateY(-50%) scaleX(1); } }
@keyframes pblo-traza-v { from { transform: translateX(-50%) scaleY(0); } to { transform: translateX(-50%) scaleY(1); } }
.pblo-cabecera-linea { position: absolute; transform: translate(calc(-100% - var(--space-2)), -50%); }
.pblo-est { position: absolute; transform: translate(-50%, -50%); text-decoration: none; color: var(--ink); animation: pblo-aparece 300ms ease-out both; }
.pblo-est__dot { display: block; width: 22px; height: 22px; border-radius: var(--radius-bullet); background: var(--paper-raised); box-shadow: inset 0 0 0 5px var(--ink); transition: background 120ms ease-out; }
.pblo-est__label { position: absolute; left: 50%; top: calc(100% + var(--space-2)); transform: translateX(-50%); text-align: center; white-space: nowrap; font-size: var(--fs-label); font-weight: var(--fw-label); line-height: var(--lh-label); }
.pblo-est__label small { display: block; margin-top: 2px; font-family: var(--font-mono); font-size: var(--fs-meta); font-weight: var(--fw-meta); color: var(--ink-muted); }
.pblo-est--arriba .pblo-est__label { top: auto; bottom: calc(100% + var(--space-2)); }
.pblo-est--pronto .pblo-est__dot { box-shadow: inset 0 0 0 5px var(--line-grey); }
.pblo-est--pronto .pblo-est__label { color: var(--ink-muted); }
.pblo-est:hover .pblo-est__dot, .pblo-est:focus-visible .pblo-est__dot { background: var(--ink); }
.pblo-est:hover .pblo-est__label { text-decoration: underline; text-underline-offset: var(--space-1); }
.pblo-est:focus-visible, .pblo-trans:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
.pblo-trans { position: absolute; transform: translate(-50%, -50%); width: 30px; border-radius: var(--radius-route); background: var(--paper-raised); box-shadow: inset 0 0 0 5px var(--ink); text-decoration: none; color: var(--ink); animation: pblo-aparece 300ms ease-out both; }
.pblo-trans--m { height: 30px; }
.pblo-trans__label { position: absolute; left: 50%; top: calc(100% + var(--space-2)); transform: translateX(-50%); text-align: center; white-space: nowrap; font-size: var(--fs-h3); font-weight: 700; letter-spacing: var(--ls-h3); line-height: var(--lh-h3); }
.pblo-trans__label small { display: block; font-family: var(--font-mono); font-size: var(--fs-meta); font-weight: var(--fw-meta); color: var(--ink-muted); letter-spacing: 0; }
.pblo-frontera { position: absolute; top: 0; bottom: 0; border-left: var(--stroke-rule) dashed var(--hairline); }
.pblo-frontera span { position: absolute; top: var(--space-4); left: var(--space-3); white-space: nowrap; font-family: var(--font-mono); font-size: var(--fs-meta); color: var(--ink-muted); }
.pblo-frontera--h { left: 0; right: 0; bottom: auto; border-left: 0; border-top: var(--stroke-rule) dashed var(--hairline); }
.pblo-frontera--h span { top: var(--space-2); left: 0; }
@keyframes pblo-aparece { from { opacity: 0; } to { opacity: 1; } } .pblo-tren { position: absolute; z-index: 1; width: 14px; height: 14px; margin: -7px 0 0 -7px; border-radius: var(--radius-bullet); background: var(--on-line-red); box-shadow: inset 0 0 0 3px var(--line-red); animation: pblo-tren 10s ease-in-out infinite; pointer-events: none; }
@keyframes pblo-tren { 0%, 6% { left: 6%; } 18%, 26% { left: var(--p1); } 38%, 46% { left: var(--p2); } 58%, 66% { left: var(--p3); } 80%, 86% { left: 60%; } 100% { left: 6%; } }
.pblo-tren--v { animation-name: pblo-tren-v; }
@keyframes pblo-tren-v { 0%, 6% { top: 6%; } 18%, 26% { top: var(--p1); } 38%, 46% { top: var(--p2); } 58%, 66% { top: var(--p3); } 80%, 86% { top: 50%; } 100% { top: 6%; } } .pblo-portada-img { margin-top: var(--space-8); margin-bottom: 0; }
.pblo-portada-img img { display: block; width: 100%; max-height: 560px; object-fit: cover; background: var(--paper-raised); border: var(--stroke-hair) solid var(--hairline); } .pblo-nav-der { display: flex; align-items: center; gap: var(--space-3); }
.pblo-tema { display: inline-flex; align-items: center; gap: var(--space-2); height: 40px; padding: 0 var(--space-3); font-family: var(--font-sans); font-size: var(--fs-label); font-weight: var(--fw-label); color: var(--ink); background: transparent; border: 0; border-radius: var(--radius-none); box-shadow: inset 0 0 0 var(--stroke-rule) var(--rule); cursor: pointer; white-space: nowrap; transition: background 120ms ease-out, color 120ms ease-out; }
.pblo-tema:hover { background: var(--ink); color: var(--paper); }
.pblo-tema:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
.pblo-tema__disco { position: relative; width: 16px; height: 16px; border-radius: var(--radius-bullet); box-shadow: inset 0 0 0 var(--stroke-rule) currentColor; overflow: hidden; }
.pblo-tema__disco::after { content: ""; position: absolute; top: 0; bottom: 0; right: 0; width: 50%; background: currentColor; transition: width 160ms ease-out; }
[data-theme="dark"] .pblo-tema__disco::after { width: 100%; } .pblo-lect-barra, .pblo-lect-cab, .pblo-lect-fin { display: none; }
.pblo-lectura .ln-nav, .pblo-lectura .ln-footer, .pblo-lectura .pblo-cabecera, .pblo-lectura .pblo-texto__lado,
.pblo-lectura .pblo-portada-img, .pblo-lectura .pblo-zona-comentarios, .pblo-lectura .pblo-mas-textos, .pblo-lectura .pblo-direcciones, .pblo-lectura .pblo-skip { display: none; }
.pblo-lectura .pblo-lect-barra:not([hidden]) { position: sticky; top: 0; z-index: 5; display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); height: 56px; padding: 0 var(--space-6); background: var(--paper); border-bottom: var(--stroke-hair) solid var(--hairline); }
.pblo-lectura body.admin-bar .pblo-lect-barra { top: 32px; }
@media (max-width: 782px) { .pblo-lectura body.admin-bar .pblo-lect-barra { top: 46px; } }
.pblo-lect-barra__ctrl { display: flex; align-items: center; gap: var(--space-2); }
.pblo-lect-btn { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; padding: 0 var(--space-3); font-family: var(--font-sans); font-size: var(--fs-label); font-weight: var(--fw-label); color: var(--ink); background: transparent; border: 0; box-shadow: inset 0 0 0 var(--stroke-hair) var(--hairline); cursor: pointer; }
.pblo-lect-btn--grande { font-size: var(--fs-h3); }
.pblo-lect-btn:hover { box-shadow: inset 0 0 0 var(--stroke-rule) var(--rule); }
.pblo-lect-btn[aria-pressed="true"] { background: var(--sign); color: var(--on-sign); box-shadow: none; }
.pblo-lect-btn:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
.pblo-lect-progreso { position: absolute; left: 0; bottom: calc(-1 * var(--stroke-rule)); width: 0; height: var(--stroke-rule); background: var(--ln-fill, var(--ink)); }
.pblo-lectura .pblo-texto { display: block; max-width: 34em; padding-top: var(--space-16); padding-bottom: var(--space-24); }
.pblo-lectura .pblo-lect-cab { display: block; margin-bottom: var(--space-12); }
.pblo-lectura .pblo-lect-cab p { margin: 0; }
.pblo-lect-cab__titulo { margin: var(--space-3) 0 var(--space-4) !important; font-size: var(--fs-h1); line-height: var(--lh-h1); font-weight: var(--fw-h1); letter-spacing: var(--ls-h1); }
.pblo-lectura .pblo-texto .ln-prose { max-width: none; font-size: var(--fs-lead); line-height: 1.75; }
.pblo-lectura.pblo-lectura--grande .pblo-texto .ln-prose { font-size: calc(var(--fs-lead) * 1.2); }
.pblo-lectura .pblo-lect-fin { display: flex; justify-content: space-between; align-items: center; gap: var(--space-4); flex-wrap: wrap; margin-top: var(--space-16); padding-top: var(--space-4); border-top: var(--stroke-rule) solid var(--rule); } .ln-post.pblo-post--img { grid-template-columns: 200px minmax(0, 1fr) auto; align-items: center; gap: var(--space-6); }
.pblo-post__img { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: var(--paper-raised); box-shadow: inset 0 0 0 var(--stroke-hair) var(--hairline); }
.pblo-post__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 240ms ease-out; }
.pblo-post--img:hover .pblo-post__img img { transform: scale(1.03); }
.pblo-post__img--sin { display: flex; align-items: center; justify-content: center; }
.ln-posts .pblo-post__img--sin .ln-bullet { align-self: center; margin: 0; }
.pblo-post__meta { display: flex; align-items: center; gap: var(--space-2); margin-bottom: var(--space-2); }
.pblo-post--img .ln-post__title { margin: 0; }
@media (max-width: 640px) {
.ln-posts .ln-post.pblo-post--img { grid-template-columns: minmax(0, 1fr); grid-template-areas: none; gap: var(--space-3); }
.ln-posts .ln-post.pblo-post--img > * { grid-area: auto; }
}
@media (prefers-reduced-motion: reduce) { .pblo-post__img img { transition: none; } } .pblo-presentacion { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: var(--space-12); align-items: end; }
.pblo-retrato { margin: 0; border-top: var(--stroke-band) solid var(--rule); background: var(--paper-raised); }
.pblo-retrato img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: 50% 30%; border: var(--stroke-hair) solid var(--hairline); border-top: 0; }
@media (max-width: 900px) {
.pblo-presentacion { grid-template-columns: minmax(0, 1fr); gap: var(--space-8); }
.pblo-retrato { max-width: 360px; }
} .pblo-flota { display: none; }
@media (max-width: 900px) {
.pblo-flota { position: fixed; z-index: 15; right: var(--space-4); bottom: calc(var(--space-4) + env(safe-area-inset-bottom, 0px)); display: inline-flex; opacity: 0; transform: translateY(var(--space-4)); pointer-events: none; transition: opacity 160ms ease-out, transform 160ms ease-out; }
.pblo-flota--visible { opacity: 1; transform: none; pointer-events: auto; }
.pblo-lectura .pblo-flota { display: none; }
} @media (max-width: 900px) {
.ln-nav { position: sticky; top: 0; z-index: 20; background: var(--paper); transition: transform 200ms ease-out; }
.pblo-nav-oculta .ln-nav:not(.ln-nav--open) { transform: translateY(-100%); }
body.admin-bar .ln-nav { top: 32px; }
}
@media (max-width: 782px) { body.admin-bar .ln-nav { top: 46px; } }
@media (max-width: 600px) { body.admin-bar .ln-nav { top: 0; } }
@media (prefers-reduced-motion: reduce) {
.ln-nav, .pblo-flota { transition: none; }
.pblo-card__img img, .pblo-card__img::after, .pblo-tema__disco::after, .pblo-est__dot { transition: none; }
.pblo-estado::before, .pblo-tramo, .pblo-est, .pblo-trans, .pblo-tren { animation: none; }
.pblo-tren { display: none; }
}
@media (max-width: 900px) {
.pblo-destacado-portada, .pblo-dos { grid-template-columns: minmax(0, 1fr); }
.pblo-nav-der { margin-left: auto; gap: var(--space-2); }
.pblo-nav-der .ln-nav__toggle { margin-left: 0; } .pblo-red__lienzo--h { display: none; }
.pblo-red__lienzo--v { display: block; height: 640px; margin: 0 var(--space-6); }
.pblo-red__lienzo--v .pblo-est__label { left: calc(100% + var(--space-3)); top: 50%; transform: translateY(-50%); text-align: left; white-space: normal; width: max-content; max-width: 11em; }
.pblo-red__lienzo--v .pblo-est--arriba .pblo-est__label { bottom: auto; }
.pblo-red__lienzo--v .pblo-trans__label { left: calc(100% + var(--space-3)); top: 50%; transform: translateY(-50%); text-align: left; }
}
@media (max-width: 640px) {
.pblo-red__lienzo--v { margin: 0 var(--space-4); }
.pblo-red__cab, .pblo-red__pie { padding-left: var(--space-4); padding-right: var(--space-4); }
.pblo-tema__txt { display: none; }
.pblo-cambio { margin-top: var(--space-16); }
.pblo-lectura .pblo-lect-barra:not([hidden]) { padding: 0 var(--space-4); }
.pblo-lectura .pblo-lect-barra .ln-btn__label { font-size: var(--fs-label); }
.pblo-lectura .pblo-texto { padding-top: var(--space-8); padding-bottom: var(--space-16); }
}h1:where(.wp-block-heading).has-background,h2:where(.wp-block-heading).has-background,h3:where(.wp-block-heading).has-background,h4:where(.wp-block-heading).has-background,h5:where(.wp-block-heading).has-background,h6:where(.wp-block-heading).has-background{padding:1.25em 2.375em}h1.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h1.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h2.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h2.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h3.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h3.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h4.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h4.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h5.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h5.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h6.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h6.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]){rotate:180deg}.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-left[style*="writing-mode:vertical-lr"],p.has-text-align-right[style*="writing-mode:vertical-rl"]{rotate:180deg}