/* Lane A Floor Plan: scoped to body.zv-floorplan. Single-column plan, never a 4-up grid. Gold only inside .zr-dark. */
body.zv-floorplan .zr-eyebrow{font:700 .8125rem/1.2 var(--zv-font);letter-spacing:.12em;text-transform:uppercase;color:var(--zv-muted);margin:0 0 12px}
body.zv-floorplan .zr-lede{font-size:1.375rem;line-height:1.4;font-weight:700;max-width:36rem;margin:0 0 12px}
body.zv-floorplan .zr-prose{max-width:40rem}
body.zv-floorplan .zr-prose p{margin:0 0 14px}
body.zv-floorplan .zr-dark{background:var(--zv-hero);color:var(--zv-on-dark);border-radius:16px;padding:clamp(24px,5vw,48px);margin:48px 0 0}
body.zv-floorplan .zr-dark h2{color:var(--zv-on-dark);margin-top:0;font-size:clamp(1.5rem,4vw,2rem);max-width:22ch}
body.zv-floorplan .zr-dark .zr-eyebrow{color:var(--zv-gold)}
body.zv-floorplan .zr-dark p{color:var(--zv-on-dark-muted);max-width:36rem}
body.zv-floorplan .zr-dark a{color:var(--zv-on-dark)}
body.zv-floorplan .zr-dark a:focus-visible{outline:2px solid var(--zv-on-dark);outline-offset:3px}
body.zv-floorplan .fp-plan{list-style:none;margin:24px 0 0;padding:0 0 0 28px;position:relative;max-width:44rem}
body.zv-floorplan .fp-plan::before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:2px;background:var(--zv-gold)}
body.zv-floorplan .fp-room{position:relative;background:var(--zv-raised);border:1px solid var(--zv-line-dark);border-radius:12px;padding:20px;margin:0 0 16px}
body.zv-floorplan .fp-room:last-child{margin-bottom:0}
body.zv-floorplan .fp-room::before{content:"";position:absolute;left:-21px;top:30px;width:21px;height:2px;background:var(--zv-gold)}
body.zv-floorplan .fp-room h3{font:800 1.25rem/1.2 var(--zv-font);margin:0 0 6px;color:var(--zv-on-dark)}
body.zv-floorplan .fp-room .fp-line{color:var(--zv-on-dark);margin:0 0 6px}
body.zv-floorplan .fp-room .fp-func{color:var(--zv-on-dark-faint);font-size:.9375rem;margin:0 0 10px}
body.zv-floorplan .fp-room a{font-weight:700}
body.zv-floorplan .fp-hall{color:var(--zv-on-dark-faint);font-size:.9375rem;margin:16px 0 0}
body.zv-floorplan a.zr-cta{display:inline-flex;align-items:center;min-height:48px;padding:12px 24px;border-radius:999px;background:var(--zv-gold);
  color:var(--zv-hero);font-weight:800;text-decoration:none;margin:8px 0 0}
body.zv-floorplan a.zr-cta:hover{background:var(--zv-gold-hover)}
body.zv-floorplan .zr-notyet{margin:28px 0 0;padding-top:20px;border-top:1px solid var(--zv-line-dark)}
body.zv-floorplan .zr-notyet h3{font:800 1.0625rem/1.3 var(--zv-font);margin:0 0 6px;color:var(--zv-on-dark)}
