/* Modelo 36 · Plano — clases .bp */
.pmc-m-plano { min-height: 100vh; margin: 0; color: var(--pmc-on-strong); background-color: var(--pmc-primary-strong); background-image: linear-gradient(color-mix(in srgb, var(--pmc-on-strong) 10%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--pmc-on-strong) 10%, transparent) 1px, transparent 1px), linear-gradient(color-mix(in srgb, var(--pmc-on-strong) 5%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--pmc-on-strong) 5%, transparent) 1px, transparent 1px); background-size: 60px 60px, 60px 60px, 12px 12px, 12px 12px; }
.bp { --bp-line: color-mix(in srgb, var(--pmc-on-strong) 75%, transparent); --k-ink: var(--pmc-on-strong); --k-muted: var(--pmc-on-strong); --k-line: color-mix(in srgb, var(--pmc-on-strong) 45%, transparent); --k-accent: var(--pmc-on-strong); --k-panel-border: 1.5px solid var(--bp-line); --k-pad: 1rem 1.1rem; --k-btn-r: 0; --k-gap: 1.25rem; --k-q-border: 1.5px solid var(--bp-line); --k-h: "Red Hat Mono", ui-monospace, monospace; --k-h2-s: .82rem; --k-photo-r: 0; --k-focus: var(--pmc-secondary); }
.bp .k-sec, .bp-box { position: relative; }
.bp .k-sec::before, .bp-box::before { content: ""; position: absolute; left: -5px; top: -5px; width: 8px; height: 8px; border: 1.5px solid var(--pmc-on-strong); }
.bp-meta { display: flex; justify-content: space-between; margin: 0; font: 400 .7rem "Red Hat Mono", ui-monospace, monospace; letter-spacing: .1em; }
.bp-head { display: flex; flex-direction: column; gap: .7rem; padding: 1.3rem 1.1rem; border: 1.5px solid var(--bp-line); }
.bp-bolt { width: 2.5rem; height: 2.5rem; fill: none; stroke: var(--pmc-secondary); stroke-width: 2; stroke-linejoin: round; }
.bp-name { font: 700 clamp(2.2rem, 11vw, 2.6rem)/.98 var(--pmc-display); text-transform: uppercase; }
.bp-tagline { font-weight: 500; line-height: 1.45; }
.bp-dim { display: flex; align-items: center; gap: .35rem; font: 400 .62rem "Red Hat Mono", monospace; opacity: .85; }
.bp-dim i { flex: 1; border-top: 1px solid currentColor; }
.bp-open { align-self: flex-start; border-radius: 0; font-family: "Red Hat Mono", monospace; text-transform: uppercase; font-size: .7rem; }
.bp .k-main { background: var(--pmc-secondary); color: var(--pmc-on-secondary); text-transform: uppercase; letter-spacing: .04em; font-size: 1.1rem; }
.bp .k-q { text-transform: uppercase; }
.bp .k-h2 { letter-spacing: .12em; text-transform: uppercase; }
.bp .k-item, .bp .k-hours, .bp .k-contact { font-family: "Red Hat Mono", ui-monospace, monospace; font-size: .88rem; }
.bp .k-item { border-bottom: 1px dashed var(--k-line); }
.bp .k-gallery { --k-gal-cols: 2; }
.bp .k-gallery a { border: 1.5px solid var(--bp-line); }
.bp .k-share { border: 1.5px solid var(--bp-line); padding: 1rem; }
.bp .k-qr { border-radius: 0; }
.bp .k-sbtn { text-transform: uppercase; border: 1.5px solid var(--pmc-on-strong); }
.bp .k-sbtn:first-child { background: var(--pmc-on-strong); color: var(--pmc-primary-strong); }
.bp .k-links a { border: 0; font-family: "Red Hat Mono", monospace; text-transform: uppercase; font-size: .8rem; }
.bp .k-links a::before { content: "[ "; } .bp .k-links a::after { content: " ]"; }
.bp-foot a { color: var(--pmc-on-strong); font-family: "Red Hat Mono", monospace; }
