/* PISO ZERO — editorial 20261111-02. Scoped to new content pages. */
.pz-editorial-page { background: #0b0b0b; color: #f4f1eb; }
.pz-ed { --ed-accent:#eb7a2a; --ed-line:#303030; --ed-muted:#b3b1ad; padding-top:72px; }
.pz-ed *, .pz-ed *::before, .pz-ed *::after { box-sizing:border-box; }
.pz-ed [id] { scroll-margin-top:136px; }
.pz-ed h1, .pz-ed h2, .pz-ed h3, .pz-ed h4 { text-transform:none; letter-spacing:-.035em; font-weight:500; }
.pz-ed h1 { margin:0; line-height:1.03; }
.pz-ed h2 { margin:0 0 24px; font-size:clamp(1.8rem,3.5vw,3.2rem); line-height:1.12; }
.pz-ed h3 { font-size:clamp(1.25rem,2vw,1.65rem); line-height:1.2; margin:0 0 18px; }
.pz-ed p { margin:0 0 20px; }
.pz-ed img { max-width:100%; height:auto; }
.pz-ed a:focus-visible, .pz-ed button:focus-visible, .pz-ed summary:focus-visible { outline:2px solid #eb7a2a; outline-offset:5px; }
.pz-ed button { font:inherit; cursor:pointer; }
.pz-ed [hidden] { display:none; }
.pz-ed .ed-wrap { width:min(90%,1296px); margin-inline:auto; }
.pz-ed .ed-section { padding:88px 0; border-bottom:1px solid var(--ed-line); position:relative; }
.pz-ed .ed-kicker, .pz-ed .ed-meta, .pz-ed .ed-tag, .pz-ed .ed-number, .pz-ed .ed-filter-status { font-family:'JetBrains Mono',ui-monospace,monospace; }
.pz-ed .ed-kicker { display:block; font-size:.75rem; letter-spacing:.1em; text-transform:uppercase; color:var(--ed-accent); margin-bottom:28px; line-height:1.6; }
.pz-ed .ed-display { font-size:clamp(3.2rem,7.3vw,7.25rem); max-width:19ch; margin:0 0 34px; }
.pz-ed .ed-display em { color:var(--ed-accent); font-style:normal; }
.pz-ed .ed-heading { max-width:22ch; }
.pz-ed .ed-lede { font-size:clamp(1.05rem,1.6vw,1.4rem); color:var(--ed-muted); max-width:64ch; line-height:1.65; }
.pz-ed .ed-meta { display:flex; flex-wrap:wrap; gap:14px; align-items:center; color:var(--ed-muted); font-size:.7rem; margin-bottom:24px; }
.pz-ed .ed-tag { display:inline-flex; color:#0b0b0b; background:var(--ed-accent); padding:5px 9px; font-size:.67rem; text-transform:uppercase; letter-spacing:.035em; }
.pz-ed .ed-note, .pz-ed .ed-image-note { font-size:.8rem; color:var(--ed-muted); line-height:1.6; }
.pz-ed .ed-image-note { margin-top:12px; }
.pz-ed .ed-hero { padding:76px 0 58px; border-bottom:1px solid var(--ed-line); }
.pz-ed .ed-hero-copy { padding-bottom:44px; }
.pz-ed .ed-hero-image { display:block; width:100%; height:auto; border:1px solid var(--ed-line); }
.pz-ed .ed-actions { display:flex; align-items:center; flex-wrap:wrap; gap:16px; margin:28px 0 0; }
.pz-ed .ed-button { display:inline-flex; justify-content:space-between; align-items:center; gap:24px; min-height:48px; padding:14px 22px; color:#0b0b0b; background:var(--ed-accent); border:1px solid var(--ed-accent); font-size:.92rem; line-height:1.35; transition:background .18s; }
.pz-ed .ed-button:hover { background:#f3924f; }
.pz-ed .ed-button--secondary { background:transparent; color:#f4f1eb; border-color:#575757; }
.pz-ed .ed-button--secondary:hover { background:#1d1d1d; }
.pz-ed .ed-text-link { display:inline-block; border-bottom:1px solid var(--ed-accent); padding-bottom:4px; margin-top:12px; color:#f4f1eb; }
.pz-ed .ed-text-link:hover { color:var(--ed-accent); }
.pz-ed .ed-split { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:64px; }
.pz-ed .ed-two { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.pz-ed .ed-three { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; }
.pz-ed .ed-split > *, .pz-ed .ed-two > *, .pz-ed .ed-three > * { min-width:0; }
.pz-ed .ed-card { padding:32px; border:1px solid var(--ed-line); }
.pz-ed .ed-card p { color:var(--ed-muted); }
.pz-ed .ed-number { display:block; color:var(--ed-accent); font-size:.8rem; margin-bottom:26px; }
.pz-ed .ed-step-list { list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:34px 0 0; padding:0; }
.pz-ed .ed-step { padding:30px; border:1px solid var(--ed-line); min-width:0; }
.pz-ed .ed-step p { color:var(--ed-muted); }
.pz-ed .ed-dark-panel { background:#131313; border:1px solid var(--ed-line); padding:32px; }
.pz-ed .ed-tabs { margin-top:34px; border:1px solid var(--ed-line); }
.pz-ed .ed-tablist { display:none; flex-wrap:wrap; border-bottom:1px solid var(--ed-line); }
.pz-ed .ed-tabs-ready .ed-tablist { display:flex; }
.pz-ed .ed-tablist button { flex:1; background:#101010; color:#b3b1ad; border:0; border-right:1px solid var(--ed-line); padding:18px 20px; font-size:.9rem; min-height:48px; }
.pz-ed .ed-tablist button[aria-selected="true"] { color:#f4f1eb; background:#191919; box-shadow:inset 0 2px var(--ed-accent); }
.pz-ed [data-ed-panel] { padding:32px; }
.pz-ed .ed-conversation { display:grid; gap:16px; font-size:.95rem; line-height:1.75; }
.pz-ed .ed-conversation dt { font-family:'JetBrains Mono',monospace; color:var(--ed-accent); font-size:.7rem; text-transform:uppercase; }
.pz-ed .ed-conversation dd { margin:0 0 14px; max-width:70ch; }
.pz-ed .ed-conversation blockquote { padding:18px 22px; border-left:2px solid var(--ed-accent); background:#171717; margin:0; }
.pz-ed .ed-code { white-space:pre-wrap; overflow-wrap:anywhere; font-family:'JetBrains Mono',monospace; font-size:.78rem; line-height:1.9; padding:22px; background:#080808; border:1px solid var(--ed-line); color:#cfcdc9; }
.pz-ed .ed-sticky-nav { position:sticky; top:72px; z-index:10; background:rgba(11,11,11,.98); border-bottom:1px solid var(--ed-line); padding:0; }
.pz-ed .ed-sticky-nav .ed-wrap { display:flex; flex-wrap:wrap; gap:22px; padding:18px 0; }
.pz-ed .ed-sticky-nav a { color:var(--ed-muted); font-size:.78rem; line-height:1.5; }
.pz-ed .ed-sticky-nav a:hover, .pz-ed .ed-sticky-nav a[aria-current="location"] { color:var(--ed-accent); }
.pz-ed .ed-floors { list-style:none; padding:0; margin:36px 0 0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.pz-ed .ed-floors > * { min-width:0; border:1px solid var(--ed-line); padding:28px; }
.pz-ed .ed-floors a { display:block; }
.pz-ed .ed-floors a:hover { color:var(--ed-accent); }
.pz-ed .ed-floors p { font-size:.9rem; color:var(--ed-muted); }
.pz-ed .ed-faq details { border-top:1px solid var(--ed-line); padding:0; }
.pz-ed .ed-faq details:last-child { border-bottom:1px solid var(--ed-line); }
.pz-ed .ed-faq summary { cursor:pointer; padding:24px 0; font-size:1.1rem; }
.pz-ed .ed-faq details p { max-width:72ch; color:var(--ed-muted); padding-bottom:12px; }
.pz-ed .ed-cta { padding:76px 0; background:#171411; border-top:1px solid #5e3820; }
.pz-ed .ed-cta h2 { max-width:26ch; }
.pz-ed .ed-feature { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); border:1px solid var(--ed-line); background:#101010; align-items:center; }
.pz-ed .ed-feature-copy { padding:42px; min-width:0; }
.pz-ed .ed-feature-copy h2 { font-size:clamp(1.75rem,3vw,3rem); margin-bottom:24px; }
.pz-ed .ed-feature-copy p { color:var(--ed-muted); }
.pz-ed .ed-feature-media { margin:0; min-width:0; }
.pz-ed .ed-feature-media img { display:block; width:100%; height:auto; }
.pz-ed .ed-filterbar { display:none; gap:12px; flex-wrap:wrap; margin:30px 0 24px; }
.pz-ed.ed-filter-ready .ed-filterbar { display:flex; }
.pz-ed .ed-filterbar button { min-height:44px; padding:10px 18px; background:transparent; color:#b3b1ad; border:1px solid #454545; font-size:.85rem; }
.pz-ed .ed-filterbar button[aria-pressed="true"] { color:#0b0b0b; background:var(--ed-accent); border-color:var(--ed-accent); }
.pz-ed .ed-filter-status { font-size:.7rem; color:var(--ed-muted); margin-bottom:16px; }
.pz-ed .ed-article-list { margin-top:16px; }
.pz-ed [data-ed-category][hidden] { display:none; }
.pz-ed .ed-article-row { display:grid; grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr); gap:44px; border-top:1px solid var(--ed-line); padding:32px 0; align-items:center; }
.pz-ed .ed-article-row > * { min-width:0; }
.pz-ed .ed-thumb { width:100%; height:auto; display:block; border:1px solid var(--ed-line); }
.pz-ed .ed-link-title { font-size:clamp(1.4rem,2.6vw,2.3rem); line-height:1.2; display:block; max-width:28ch; margin:12px 0 16px; }
.pz-ed .ed-link-title:hover { color:var(--ed-accent); }
.pz-ed .ed-editorial-note { padding:28px; border-left:2px solid var(--ed-accent); background:#151515; margin-top:32px; color:var(--ed-muted); }
.pz-ed .ed-article-header { padding:64px 0 48px; border-bottom:1px solid var(--ed-line); }
.pz-ed .ed-article-header h1 { max-width:24ch; font-size:clamp(2.5rem,5vw,5rem); margin:24px 0 30px; }
.pz-ed .ed-breadcrumb { font-size:.8rem; color:var(--ed-muted); display:flex; flex-wrap:wrap; gap:10px; margin-bottom:32px; }
.pz-ed .ed-breadcrumb a { border-bottom:1px solid #6b665f; }
.pz-ed .ed-cover { display:block; width:100%; height:auto; margin-top:32px; border:1px solid var(--ed-line); }
.pz-ed .ed-article-layout { display:grid; grid-template-columns:minmax(0,.34fr) minmax(0,1fr); gap:80px; padding-top:64px; padding-bottom:80px; align-items:start; }
.pz-ed .ed-toc { position:sticky; top:112px; font-size:.85rem; line-height:1.55; border-left:1px solid var(--ed-line); padding-left:22px; }
.pz-ed .ed-toc h2, .pz-ed .ed-toc h3 { font-family:'JetBrains Mono',monospace; font-size:.7rem; letter-spacing:.03em; color:var(--ed-accent); margin-bottom:24px; text-transform:uppercase; }
.pz-ed .ed-toc ol, .pz-ed .ed-toc ul { list-style:none; padding:0; margin:0; display:block; }
.pz-ed .ed-toc li { margin-bottom:14px; }
.pz-ed .ed-toc a { color:var(--ed-muted); display:block; }
.pz-ed .ed-toc a:hover { color:#f4f1eb; }
.pz-ed .ed-prose { font-size:1.07rem; line-height:1.85; max-width:760px; min-width:0; }
.pz-ed .ed-prose h2 { margin:52px 0 22px; font-size:clamp(1.6rem,2.4vw,2.3rem); line-height:1.2; }
.pz-ed .ed-prose h3 { margin:32px 0 16px; font-size:1.3rem; }
.pz-ed .ed-prose p { color:#c8c5c0; margin:0 0 24px; }
.pz-ed .ed-prose strong { color:#f4f1eb; font-weight:600; }
.pz-ed .ed-prose ul, .pz-ed .ed-prose ol { padding-left:24px; margin:24px 0; color:#c8c5c0; }
.pz-ed .ed-prose li { padding-left:5px; margin-bottom:14px; }
.pz-ed .ed-prose a:not(.ed-button) { color:#f4f1eb; text-decoration:underline; text-decoration-color:#eb7a2a; text-underline-offset:4px; }
.pz-ed .ed-prose a:hover { color:var(--ed-accent); }
.pz-ed .ed-prose section { padding:0; border:0; }
.pz-ed .ed-prose blockquote { border-left:2px solid var(--ed-accent); padding:22px; background:#141414; margin:28px 0; }
.pz-ed .ed-callout { margin:30px 0; padding:26px; background:#19140f; border-left:2px solid var(--ed-accent); }
.pz-ed .ed-callout p:last-child { margin-bottom:0; }
.pz-ed .ed-sources { font-size:.9rem; border-top:1px solid var(--ed-line); margin-top:44px; padding-top:12px; }
.pz-ed .ed-sources li { overflow-wrap:anywhere; }
.pz-ed .ed-related { padding:42px 0; border-top:1px solid var(--ed-line); }
.pz-ed .ed-related a { display:inline-block; margin:10px 24px 10px 0; }
.pz-ed .ed-checklist { list-style:square; }
.pz-ed .particles-wrapper { z-index:0; position:absolute; inset:0; pointer-events:none; background:#0b0b0b; }
.pz-ed .particles-wrapper + .ed-wrap { position:relative; z-index:1; }
@media(max-width:991px) {
  .pz-ed .ed-split { gap:36px; }
  .pz-ed .ed-floors { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pz-ed .ed-article-layout { grid-template-columns:180px minmax(0,1fr); gap:36px; }
  .pz-ed .ed-feature-copy { padding:30px; }
}
@media(max-width:767px) {
  .pz-ed { padding-top:72px; }
  .pz-ed .ed-wrap { width:90%; }
  .pz-ed .ed-hero, .pz-ed .ed-section, .pz-ed .ed-article-header { padding-top:48px; padding-bottom:48px; }
  .pz-ed .ed-display { font-size:clamp(2.7rem,11.3vw,4.5rem); letter-spacing:-.04em; }
  .pz-ed .ed-split, .pz-ed .ed-two, .pz-ed .ed-three, .pz-ed .ed-step-list, .pz-ed .ed-feature, .pz-ed .ed-article-layout { grid-template-columns:1fr; }
  .pz-ed .ed-step-list { gap:0; }
  .pz-ed .ed-split, .pz-ed .ed-two { gap:28px; }
  .pz-ed .ed-card, .pz-ed .ed-step, .pz-ed .ed-dark-panel, .pz-ed [data-ed-panel], .pz-ed .ed-feature-copy { padding:24px; }
  .pz-ed .ed-floors { grid-template-columns:1fr; }
  .pz-ed .ed-sticky-nav { position:static; }
  .pz-ed .ed-sticky-nav .ed-wrap { gap:12px 20px; }
  .pz-ed .ed-tablist button { flex:1 1 30%; padding:16px 10px; font-size:.8rem; }
  .pz-ed .ed-toc { position:static; padding-top:0; }
  .pz-ed .ed-article-layout { gap:34px; padding-top:40px; }
  .pz-ed .ed-article-header h1 { font-size:clamp(2.25rem,9vw,3.6rem); }
  .pz-ed .ed-article-row { grid-template-columns:1fr; gap:24px; }
  .pz-ed .ed-feature-copy { order:1; }
  .pz-ed .ed-article-row .ed-thumb { max-width:100%; }
  .pz-ed .ed-prose { font-size:1rem; }
  .pz-ed .ed-cta { padding:48px 0; }
  .pz-ed .ed-button { width:100%; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .pz-ed *, .pz-ed *::before, .pz-ed *::after { animation-duration:0s; transition-duration:0s; }
}

/* 20261111-03 — Miguel's approved flowfield is a brand signature. */
.pz-ed .ed-particle-band { position:relative; isolation:isolate; overflow:hidden; background:#0b0b0b; }
.pz-ed .ed-particle-band > .particles-wrapper { position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.65; }
.pz-ed .ed-particle-band > .ed-wrap { position:relative; z-index:1; }
.pz-ed .ed-particle-band .ed-lede,
.pz-ed .ed-particle-band .ed-note,
.pz-ed .ed-particle-band .ed-meta,
.pz-ed .ed-particle-band .ed-breadcrumb { background:rgba(11,11,11,.94); }
.pz-ed .ed-particle-band .ed-feature-copy { background:#101010; }
.pz-ed .ed-particle-band .ed-image-note { display:inline-block; background:rgba(11,11,11,.94); }
.pz-ed .ed-particle-band .ed-display,
.pz-ed .ed-particle-band h1 { text-shadow:0 2px 10px #0b0b0b; }
.pz-ed .ed-article-layout, .pz-ed .ed-article-row { background:#0b0b0b; }
