/* Supplied Floor Plans design, scoped to its existing page sections. */
.floorplans{--fp-dim:rgba(28,23,18,.72);color:var(--ink);min-width:0}
.floorplans [hidden]{display:none!important}
.floorplans .fp-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:clamp(24px,4vw,56px);border-top:1px solid var(--rule);padding-top:24px}
.floorplans .fp-kicker{font:600 11px/1.5 var(--archivo);letter-spacing:.18em;text-transform:uppercase;color:var(--fp-dim)}
.floorplans .fp-heading h2{font:700 clamp(32px,3.6vw,56px)/.98 var(--jost);letter-spacing:-.02em;margin-top:12px;text-wrap:balance;max-width:12ch;scroll-margin-top:110px}
.floorplans .fp-heading p:not(.fp-kicker){max-width:60ch;font-size:17px;line-height:1.6}
.floorplans .fp-all-link{display:inline-flex;align-items:center;gap:14px;min-height:44px;margin-top:16px;border-bottom:1px solid currentColor;font:600 12px/1.5 var(--archivo);letter-spacing:.1em;text-transform:uppercase}
.floorplans .fp-filters{display:flex;gap:10px;flex-wrap:wrap;margin:36px 0 20px}
.floorplans .fp-filters button{border:1px solid rgba(28,23,18,.4);border-radius:999px;min-height:44px;padding:12px 16px;font:600 11px/1.3 var(--archivo);letter-spacing:.1em;text-transform:uppercase;touch-action:manipulation}
.floorplans .fp-filters button[aria-pressed="true"],.floorplans .fp-filters button:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.floorplans .fp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:24px}
.floorplans .fp-card{min-width:0;container-type:inline-size;background:var(--fp-bg);color:var(--fp-fg);scroll-margin-top:110px}
.floorplans .fp-ochre{--fp-bg:#D8C257;--fp-fg:#1C1712}
.floorplans .fp-paper{--fp-bg:#ECE5D2;--fp-fg:#1C1712}
.floorplans .fp-oxblood{--fp-bg:#6B2C25;--fp-fg:#ECE5D2}
.floorplans .fp-ink{--fp-bg:#1C1712;--fp-fg:#ECE5D2}
.floorplans .fp-gold{--fp-bg:#C6A35A;--fp-fg:#1C1712;grid-column:1/-1}
.floorplans .fp-art{position:relative;aspect-ratio:3/4;display:flex;flex-direction:column;justify-content:space-between;padding:24px;isolation:isolate;overflow:hidden}
.floorplans .fp-photo{position:absolute;inset:0;z-index:-1;background:var(--fp-bg)}
.floorplans .fp-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.1);mix-blend-mode:multiply;opacity:.9;transition:opacity .25s}
.floorplans .fp-oxblood .fp-photo img,.floorplans .fp-ink .fp-photo img{mix-blend-mode:screen;opacity:.42}
.floorplans .fp-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,var(--fp-bg),color-mix(in srgb,var(--fp-bg) 70%,transparent) 14%,transparent 34%),linear-gradient(to top,var(--fp-bg),color-mix(in srgb,var(--fp-bg) 85%,transparent) 26%,transparent 67%)}
.floorplans .fp-wordmark{display:flex;justify-content:space-between;font:300 clamp(15px,6cqw,22px)/1 var(--jost)}
.floorplans .fp-name{position:relative;padding-top:40px}
.floorplans .fp-name h3{font:700 clamp(36px,17cqw,68px)/.88 var(--jost);text-transform:uppercase;letter-spacing:-.01em;margin:0 0 22px}
.floorplans .fp-name>span{font:600 11px/1.4 var(--archivo);letter-spacing:.16em;text-transform:uppercase}
.floorplans .fp-preview{position:absolute;inset:0;width:100%;height:100%;text-align:right;touch-action:manipulation}
.floorplans .fp-preview>span{position:absolute;right:20px;bottom:20px;font:600 11px/1.5 var(--archivo);letter-spacing:.1em;text-transform:uppercase;padding:4px;background:var(--fp-bg)}
.floorplans .fp-preview:hover>span{text-decoration:underline;text-underline-offset:4px}
.floorplans .fp-preview[aria-expanded="true"]{box-shadow:inset 0 0 0 3px var(--fp-fg)}
.floorplans .fp-direct{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:14px 20px;font:600 11px/1.5 var(--archivo);letter-spacing:.07em;text-transform:uppercase;border-top:1px solid currentColor}
.floorplans .fp-direct:hover,.floorplans .fp-all-link:hover,.floorplans .fp-detail-link:hover{text-decoration:underline;text-underline-offset:4px}
.floorplans .fp-gold .fp-art{aspect-ratio:21/9;padding:clamp(24px,3vw,44px)}
.floorplans .fp-gold .fp-wordmark{font-size:clamp(18px,2.6cqw,32px)}
.floorplans .fp-gold .fp-name{padding-top:0}
.floorplans .fp-gold .fp-name h3{font-size:clamp(48px,7cqw,100px)}
.floorplans .fp-gold .fp-photo img{object-position:50% 60%}
.floorplans .fp-detail{position:relative;background:var(--ink);color:var(--paper);margin-top:12px;padding:76px 40px 40px;scroll-margin-top:110px}
.floorplans .fp-detail-content{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.floorplans .fp-detail figure{min-width:0}
.floorplans .fp-detail figure img{width:100%;height:auto;background:#2A241E}
.floorplans .fp-detail figcaption{font:400 12px/1.5 var(--archivo);margin-top:12px;color:var(--paper-on-ink)}
.floorplans .fp-meta{display:flex;flex-direction:column;gap:22px;min-width:0}
.floorplans .fp-number{color:var(--gold);font:600 11px/1.5 var(--archivo);letter-spacing:.18em;text-transform:uppercase}
.floorplans .fp-detail-title{font:700 clamp(32px,4vw,64px)/1 var(--jost);letter-spacing:-.02em;overflow-wrap:anywhere;text-wrap:balance;scroll-margin-top:110px}
.floorplans .fp-meta p{font-size:16px;line-height:1.6}
.floorplans .fp-meta dl{display:grid;grid-template-columns:110px minmax(0,1fr);gap:14px 20px;margin:0;border-top:1px solid rgba(236,229,210,.25);padding-top:22px}
.floorplans .fp-meta dt{font:600 11px/1.5 var(--archivo);letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.floorplans .fp-meta dd{margin:0;font-size:14px;line-height:1.6}
.floorplans .fp-detail-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;border-bottom:1px solid var(--gold);align-self:flex-start;font:600 12px/1.6 var(--archivo);letter-spacing:.06em;text-transform:uppercase}
.floorplans .fp-close{position:absolute;right:28px;top:16px;min-height:44px;padding:10px 12px;font:600 11px/1.5 var(--archivo);letter-spacing:.12em;text-transform:uppercase;text-decoration:underline;text-underline-offset:4px}
.floorplans :is(a,button):focus-visible{outline:3px solid currentColor;outline-offset:4px}
.floorplans .fp-preview:focus-visible{outline-offset:-5px}
.floorplans .fp-note{color:var(--fp-dim);font-size:13px;line-height:1.6;max-width:90ch;margin-top:22px}
.floorplans .fp-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:1300px){.floorplans .fp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.floorplans .fp-heading,.floorplans .fp-detail-content{grid-template-columns:minmax(0,1fr)}.floorplans .fp-detail{padding:72px 24px 28px}.floorplans .fp-close{right:12px}.floorplans .fp-heading h2{max-width:18ch}}
@media(max-width:560px){.floorplans .fp-grid{grid-template-columns:minmax(0,1fr)}.floorplans .fp-gold .fp-art{aspect-ratio:4/3}.floorplans .fp-meta dl{grid-template-columns:minmax(0,1fr);gap:6px}.floorplans .fp-meta dd+dt{margin-top:12px}.floorplans .fp-gold .fp-name h3{font-size:clamp(48px,17cqw,68px)}}
@media(prefers-reduced-motion:reduce){.floorplans .fp-photo img{transition:none}}
