/* bof/ed/tokens.min.css */
@font-face { font-family:'Gascogne'; src:url('/bof/redesign/fonts/gascogne-regular.woff2') format('woff2'); font-weight:400 700; font-style:normal; font-display:swap }
@font-face { font-family:'Whyte';    src:url('/bof/redesign/fonts/whyte-book.woff2') format('woff2');       font-weight:400 500; font-style:normal; font-display:swap }
@font-face { font-family:'Whyte';    src:url('/bof/redesign/fonts/whyte-bold.woff2') format('woff2');       font-weight:600 700; font-style:normal; font-display:swap }

@font-face { font-family:'Gascogne-fb'; src:local('Georgia'); size-adjust:98.7%;  ascent-override:78.2%; descent-override:23.1%; line-gap-override:17.9% }
@font-face { font-family:'Whyte-fb';    src:local('Arial');   size-adjust:105.3%; ascent-override:37.3%; descent-override:9.0%;  line-gap-override:0% }

:root {
  
  --sand:#F5F0E4;          
  --sand-alt:#F1ECE0;      
  --card:#F2EBDC;          
  --panel:#E9E2D2;         
  --structure:#2A2620;     
  --ink-deep:#16140F;
  --intel-dark:#201B16;    

  
  --ink:#241F1A;
  --ink-hard:#1C1A16;      
  --text-2:#6E6456;
  --text-faint:#8A8172;    
  --body:#5A554A;          
  --body-strong:#2B2822;
  --ivory:#ECE7DA;         
  --ivory-2:#F2EBDC;

  
  --border:#D8CDB6;        
  --border-alt:#C9BFA8;    
  --rule-dark:#3B352A;     

  
  --mango:#F5731E;
  --mango-hover:#DC6416;
  --mango-active:#BC5411;
  --mango-disabled:#D8CDB6;
  --on-mango:#ffffff;

  
  --hover:#F5731E;

  
  --sig-growth:#2C7A4E;
  --sig-drop:#A3301A;
  --sig-neutral:#6E7A82;

  
  --f-display:'Gascogne', 'Gascogne-fb', Georgia, 'Times New Roman', serif;
  --f-body:'Whyte', 'Whyte-fb', Arial, system-ui, -apple-system, sans-serif;

  
  --wrap:1440px;
  --gutter:30px;
  
  --rail-l:333px;          
  --rail-r:333px;          
  --gap:24px;              

  
  --accent:#F3C21A;
  --accent-tint:#F6E9C0;
  --accent-text:#3E3524;
  --accent-ink:#201B14;
}

[data-section="news"]         { --accent:#F3C21A; --accent-tint:#F6E9C0; --accent-text:#3E3524; --accent-ink:#201B14; }
[data-section="reviews"]      { --accent:#EE5A38; --accent-tint:#F9DFD6; --accent-text:#B0381C; --accent-ink:#FFFFFF; }
[data-section="analysis"]     { --accent:#37B9A6; --accent-tint:#D2E9E4; --accent-text:#1E7568; --accent-ink:#08322C; }
[data-section="intelligence"] { --accent:#2A2620; --accent-tint:#E4DECF; --accent-text:#2A2620; --accent-ink:#ECE7DA; }
[data-section="living"]       { --accent:#C79CC4; --accent-tint:#ECDFEB; --accent-text:#7A4E76; --accent-ink:#3E2A3C; }
[data-section="overseas"]     { --accent:#97A63F; --accent-tint:#E7EBCB; --accent-text:#586218; --accent-ink:#26300A; }

[data-section="districts"]    { --accent:#2A2620; --accent-tint:#E4DECF; --accent-text:#2A2620; --accent-ink:#ECE7DA; }

.ed-dark [data-section="intelligence"],
[data-section="intelligence"].ed-dark { --accent:#E4DECF; }

/* bof/ed/base.min.css */
*, *::before, *::after { box-sizing:border-box }
html, body { margin:0; padding:0 }
body {
  background:var(--sand);
  color:var(--ink);
  font-family:var(--f-display);   
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
img { display:block; max-width:100%; height:auto }
a { color:inherit; text-decoration:none }
a:hover { color:var(--hover) }         
h1, h2, h3, h4, h5, h6 { margin:0; font-weight:400 }
p, ul, ol, figure { margin:0 }
ul, ol { padding:0; list-style:none }
button { font-family:var(--f-body); cursor:pointer }
input { font-family:var(--f-body); background:var(--card) }
::selection { background:#F3C21A; color:#201B14 }

:focus-visible { outline:2px solid var(--mango); outline-offset:2px }

.ed-sr {
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}

.ed-skip {
  position:absolute; left:-9999px; z-index:100;
  background:var(--structure); color:var(--ivory);
  font:700 12px/1 var(--f-body); letter-spacing:.1em; text-transform:uppercase;
  padding:14px 18px;
}
.ed-skip:focus { left:12px; top:12px; color:var(--ivory) }

.ed-wrap { max-width:var(--wrap); margin:0 auto; padding:0 var(--gutter) }

.ed-band { border-top:1px solid var(--structure); margin-top:40px; padding-top:20px }

.ed-sw {
  flex:none; display:block; width:7px; height:7px;
  background:var(--accent);
}
.ed-sw--lg { width:8px; height:8px }
.ed-sw--sm { width:5px; height:5px; margin-top:7px }

.ed-kicker {
  font:700 9.5px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  color:var(--accent-text);
}
.ed-kicker-row { display:flex; align-items:center; gap:7px }

.ed-eyebrow {
  font:700 10px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--accent-text);
}
.ed-eyebrow-row { display:flex; align-items:center; gap:8px }

.ed-pill {
  display:inline-block;
  background:var(--accent); color:var(--accent-ink);
  font:700 9.5px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  padding:5px 7px;
}

.ed-byline {
  font:400 10px/1 var(--f-body);
  letter-spacing:.08em; text-transform:uppercase;
  color:var(--text-faint);
}
.ed-byline--lg { font-size:10.5px }

.ed-shares {
  display:inline-flex; align-items:center; gap:4px;
  margin-left:8px;
  white-space:nowrap;
  color:var(--text-faint);
}

.ed-shares__i {
  width:1em; height:1em; flex:none;
  fill:currentColor;
  position:relative; top:.06em;
}

.ed-cta {
  display:inline-block;
  background:var(--mango); color:var(--on-mango);
  font:700 10px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  padding:12px 20px; border:0;
}
.ed-cta:hover { background:var(--mango-hover); color:var(--on-mango) }
.ed-cta:active { background:var(--mango-active) }

.ed-more {
  display:block;
  font:700 10px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--more-c, var(--hover));
  padding:13px 0 0;
}

.ed-chips { display:flex; gap:8px; flex-wrap:wrap; margin-top:14px }
.ed-chip {
  font:400 10px/1 var(--f-body);
  letter-spacing:.1em; text-transform:uppercase;
  padding:7px 9px;
  background:var(--accent-tint); color:var(--accent-text);
}
.ed-chip:hover { color:var(--accent-text); filter:brightness(.96) }
.ed-chip--outline { background:none; border:1px solid var(--rule-dark); color:var(--ivory) }
.ed-chip--outline:hover { color:var(--ivory); border-color:var(--text-faint) }
.ed-chip--panel { background:var(--panel); color:var(--ink); letter-spacing:.08em }
.ed-chip--panel:hover { color:var(--ink) }

.ed-chip--all { background:none; color:var(--text-2) }
.ed-chip--all:hover { color:var(--ink) }

.ed-avatar {
  flex:none; width:34px; height:34px; border-radius:50%;
  background:var(--panel); color:var(--text-2);
  font:700 11px/34px var(--f-body); text-align:center;
}
.ed-avatar--sm { width:30px; height:30px; font-size:10px; line-height:30px }

.ed-avatar--img { object-fit:cover; display:block }

.ed-flag-breaking {
  font:700 9px/1 var(--f-body);
  letter-spacing:.12em; text-transform:uppercase;
  color:var(--sig-drop); margin-right:5px;
}

.ed-flag {
  font:700 10px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--text-faint);
}

.ed-hl { font-weight:400; background:var(--accent-tint) }

.ed-up   { color:var(--sig-growth) }
.ed-down { color:var(--sig-drop) }

.ed-img { width:100%; object-fit:cover; background:var(--panel); display:block }
.ed-img--16x9  { aspect-ratio:16/9 }
.ed-img--16x10 { aspect-ratio:16/10 }
.ed-dark .ed-img { background:var(--structure) }

.ed-card { display:block }
.ed-card__label {
  display:block; margin-top:12px;
  font:700 9.5px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  color:var(--accent-text);
}
.ed-card__title {
  font:400 24px/1.17 var(--f-display);   
  letter-spacing:-.01em; color:var(--ink-hard);
  margin-top:8px; text-wrap:pretty;
}

.ed-card__dek {
  font:400 16px/1.5 var(--f-display);
  color:var(--body); margin-top:12px; text-wrap:pretty;
}
.ed-dark .ed-card__title { color:var(--ivory-2) }
.ed-dark .ed-card__dek   { color:var(--border-alt) }
.ed-dark .ed-card__label { color:var(--text-faint) }

.ed-card__dek,
.ed-row__dek,
.ed-hero__dek,
.ed-split__dek,
.ed-sponsor__dek,
.se-row__dek {
  
  display:-webkit-box !important;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.ed-row {
  display:grid; grid-template-columns:212px minmax(0,1fr); gap:18px;
  padding:18px 0; border-bottom:1px solid var(--border);
}
.ed-row__title {
  display:block;
  font:400 24px/1.17 var(--f-display);
  letter-spacing:-.012em; color:var(--ink-hard);
  margin-top:8px; text-wrap:pretty;
}
.ed-row__dek {
  font:400 16px/1.5 var(--f-display);
  color:var(--body); margin-top:12px; text-wrap:pretty;
}
.ed-row .ed-byline { margin-top:10px; display:block }

.ed-hlist__item {
  display:block;
  font:400 16px/1.25 var(--f-display); color:var(--ink-hard);
  padding:14px 0; border-bottom:1px solid var(--border);
}
.ed-hlist__item--compact { font-size:15px; line-height:1.3; padding:12px 0 }
.ed-hlist__item:last-child { border-bottom:0 }

.ed-rail-h {
  font:600 28px/1.29 var(--f-display);
  letter-spacing:-.01em; color:var(--ink);
  padding-bottom:14px; border-bottom:1px solid var(--structure);
}

.ed-band-title {
  font:600 28px/1.14 var(--f-display);
  letter-spacing:-.015em; margin-top:10px; color:var(--ink);
}
.ed-band-dek {
  font:400 16px/1.5 var(--f-display);
  color:var(--body); margin-top:12px;
}
.ed-dark .ed-band-title { color:var(--ivory-2) }
.ed-dark .ed-band-dek   { color:var(--border-alt) }

.ed-nl { background:var(--panel); padding:16px }
.ed-nl__h {
  font:700 15.5px/1.25 var(--f-body);   
  letter-spacing:-.01em; color:var(--ink-hard);
}
.ed-nl__dek { font:400 12.5px/1.45 var(--f-body); color:var(--text-2); margin-top:6px }
.ed-nl__form { display:flex; margin-top:12px }   
.ed-nl__input {
  flex:1; min-width:0;
  border:1px solid var(--border-alt); border-right:0;
  padding:9px 10px; font-size:12px; color:var(--ink);
}
.ed-nl__btn {
  flex:none; border:0;
  background:var(--mango); color:var(--on-mango);
  font:700 10px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  padding:0 14px;
}
.ed-nl__btn:hover { background:var(--mango-hover) }
.ed-nl__fine { font:400 10px/1.4 var(--f-body); color:var(--text-faint); margin-top:10px }
.ed-nl__fine a { text-decoration:underline }

@media (max-width:1100px) {
  .ed-row { grid-template-columns:180px minmax(0,1fr); gap:16px }
  .ed-row__title { font-size:21px }
}
@media (max-width:780px) {
  :root { --gutter:18px }
  .ed-row { grid-template-columns:120px minmax(0,1fr); gap:14px; padding:14px 0 }
  .ed-row__title { font-size:18px; line-height:1.2; margin-top:6px }
  .ed-row__dek { display:none !important }   
  .ed-card__title { font-size:20px }
  .ed-card__dek { font-size:15px; margin-top:10px }
  .ed-band { margin-top:30px; padding-top:16px }
  .ed-band-title { font-size:24px }
  .ed-band-dek { font-size:15px }
  .ed-rail-h { font-size:23px; line-height:1.2; padding-bottom:12px }
  .ed-hlist__item { font-size:15px; padding:12px 0 }
}

.ed-nl__pot {
	position:absolute;
	left:-9999px;
	width:1px;
	height:1px;
	opacity:0;
	pointer-events:none;
}

.ed-nl__msg {
	margin:10px 0 0;
	font:400 14px/1.45 var(--f-body), Arial, sans-serif;
	color:var(--ink-soft, #5A554A);
}
.ed-nl__msg--err { color:#B0381C; }

.ed-nl__done { margin-top:14px; }
.ed-nl__done-h {
	margin:0;
	font:700 17px/1.4 var(--f-body), Arial, sans-serif;
	color:var(--ink-hard, #1C1A16);
	
	overflow-wrap:anywhere;
}
.ed-nl__done-d {
	margin:8px 0 0;
	font:400 14px/1.5 var(--f-body), Arial, sans-serif;
	color:var(--ink-soft, #5A554A);
}
.ed-nl__done-e { font-weight:700; }

.ed-nl__btn[disabled] { opacity:.6; cursor:default; }

.ed-lock {
  display:inline-block;
  width:.85em;
  height:auto;
  margin-left:.45em;
  vertical-align:baseline;
  transform:translateY(.06em);
  flex:none;
}

/* bof/ed/chrome.min.css */
.ed-nav-toggle { position:absolute; opacity:0; pointer-events:none }

.ed-drawer {
  
  position:fixed; inset:0; z-index:120;
  background:var(--sand); color:var(--ink);
  overflow-y:auto;
  
  opacity:0;
  pointer-events:none;
  visibility:hidden;
  transition:opacity .18s ease, visibility 0s linear .18s;
}

.ed-drawer__backdrop {
  position:fixed; inset:0; z-index:118;   
  background:rgba(22,20,15,.55);
  opacity:0; pointer-events:none;          
  transition:opacity .22s ease;
}
.ed-nav-toggle:checked ~ .ed-drawer {
  opacity:1; pointer-events:auto; visibility:visible;
  transition:opacity .18s ease, visibility 0s;
}
.ed-nav-toggle:checked ~ .ed-drawer__backdrop { opacity:1; pointer-events:auto }

.ed-drawer__inner {
  max-width:var(--wrap); margin:0 auto;
  padding:0 var(--gutter) 40px;
  min-height:100%;
  display:flex; flex-direction:column;
}

.ed-drawer__bar {
  display:grid; grid-template-columns:1fr auto 1fr;
  align-items:center;
  
  gap:12px;
  padding:8px 0; border-bottom:1px solid var(--structure);
}
.ed-drawer__lead  { grid-column:1; justify-self:start; display:flex; align-items:center; gap:14px }
.ed-drawer__logo  { grid-column:2; justify-self:center }
.ed-drawer__tools { grid-column:3; justify-self:end; display:flex; align-items:center; gap:6px }
.ed-drawer__srch,
.ed-drawer__acct  { color:var(--ink); display:flex; align-items:center; justify-content:center; width:34px; height:34px }
.ed-drawer__srch:hover { color:var(--hover) }
.ed-drawer__srch svg { display:block }

.ed-dlang { display:flex; align-items:center; gap:6px; border:0; background:none }
.ed-dlang__o {
  border:0; background:none; padding:0;
  font:700 10.5px/1 var(--f-body); letter-spacing:.1em; text-transform:uppercase;
  color:var(--text-faint);
}
.ed-dlang__o.is-on { color:var(--ink) }
.ed-dlang__o.is-off { opacity:.4 }
.ed-drawer__acct:hover { color:var(--hover) }

.ed-drawer__acct {
  display:flex; align-items:center; justify-content:center;
  width:34px; height:34px;
}
.ed-drawer__acct svg { display:block }

.ed-drawer__logo img { display:block; height:22px; width:auto }
.ed-drawer__close {
  
  width:64px; height:36px; flex:none;
  display:flex; align-items:center; justify-content:flex-start;
  font:400 32px/1 var(--f-body);
  color:var(--ink); cursor:pointer;
}

.ed-drawer__close-x {
  display:flex; align-items:center; justify-content:center;
  
  width:17px;
}
.ed-drawer__close:hover { color:var(--hover) }

.ed-dfind {
  display:grid; grid-template-columns:420px minmax(0,1fr);
  align-items:center; gap:28px;
  
  padding:13px 0;
  border-bottom:1px solid var(--border-alt);
}

.ed-dfind__form {
  display:flex; align-items:center; gap:10px;
  height:44px; padding:0 13px;
  border:1px solid var(--border-alt);
  background:var(--card);
}

.ed-dfind__lbl {
  position:absolute; width:1px; height:1px;
  padding:0; margin:-1px; overflow:hidden;
  clip:rect(0 0 0 0); white-space:nowrap; border:0;
}
.ed-dfind__i { flex:none; display:flex; color:var(--text-faint) }
.ed-dfind__q {
  flex:1; min-width:0;
  background:none; border:0; outline:none;
  font:400 15px/1.2 var(--f-body);
  color:var(--ink);
  padding:0;
  
  -webkit-appearance:none; appearance:none;
}
.ed-dfind__q::-webkit-search-decoration,
.ed-dfind__q::-webkit-search-cancel-button { -webkit-appearance:none }
.ed-dfind__q::placeholder { color:var(--text-faint) }
.ed-dfind__form:focus-within { border-color:var(--ink) }

.ed-dhoods { display:flex; align-items:center; flex-wrap:wrap; gap:8px; min-width:0 }
.ed-dhoods__lbl {
  flex:none; padding-right:4px;
  font:700 9.5px/1 var(--f-body);
  letter-spacing:.15em; text-transform:uppercase;
  color:var(--text-faint);
}
.ed-dhoods__row { display:flex; align-items:center; flex-wrap:wrap; gap:8px; min-width:0 }
.ed-dhoods__c {
  font:400 12.5px/1 var(--f-body);
  border:1px solid var(--border-alt);
  background:var(--sand);
  padding:7px 10px;
  white-space:nowrap;
}

.ed-dhoods__c:hover {
  border-color:var(--hover);
  background:var(--hover);
  color:var(--sand);
}
.ed-dhoods__all {
  font:700 9.5px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  color:var(--hover);
  padding:7px 2px; white-space:nowrap;
}

.ed-dlatest { padding:16px 0 0 }
.ed-dlatest__t {
  display:inline-block;
  font:400 22px/1.2 var(--f-display);
  color:var(--ink);
}
.ed-dlatest__t:hover { color:var(--hover) }

.ed-dsec-head {
  display:flex; align-items:baseline; justify-content:space-between; gap:16px;
  padding:16px 0 0;
}
.ed-drawer__eyebrow {
  font:700 10px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--text-faint);
}
.ed-dsec-head .ed-drawer__eyebrow { color:var(--text-2) }

.ed-dsecs {
  display:grid; grid-template-columns:repeat(4, minmax(0,1fr));
  gap:20px 30px;
  margin-top:12px;
}
.ed-dpillar { min-width:0 }
.ed-dpillar__head {
  display:flex; align-items:center; gap:9px;
  padding-bottom:9px;
  border-bottom:2px solid var(--accent, var(--structure));
}
.ed-dpillar__name {
  min-width:0;
  font:400 26px/1 var(--f-display);
  letter-spacing:-.015em;
  color:var(--ink);
}
.ed-dpillar__head:hover .ed-dpillar__name { color:var(--hover) }
.ed-dpillar__head[aria-current="true"] .ed-dpillar__name { font-weight:700 }

.ed-dpillar__toggle { display:none }

.ed-dpillar__chev {
  display:none;
  width:8px; height:8px;
  border-right:1.7px solid currentColor;
  border-bottom:1.7px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
  transition:transform .16s ease;
}
.ed-dsec-toggle:checked ~ .ed-dpillar__head .ed-dpillar__chev {
  transform:translateY(2px) rotate(225deg);
}

.ed-dpillar__subs { display:flex; flex-direction:column; gap:7px; margin-top:10px }
.ed-dpillar__sub {
  font:400 15px/1.25 var(--f-body);
  color:var(--text-2);
}
.ed-dpillar__sub:hover { color:var(--hover) }
.ed-dpillar__viewall {
  font:700 9.5px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  color:var(--text-faint);
  margin-top:3px;
}
.ed-dpillar__viewall:hover { color:var(--hover) }

.ed-drail {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) 330px;
  margin:18px calc(var(--gutter) * -1) 0;
  border-top:1px solid var(--structure);
  background:var(--structure); color:var(--ivory);
}
.ed-drail > * { padding:16px 26px; min-width:0 }
.ed-drail > * + * { border-left:1px solid var(--rule-dark) }
.ed-drail > :first-child { padding-left:var(--gutter) }
.ed-drail > :last-child  { padding-right:var(--gutter) }

.ed-dfeat { display:block; color:var(--ivory) }
.ed-dfeat:hover { color:var(--ivory) }
.ed-dfeat__kicker,
.ed-dconsult__eyebrow,
.ed-drail .ed-drawer__eyebrow {
  display:block;
  font:700 9.5px/1 var(--f-body);
  letter-spacing:.15em; text-transform:uppercase;
  color:var(--text-faint);
}
.ed-dfeat__title {
  display:block; margin-top:8px;
  font:400 24px/1.1 var(--f-display);
}
.ed-dfeat__desc {
  display:block; margin-top:7px;
  font:400 13px/1.4 var(--f-body);
  color:var(--border-alt);
}
.ed-dfeat__cta,
.ed-dconsult__cta {
  display:block; margin-top:11px;
  font:700 10px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  
  color:var(--hover);
}
.ed-dfeat:hover .ed-dfeat__cta,
.ed-dconsult:hover .ed-dconsult__cta { text-decoration:underline; text-underline-offset:3px }

.ed-dnet__grid { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:20px; margin-top:11px }
.ed-dnet__row { display:block; color:var(--ivory); min-width:0 }
.ed-dnet__row:hover { color:var(--ivory) }

.ed-dnet__n { display:none }
.ed-dnet__txt { display:block; min-width:0 }
.ed-dnet__name { display:block; font:400 18px/1.1 var(--f-display) }
.ed-dnet__desc { display:block; margin-top:5px; font:400 11.5px/1.4 var(--f-body); color:var(--text-faint) }
.ed-dnet__row:hover .ed-dnet__name { text-decoration:underline; text-underline-offset:3px }

.ed-dutil--net { display:none }

.ed-dconsult { display:block; color:var(--ivory) }
.ed-dconsult:hover { color:var(--ivory) }
.ed-dconsult__title {
  display:block; margin-top:8px;
  font:400 18px/1.15 var(--f-display);
  text-wrap:pretty;
}
.ed-dconsult__desc { display:none }   

.ed-drawer__foot {
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  flex-wrap:wrap;
  padding:13px 0 0;
  border-top:1px solid var(--border-alt);
  margin-top:0;
}
.ed-drawer__util,
.ed-dquick { display:flex; flex-wrap:wrap; gap:10px 20px }
.ed-drawer__util a,
.ed-dquick a {
  font:400 10.5px/1 var(--f-body);
  letter-spacing:.1em; text-transform:uppercase;
  color:var(--text-2);
}
.ed-drawer__util a:hover,
.ed-dquick a:hover { color:var(--hover) }
.ed-dsign { display:flex; align-items:center; flex-wrap:wrap; gap:0 }
.ed-dsign__c,
.ed-dgrp {
  font:400 10.5px/1 var(--f-body);
  letter-spacing:.06em;
  color:var(--text-faint);
}
.ed-dgrp::before { content:"·"; margin:0 7px }
.ed-dgrp a { color:var(--text-2) }
.ed-dgrp a:hover { color:var(--hover) }

.ed-dtools,
.ed-dfoot-eyebrow,
.ed-dsecs-eyebrow,
.ed-dpillar__n,
.ed-dpillar__all { display:none }

.ed-nav-toggle:checked ~ .ed-head,
.ed-nav-toggle:checked ~ .ed-main { pointer-events:none }

.ed-nav-toggle:checked ~ .ed-head .ed-burger { pointer-events:auto }

.ed-burger b { transition:transform .18s ease, opacity .12s ease }
.ed-nav-toggle:checked ~ .ed-head .ed-burger b:nth-child(1) { transform:translateY(6px) rotate(45deg) }
.ed-nav-toggle:checked ~ .ed-head .ed-burger b:nth-child(2) { opacity:0 }
.ed-nav-toggle:checked ~ .ed-head .ed-burger b:nth-child(3) { transform:translateY(-6px) rotate(-45deg) }

@media (min-width:901px) {
  .ed-headpin .ed-drawer { top:var(--ed-headtop) }

  
  .ed-headpin .ed-drawer__bar { display:none }

  
  .ed-headpin .ed-nav-toggle:checked ~ .ed-head {
    position:sticky; top:0; z-index:121;
    
    pointer-events:none;
    
    background:transparent;
  }
  .ed-headpin .ed-nav-toggle:checked ~ .ed-head .ed-bar--nav { background:var(--sand) }

  
  .ed-headpin .ed-nav-toggle:checked ~ .ed-head .ed-bar--util,
  .ed-headpin .ed-nav-toggle:checked ~ .ed-head .ed-bar--nav { pointer-events:auto }
  .ed-headpin .ed-nav-toggle:checked ~ .ed-head .ed-subnav { display:none }

  
  .ed-headpin .ed-bar--mast,
  .ed-headpin .ed-promo { transition:opacity .18s ease, visibility 0s linear 0s }
  .ed-headpin .ed-nav-toggle:checked ~ .ed-head .ed-bar--mast,
  .ed-headpin .ed-nav-toggle:checked ~ .ed-head .ed-promo,
  .ed-headpin .ed-nav-toggle:checked ~ .ed-headrest .ed-bar--mast,
  .ed-headpin .ed-nav-toggle:checked ~ .ed-promo {
    opacity:0; visibility:hidden; pointer-events:none;
    transition:opacity .18s ease, visibility 0s linear .18s;
  }
}

.ed-head { background:var(--sand) }

:root { --ed-lb-stack:min(var(--launch-lb-h, 0px) * 100, var(--launch-lb-h, 0px) + 1px) }

.ed-head {
  margin-top:var(--launch-lb-h, 0px);
  border-top:min(var(--launch-lb-h, 0px) * 100, 1px) solid #000;
}

.ed-nav-toggle:not(:checked) ~ .ed-head {
  
  position:sticky; top:var(--launch-lb-h, 0px); z-index:120;   
}

.ed-headrest { background:var(--sand) }

.ed-promo { position:sticky; top:calc(var(--launch-lb-h, 0px) + var(--ed-head-h, 0px) - 1px); z-index:119 }

.ed-bar--util .ed-wrap { position:relative }
.ed-util__logo {
  position:absolute; left:var(--gutter); top:50%; transform:translateY(-50%);
  display:flex; align-items:center; line-height:0;
  font:400 17px/1 var(--f-display); color:var(--ivory);
  opacity:0; visibility:hidden; pointer-events:none;
  transition:opacity .2s ease, visibility 0s linear .2s;
}
.ed-util__logo img { height:15px; width:auto; display:block }
html.ed-mast-off .ed-util__logo {
  opacity:1; visibility:visible; pointer-events:auto;
  transition:opacity .2s ease, visibility 0s linear 0s;
}
@media (prefers-reduced-motion: reduce) { .ed-util__logo, html.ed-mast-off .ed-util__logo { transition:none } }

@media (max-width:780px) { .ed-util__logo { display:none } }

.ed-bar { width:100% }

.ed-bar--util {
  background:var(--structure);
  color:var(--ivory);
}

.ed-bar--nav  { border-bottom:1px solid var(--structure); position:relative }

.ed-util {
  display:flex; align-items:center; justify-content:center;
  padding:9px 0;
  font:700 10px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
}

.ed-util__row {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:32px;
  flex-wrap:wrap;
}

.ed-util__intel,
.ed-util__wwu { color:var(--ivory) }
.ed-util a:hover { color:#fff }

.ed-nav {
  
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center; gap:24px;
  padding:12px 0;
  font:700 12px/1 var(--f-body);
  letter-spacing:.1em; text-transform:uppercase;
}
.ed-nav__sections {
  display:flex; gap:24px; flex-wrap:wrap; align-items:center;
  justify-content:center;
  grid-column:2;
}

.ed-nav__right { grid-column:3; justify-self:end }

.ed-nav__sec {
  padding-bottom:4px;
  border-bottom:3px solid transparent;
  color:var(--ink);
}

.ed-nav__sec.is-active { border-bottom-color:var(--accent) }
.ed-nav__sec:hover { color:var(--accent-text) }

.ed-nav__sec:not([data-section]):hover { color:var(--structure) }

.ed-nav__right {
  display:flex; align-items:center; gap:16px;
  color:var(--text-2); font-weight:400;       
}
.ed-lang { letter-spacing:.06em }
.ed-lang b { font-weight:400 }
.ed-lang__sep { color:var(--border-alt); margin:0 5px }
.ed-nav__u { letter-spacing:.1em }

.ed-burger {
  display:block; cursor:pointer; padding:4px 0;
  grid-column:1; justify-self:start;
}

.ed-nav__left {
  grid-column:1; justify-self:start;
  display:flex; align-items:center; gap:18px;
}
.ed-nav__intel {
  display:inline-flex; align-items:center;
  padding:7px 12px;
  background:var(--ink); color:var(--ivory);
  border:1px solid var(--ink);
  font:700 11px/1 var(--f-body); letter-spacing:.1em; text-transform:uppercase;
  white-space:nowrap;
}
.ed-nav__intel:hover,
.ed-nav__intel:focus-visible { background:transparent; color:var(--ink) }
.ed-nav__intel.is-active { background:transparent; color:var(--ink) }

.ed-nav__brand { display:none }

.ed-nav__search-i { display:inline-flex; align-items:center }
.ed-nav__search-t {
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}
.ed-burger i { display:block; width:20px }
.ed-burger b {
  display:block; height:2px; background:var(--ink);
  border-radius:1px;
}
.ed-burger b + b { margin-top:4px }

.ed-navgroup {
  position:static;
  padding-bottom:20px;
  margin-bottom:-20px;
}

.ed-subnav {
  position:absolute;
  
  left:0;
  right:0;
  
  top:calc(100% + 1px);
  z-index:40;
  background:var(--sand);
  
  border-bottom:1px solid var(--structure);
  font:400 11px/1 var(--f-body);
  letter-spacing:.05em;
  color:var(--text-2);
  
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .12s ease, visibility 0s linear .12s;
}

.ed-subnav__inner {
  max-width:var(--wrap); margin-inline:auto;
  padding:26px var(--gutter) 30px;
}

.ed-mega {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.35fr) minmax(0,1fr);
  gap:40px;
  align-items:start;

  
  font:400 15px/1.4 var(--f-body);
  letter-spacing:0;
  text-transform:none;
}

.ed-mega__label {
  margin:0 0 12px;
  font:700 10px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  color:var(--accent-text);
}

.ed-mega__kids { list-style:none; margin:0; padding:0 }
.ed-mega__kids li + li { border-top:1px solid var(--border-alt, #E1D8C4) }
.ed-mega__kids a {
  display:block; padding:8px 0;
  font:400 13px/1.35 var(--f-body);
  color:var(--ink);
}
.ed-mega__kids a:hover { color:var(--accent-text) }

.ed-mega__all {
  display:inline-block; margin-top:14px;
  font:700 10px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  color:var(--accent-text);
}

.ed-mega__lead { display:block; color:inherit }
.ed-mega__img {
  display:block; width:100%; height:auto; aspect-ratio:16/9;
  object-fit:cover; margin-bottom:12px;
  background:var(--panel);
}
.ed-mega__lead-txt { display:block }
.ed-mega__kicker {
  display:block; margin-bottom:6px;
  font:700 10px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  color:var(--accent-text);
}
.ed-mega__lead-t {
  display:block;
  font:400 20px/1.22 var(--f-display), Georgia, serif;
  color:var(--ink-hard, var(--ink));
  text-wrap:pretty;
}
.ed-mega__lead:hover .ed-mega__lead-t { color:var(--accent-text) }
.ed-mega__meta {
  display:block; margin-top:8px;
  font:400 12px/1.4 var(--f-body);
  color:var(--ink-soft, #6E6456);
}

.ed-mega__more { list-style:none; margin:0; padding:0 }
.ed-mega__more li + li { border-top:1px solid var(--border-alt, #E1D8C4) }
.ed-mega__more a {
  display:block; padding:10px 0;
  font:400 15px/1.32 var(--f-display), Georgia, serif;
  color:var(--ink);
  text-wrap:pretty;
}
.ed-mega__more a:hover { color:var(--accent-text) }

@media (max-width:1100px) {
  .ed-mega { grid-template-columns:minmax(0,1fr) minmax(0,1.4fr); gap:32px }
  .ed-mega__col--more { display:none }
}
.ed-navgroup:hover > .ed-subnav,
.ed-navgroup:focus-within > .ed-subnav {
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:opacity .12s ease, visibility 0s;
}

.ed-subnav:hover { opacity:1; visibility:visible; pointer-events:auto }

.ed-subnav__label {
  flex:none;
  font-weight:700; letter-spacing:.13em; text-transform:uppercase;
  color:var(--accent-text);
}
.ed-subnav__links { display:flex; gap:18px; flex-wrap:wrap }

.ed-mast {
  display:flex; flex-direction:column; align-items:center; gap:9px;
  padding:20px 0 18px;
}
.ed-mast__tag {
  font:400 9.5px/1 var(--f-body);
  letter-spacing:.2em; text-transform:uppercase;
  color:var(--text-faint);
}
.ed-mast__logo { margin:0; line-height:0 }
.ed-mast__logo img { height:40px; width:auto }
.ed-mast__wordmark {
  display:inline-block; line-height:1;
  font:400 38px/1 var(--f-display);
  letter-spacing:-.02em; color:var(--ink-hard);
}

.ed-promo {
  background:#FC9046;
  
  margin-bottom:0;
}
.ed-promo__inner {
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  padding-top:13px; padding-bottom:13px;
}

.ed-promo .ed-promo__copy,
.ed-promo .ed-promo__copy b {
  font:400 17px/1.35 var(--f-body);
  color:var(--ink-hard);
}
.ed-promo__copy b { font-weight:700 }

.ed-promo__short { display:none }

.ed-promo__cta-i { display:none }

.ed-foot__social { display:flex; gap:8px; flex-wrap:wrap; margin-top:14px }
.ed-foot__social a {
  width:32px; height:32px; flex:none;
  display:flex; align-items:center; justify-content:center;
  border:1px solid var(--rule-dark);
  color:var(--border-alt);
}
.ed-foot__social a:hover { border-color:var(--ivory); color:var(--ivory) }
.ed-foot__social svg { display:block }

.ed-foot__head { font-family:var(--f-body) }

.ed-topics__all {
  margin-left:auto; flex:none;
  font:700 10px/1 var(--f-body);
  letter-spacing:.1em; text-transform:uppercase;
  color:var(--text-2);
}
.ed-topics__all:hover { color:var(--hover) }

.ed-topics__sec { color:inherit; text-decoration:none }
.ed-topics__sec:hover {
  color:inherit;
  text-decoration:underline;
  text-underline-offset:3px;
}

.ed-foot__links a,
.ed-foot__col a,
.ed-foot__group a { font-family:var(--f-body) }

.ed-nav__acct-i { display:none }
.ed-nav__acct { display:inline-flex; align-items:center }

.ed-acct { position:relative }
.ed-acct > summary { list-style:none; cursor:pointer }
.ed-acct > summary::-webkit-details-marker { display:none }
.ed-acct .ed-nav__acct-i { display:inline-flex; margin-right:7px }
.ed-acct__name { max-width:14ch; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.ed-acct__menu {
  position:absolute; right:0; top:calc(100% + 10px); z-index:40;
  min-width:190px; padding:6px 0;
  display:flex; flex-direction:column;
  background:var(--sand); border:1px solid var(--structure);
}
.ed-acct__menu a {
  display:flex; align-items:center; min-height:40px; padding:0 18px;
  color:var(--ink); white-space:nowrap; text-decoration:none;
}
.ed-acct__menu a:hover, .ed-acct__menu a:focus-visible { color:var(--hover) }

.ed-promo__cta { flex:none; font-size:10.5px; padding:11px 20px }
.ed-dark .ed-promo__cta,
.ed-promo__cta {
  background:var(--structure); color:#ffffff;
}
.ed-dark .ed-promo__cta:hover,
.ed-promo__cta:hover {
  background:#463F35; color:#ffffff;
}

.ed-foot {
  background:var(--structure); color:var(--ivory);
  margin-top:44px;
}
.ed-foot__inner {
  max-width:var(--wrap); margin:0 auto;
  padding:38px var(--gutter) 26px;
}

.ed-foot__promos {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--gap);
  margin-bottom:34px;
}
.ed-foot__promo {
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:20px;
  padding:26px 28px;
  background:rgba(255,255,255,.05);
  
}
.ed-foot__promo-eyebrow {
  margin:0;
  font:700 10px/1 var(--f-body);
  letter-spacing:.16em; text-transform:uppercase;
  color:var(--text-faint);
}
.ed-foot__promo-h {
  margin:8px 0 0;
  font:400 26px/1.15 var(--f-display), Georgia, serif;
  color:var(--ivory, #ECE7DA);
  letter-spacing:-.01em;
}
.ed-foot__promo-d {
  margin:8px 0 0; max-width:60ch;
  font:400 14px/1.5 var(--f-body);
  color:var(--text-faint);
  text-wrap:pretty;
}
.ed-foot__promo-act { display:flex; gap:10px; flex-wrap:wrap; align-items:center }
.ed-foot__promo-btn {
  display:inline-block; white-space:nowrap;
  padding:11px 18px;
  font:700 10px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  color:var(--ivory, #ECE7DA);
  border:1px solid var(--rule-dark, #3B352A);
}
.ed-foot__promo-btn.is-primary {
  background:var(--accent, #FC9046);
  border-color:var(--accent, #FC9046);
  color:#1C1A16;
}
.ed-foot__promo-btn:hover { border-color:var(--ivory, #ECE7DA) }

.ed-foot__promo--wwu .ed-foot__promo-btn.is-primary {
  background:#E4DECF;
  border-color:#E4DECF;
  color:#1C1A16;
}
.ed-foot__promo-btn.is-primary:hover { opacity:.9; color:#1C1A16 }

.ed-foot__grid {
  display:grid;
  
  grid-template-columns:minmax(0,1.5fr) repeat(5, minmax(0,1fr));
  gap:var(--gap);
  padding-bottom:30px;
  border-bottom:1px solid var(--rule-dark);
}

.ed-foot__about {
  margin:14px 0 0; max-width:44ch;
  font:400 13px/1.55 var(--f-body);
  color:var(--text-faint);
  text-wrap:pretty;
}

.ed-foot__contact { margin:18px 0 0 }
.ed-foot__contact dt {
  margin-top:12px;
  font:700 9.5px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  color:var(--text-faint);
}
.ed-foot__contact dd {
  margin:5px 0 0;
  font:400 13px/1.4 var(--f-body);
}
.ed-foot__contact dd a { color:var(--ivory, #ECE7DA) }
.ed-foot__contact dd a:hover { color:var(--accent, #FC9046) }

@media (max-width:1100px) {
  .ed-foot__promos { grid-template-columns:1fr; gap:14px }
  
  .ed-foot__grid { grid-template-columns:repeat(3, minmax(0,1fr)) }
  .ed-foot__brand { grid-column:1 / -1; border-right:0; padding-right:0 }
}

.ed-foot__brand { border-right:1px solid var(--rule-dark); padding-right:var(--gap) }
.ed-foot__logo { display:block; line-height:0 }
.ed-foot__logo img { height:26px; width:auto }
.ed-foot__wordmark {
  display:inline-block; line-height:1;
  font:400 24px/1 var(--f-display); color:var(--ivory);
}
.ed-foot__tagline {
  font:400 14px/1.45 var(--f-display);
  color:var(--text-faint); margin-top:12px;
}
.ed-foot__social {
  display:flex; gap:14px; margin-top:16px;
  font:400 10px/1 var(--f-body);
  letter-spacing:.13em; text-transform:uppercase;
  color:var(--text-faint);
}
.ed-foot__social a:hover { color:var(--ivory) }

.ed-foot__head {
  display:flex; align-items:center; gap:7px;
  margin:0 0 13px;
  font:700 10px/1 var(--f-body);
  letter-spacing:.14em; text-transform:uppercase;
  
  color:var(--ivory);
}
.ed-foot__head a:hover { color:var(--ivory) }

.ed-foot__group--stacked > .ed-foot__head { margin:22px 0 13px }

.ed-foot__links {
  display:flex; flex-direction:column; gap:9px;
  font:400 13.5px/1.3 var(--f-display);
  color:var(--border-alt);
}
.ed-foot__links a:hover { color:var(--ivory) }

.ed-foot__hoods {
  
  margin-top:34px; padding-top:26px;
}
.ed-foot__links--hoods {
  display:block;
  columns:4; column-gap:26px;
}
.ed-foot__links--hoods a {
  display:block;
  
  margin:0 0 9px;
  break-inside:avoid;
}

.ed-foot__hood-n {
  display:inline-block; width:2.4em;
  color:var(--text-faint);
  font-variant-numeric:tabular-nums;
  
  vertical-align:top; line-height:inherit;
}
.ed-foot__links--hoods a:hover .ed-foot__hood-n { color:inherit }

.ed-foot__legal {
  display:flex; justify-content:space-between; gap:24px;
  padding-top:18px;
  font:400 10.5px/1.4 var(--f-body);
  letter-spacing:.06em;
  color:var(--text-faint);
}
.ed-foot__legal-links { display:flex; gap:18px; flex-wrap:wrap }
.ed-foot__legal-links a:hover { color:var(--ivory) }

.ed-foot__grp { color:var(--text-faint) }
.ed-foot__grp::before { content:"·"; margin:0 7px; color:var(--text-faint) }
.ed-foot__grp a { color:var(--border-alt) }
.ed-foot__grp a:hover { color:var(--ivory) }

@media (max-width:1100px) {
  .ed-util__row { gap:20px }
  .ed-nav__sections { gap:18px }
  
  .ed-dsecs { grid-template-columns:repeat(3, minmax(0,1fr)) }
  
  .ed-dfind { grid-template-columns:minmax(0,1fr); gap:14px }
  .ed-drail { grid-template-columns:minmax(0,1fr) minmax(0,1fr) }
  .ed-drail > :nth-child(3) { grid-column:1 / -1; border-left:0; border-top:1px solid var(--rule-dark); padding-left:var(--gutter) }
  .ed-foot__grid { grid-template-columns:220px repeat(2, minmax(0,1fr)); row-gap:30px }
  .ed-foot__links--hoods { columns:3 }
  .ed-foot__brand { grid-column:1 / -1; border-right:0; padding-right:0 }
}

@media (max-width:900px) {
  

  
  

  
  
  .ed-drawer__bar {
    align-items:center;
    margin:0 calc(var(--gutter) * -1);
    padding-left:var(--gutter); padding-right:var(--gutter);
  }

  
  .ed-dfind {
    display:block;
    margin:0 calc(var(--gutter) * -1);
    padding:14px var(--gutter) 16px;
    background:var(--panel);
    
    border-bottom:1px solid var(--border-alt);
  }
  
  .ed-dfind__form { height:46px; background:var(--sand) }
  .ed-dfind__q {
    
    font-size:16px;
  }
  .ed-dhoods { display:block; margin-top:15px }
  .ed-dhoods__lbl { display:block; padding:0 }
  .ed-dhoods__row {
    
    flex-wrap:nowrap; overflow-x:auto; margin-top:10px; padding-bottom:2px;
    scrollbar-width:none; -webkit-overflow-scrolling:touch;
  }
  .ed-dhoods__row::-webkit-scrollbar { display:none }
  .ed-dhoods__c { flex:none; height:38px; display:flex; align-items:center; font-size:14px; padding:0 13px }
  .ed-dhoods__all { flex:none; display:flex; align-items:center; height:38px }

  
  .ed-dlang {
    flex:none; display:flex;
    border:1px solid var(--border-alt);
  }
  .ed-dlang__o {
    display:flex; align-items:center; justify-content:center;
    min-width:46px; padding:0 10px;
    font:700 11px/1 var(--f-body);
    letter-spacing:.08em;
    color:var(--body);
  }
  .ed-dlang__o + .ed-dlang__o { border-left:1px solid var(--border-alt) }
  
  .ed-dlang__o.is-on { background:var(--ink-hard); color:var(--ivory) }
  .ed-dlang__o.is-off { color:var(--text-faint) }
  a.ed-dlang__o:hover { color:var(--hover) }
  a.ed-dlang__o.is-on:hover { color:var(--ivory) }

  
  .ed-dsec-head { padding:24px 0 10px; border-bottom:2px solid var(--ink) }
  .ed-dsec-head .ed-drawer__eyebrow { color:var(--text-2) }
  .ed-dsecs { grid-template-columns:minmax(0,1fr); gap:0; margin-top:0; padding-top:0 }
  
  .ed-dpillar { margin-bottom:0; border-bottom:0 }
  .ed-dpillar > summary,
  .ed-dpillar--flat .ed-dpillar__head {
    padding:16px 0; border-bottom:0;
    align-items:center;
  }
  
  .ed-dpillar__chev { display:block }
  .ed-dpillar__name { font-size:26px }
  .ed-dpillar__n { display:none }          
  .ed-dpillar__subs { margin-top:0; padding-bottom:6px }
  .ed-dpillar__sub {
    padding:11px 0;                          
    border-top:1px solid var(--border);
    font-size:15px;
  }
  .ed-dpillar__more { padding:12px 0 4px; border-top:1px solid var(--border) }

  
  .ed-dnet__row:last-child { border-bottom:0 }
  
  .ed-dconsult { margin-top:24px }
  .ed-drawer__foot { border-top:1px solid var(--border) }

  

  
  .ed-dpillar { position:relative }
  .ed-dpillar__subs { display:none }
  .ed-dsec-toggle:checked ~ .ed-dpillar__subs { display:flex; flex-direction:column }
  
  .ed-dpillar__toggle {
    display:flex; align-items:center; justify-content:flex-end;
    position:absolute; inset:0; cursor:pointer;
    padding-right:2px; color:var(--text-faint);
  }
  .ed-dpillar__chev { display:block }
  
  .ed-dpillar__all { display:none }
  
  .ed-dpillar__viewall {
    display:block; padding:11px 0;
    border-top:1px solid var(--border);
    font:700 11px/1 var(--f-body);
    letter-spacing:.12em; text-transform:uppercase;
    color:var(--hover);
  }
  
  
  .ed-dpillar__head { display:flex; align-items:center; gap:12px; padding:12px 0; border-bottom:0; position:relative; min-height:56px }
  .ed-dpillar__name { flex:1; min-width:0 }

  
  .ed-drail {
    grid-template-columns:minmax(0,1fr);
    margin:0 calc(var(--gutter) * -1);
    border-top:0;
  }
  .ed-drail > * { padding:20px var(--gutter) }
  
  .ed-drail > * + * { border-left:0; border-top:1px solid var(--rule-dark) }
  .ed-dfeat__title { font-size:30px; line-height:1.06; letter-spacing:-.018em }
  .ed-dfeat__desc { font-family:var(--f-display); font-size:14px; line-height:1.45 }
  .ed-dnet__grid { grid-template-columns:minmax(0,1fr); gap:0; margin-top:0 }
  .ed-dnet__row { display:flex; align-items:baseline; gap:12px; padding:14px 0; border-bottom:1px solid var(--rule-dark) }
  .ed-dnet__row:last-child { border-bottom:0 }
  
  .ed-dnet__n { display:block; flex:none; font:700 10px/1.6 var(--f-body); color:var(--text-faint) }
  .ed-dnet__name { font-size:21px; letter-spacing:-.012em }
  .ed-dnet__desc { font-size:13.5px }
  .ed-dconsult__title { font-size:22px }

  
  .ed .ed-drawer__bar { grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:10px }
  .ed .ed-drawer__lead,
  .ed .ed-drawer__tools { min-width:0 }
  .ed .ed-drawer__lead { gap:10px }
  .ed .ed-drawer__close { width:34px }
  
  .ed .ed-drawer__lead .ed-dlang { gap:8px; border:0 }
  .ed .ed-drawer__lead .ed-dlang__o {
    min-width:0; padding:0; border:0; background:none;
    font:600 11px/1 var(--f-body); letter-spacing:.04em;
    color:var(--text-faint);
  }
  .ed .ed-drawer__lead .ed-dlang__o + .ed-dlang__o { border-left:0 }
  .ed .ed-drawer__lead .ed-dlang__o.is-on { background:none; color:var(--ink) }
  .ed .ed-drawer__lead .ed-dlang__o.is-off { color:var(--text-faint); opacity:.45 }

  

  
  .ed-drawer__foot { display:block; margin-top:22px; padding-top:0; border-top:0 }
  .ed-drawer__util,
  .ed-dquick {
    display:grid; grid-template-columns:1fr 1fr; gap:0 20px;
  }
  .ed-drawer__util a,
  .ed-dquick a {
    padding:13px 0; border-bottom:1px solid var(--border);
    letter-spacing:.02em; text-transform:none;
    font-size:14px;
  }
  
  .ed-dsign { display:block; padding-top:18px }
  .ed-dgrp { display:block; margin-top:5px }
  .ed-dgrp::before { content:none }
  .ed-dsign__c { font:400 11px/1 var(--f-body); color:var(--text-faint) }

  
  .ed-nav {
    flex-wrap:wrap;
    justify-content:space-between;
    row-gap:0;
    padding-bottom:0;
    border-bottom:0;    
  }
  
  .ed-util__row > a:not(.ed-util__wwu):not(.ed-util__intel) { display:none }
  .ed-util__row { gap:0; justify-content:space-between; width:100% }

  
  .ed-nav__sections {
    order:3;
    
    flex:0 0 100%;
    width:calc(100% + (var(--gutter) * 2));
    min-width:0;
    flex-wrap:nowrap;
    gap:0;
    overflow-x:auto;
    overflow-y:hidden;              
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;  
    scrollbar-width:none;
    margin-inline:calc(var(--gutter) * -1);
    width:calc(100% + var(--gutter) * 2); max-width:none;
    padding-inline:var(--gutter);
    border-bottom:1px solid var(--structure);
    scroll-snap-type:x proximity;
  }
  .ed-nav__sections::-webkit-scrollbar { display:none }
  .ed-nav__sec {
    flex:none;                      
    scroll-snap-align:start;
    white-space:nowrap;
    padding:14px 0 11px;            
    margin-right:22px;
    border-bottom-width:3px;
  }
  
  .ed-nav__sec:last-child { margin-right:var(--gutter) }

  
  .ed-subnav { display:none }
}

@media (max-width:780px) {
  .ed-util { display:none }
  .ed-mast { display:none }

  .ed-nav { padding:10px 0 0; gap:12px }
  .ed-nav__brand { display:block; flex:1; text-align:center; line-height:0 }
  
  .ed-nav__brand a { display:inline-block; padding:4px 6px }
  
  .ed-nav__brand img { height:22px; width:auto; display:block }
  .ed-nav__brand .ed-mast__wordmark { font-size:27px }

  
  .ed-burger { flex:0 0 auto; min-width:64px; padding:10px 0 }
  
  .ed-burger i { width:17px }
  .ed-burger b { height:2px }
  .ed-burger b + b { margin-top:4px }

  .ed-nav__right {
    flex:0 0 auto; min-width:64px;
    justify-content:flex-end; gap:14px;
  }
  
  .ed-lang { display:inline-flex; align-items:center; letter-spacing:.02em; font-size:12px }
  .ed-lang__sep { margin:0 3px }
  
  .ed-nav__search-i { display:inline-flex; align-items:center }
  .ed-nav__search-t {
    position:absolute; width:1px; height:1px; padding:0; margin:-1px;
    overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
  }
  .ed-nav__u {
    display:flex; align-items:center;
    min-height:44px;                
    font-size:11px;
  }

  
  .ed-promo {
    flex-direction:row; align-items:center; gap:14px;
    padding:13px var(--gutter);
    margin-bottom:0;
  }
  
  .ed-promo__cta { padding:13px 16px; white-space:nowrap }

  .ed-foot__grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr) }
  .ed-foot__legal { flex-direction:column; gap:12px }
}

@media (max-width:520px) {
  
  .ed-dsecs { columns:1 }
  .ed-drawer__inner { padding-bottom:28px }
  .ed-drawer__foot { flex-direction:column; gap:14px }

  .ed-foot__grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:22px }
  
  .ed-foot__grp { display:block; margin-top:5px }
  .ed-foot__grp::before { content:none }
  .ed-foot__links--hoods { columns:1 }
  
  .ed-foot__links--hoods a { margin-bottom:3px }
  .ed-foot__brand { grid-column:1 / -1 }
  .ed-foot__inner { padding-top:30px }
}

@media (prefers-reduced-motion:reduce) {
  .ed-drawer, .ed-drawer__backdrop { transition:none }
  
  .ed-burger b { transition:none }
  .ed-headpin .ed-bar--mast,
  .ed-headpin .ed-promo,
  .ed-headpin .ed-nav-toggle:checked ~ .ed-head .ed-bar--mast,
  .ed-headpin .ed-nav-toggle:checked ~ .ed-head .ed-promo,
  .ed-headpin .ed-nav-toggle:checked ~ .ed-headrest .ed-bar--mast,
  .ed-headpin .ed-nav-toggle:checked ~ .ed-promo { transition:none }
}

.ed-dgrid {
  list-style:none; margin:14px 0 0; padding:0;
  display:grid; grid-template-columns:repeat(4, minmax(0,1fr));
  column-gap:30px; row-gap:0;
}
.ed-dgrid__i a {
  display:grid;
  
  grid-template-columns:26px minmax(0,1fr) auto;
  align-items:baseline; gap:0 7px;
  padding:6px 0; text-decoration:none;
  border-bottom:1px solid var(--rule, rgba(0,0,0,.08));
}

.ed-dgrid__i:nth-last-child(-n+4) a { border-bottom:0 }

.ed-dgrid__n {
  font:700 12px/1.4 var(--f-body);
  color:var(--accent-text, #c8482a);
  font-variant-numeric:tabular-nums;
  letter-spacing:.04em;
  text-transform:none;
}
.ed-dgrid__p {
  
  text-transform:none;
  font:400 14.5px/1.4 var(--f-body);
  letter-spacing:0;
  color:var(--ink, #1a1a1a);
  
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.ed-dgrid__c {
  font:400 12px/1.4 var(--f-body);
  color:var(--muted, #767676);
  font-variant-numeric:tabular-nums;
  letter-spacing:0; text-transform:none;
  padding-left:8px;
}
.ed-dgrid__i a:hover .ed-dgrid__p,
.ed-dgrid__i a:focus-visible .ed-dgrid__p { color:var(--accent-text, #c8482a) }

@media (max-width:1100px) {
  .ed-dgrid { grid-template-columns:repeat(3, minmax(0,1fr)); column-gap:32px }
  .ed-dgrid__i:nth-last-child(-n+4) a { border-bottom:1px solid var(--rule, rgba(0,0,0,.08)) }
  .ed-dgrid__i:nth-last-child(-n+3) a { border-bottom:0 }
}

.ed-foot { --foot-hover:#FC9046 }
.ed-foot__contact dd a:hover,
.ed-foot__links a:hover,
.ed-foot__legal-links a:hover,
.ed-foot__head a:hover,
.ed-foot__grp a:hover,
.ed-foot__social a:hover { color:var(--foot-hover) }
.ed-foot__social a:hover { border-color:var(--foot-hover) }

/* bof/directory.css */
/* Condo directory on the BoF design. Tokens, base components and the chrome come
   from the editorial theme (bof/ed/*, synced by scripts/sync-bof-assets.sh);
   this file only adds what the directory pages need. */
.dir {
  --dir-teal:#1E7568;       /* directory links and kickers, as in the mocks */
  --dir-teal-line:#9FCFC5;
  --dir-sw:#37B9A6;
  --dir-rule:#E4DECF;
  --dir-paper:#FFFFFF;
  background:var(--sand);
  color:var(--ink);
}
.dir-main { padding-bottom:64px }
.dir-teal { color:var(--dir-teal) }
:where(.dir) a { color:inherit; text-decoration:none }
.dir .ed-cta { display:inline-flex; align-items:center; justify-content:center; font-size:11px; padding:15px 22px; color:var(--on-mango) }
.dir a:focus-visible, .dir button:focus-visible, .dir input:focus-visible, .dir select:focus-visible { outline:2px solid var(--mango); outline-offset:2px }
/* the directory link marked as the current section: white on the dark utility bar, ink in the light drawer */
/* an offset underline rather than a border: room below the words without nudging the link out of line */
.ed-util a.is-here, .ed-drawer a.is-here { text-decoration:underline; text-decoration-color:var(--dir-sw); text-decoration-thickness:2px; text-underline-offset:7px }
.ed-util a.is-here { color:#fff }
.ed-drawer a.is-here { color:var(--ink) }

/* type */
.dir-h1 { font:400 clamp(38px,5.2vw,58px)/1.02 var(--f-display); letter-spacing:-.022em; margin:0; text-wrap:balance }
.dir-h1--xl { font-size:clamp(40px,5.8vw,62px); margin-top:14px }
.dir-h2 { font:400 clamp(28px,3.2vw,40px)/1.04 var(--f-display); letter-spacing:-.02em; margin:0; text-wrap:balance }
.dir-h2--sm { font-size:clamp(26px,2.6vw,34px) }
.dir-h2--gap { margin:18px 0 26px }
.dir-dek { font:400 17px/1.55 var(--f-body); color:var(--body-strong); margin:16px 0 0; max-width:720px; text-wrap:pretty }
.dir-history { margin:14px 0 0; padding:10px 14px; max-width:720px; background:var(--card); border-left:2px solid var(--structure); font:400 14.5px/1.5 var(--f-body); color:var(--body-strong) }
.dir-inline, .dir-history a { color:var(--dir-teal); border-bottom:1px solid var(--dir-teal-line) }
.dir-fine, .dir-foot p { font:400 12.5px/1.55 var(--f-body); color:var(--text-2); max-width:760px }
.dir-fine a, .dir-foot p a { border-bottom:1px solid var(--border) }
.dir-more { display:inline-block; font:700 10.5px/1.2 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--dir-teal) !important; border-bottom:1px solid var(--dir-teal-line); padding-bottom:4px }
.dir-more:hover { border-bottom-color:var(--dir-teal) }

/* breadcrumb */
/* full-width bar straight under the header; the text stays on the page column */
.dir-crumbbar { border-bottom:1px solid var(--border) }
.dir-crumbs { display:flex; flex-wrap:wrap; align-items:center; gap:8px 10px; padding:11px 0; font:700 10px/1.3 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--text-2) }
.dir-crumbs a:hover { color:var(--ink) }
.dir-crumbs__sep { color:var(--border-alt) }
.dir-crumbs [aria-current] { color:var(--dir-teal) }

/* buttons */
.dir-btn { display:inline-flex; align-items:center; justify-content:center; gap:12px; border:1px solid var(--structure); background:transparent; font:700 11px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase; padding:15px 22px; cursor:pointer; transition:background .15s,color .15s }
.dir-btn:hover { background:var(--structure); color:var(--sand) }
.dir-btn--dark { background:var(--structure); color:var(--sand) !important }
.dir-btn--dark:hover { background:var(--dir-teal); border-color:var(--dir-teal) }
.dir-actions { display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin-top:22px }
.dir-center { display:flex; justify-content:center; margin-top:34px }

/* hero + search */
.dir-hero { padding:40px 0 26px; max-width:900px }
.dir-hero--tight { padding:34px 0 24px }
.dir-find { border-top:1px solid var(--structure); border-bottom:1px solid var(--structure); padding:18px 0 16px }
.dir-find__row { display:grid; grid-template-columns:minmax(0,2.2fr) repeat(3,minmax(0,1fr)) auto; gap:10px }
.dir-find__row--two { grid-template-columns:minmax(0,1fr) auto }
.dir-input, .dir-select { height:50px; width:100%; min-width:0; border:1px solid var(--border-alt); background:var(--dir-paper); color:var(--ink); font:400 15px/1 var(--f-body); padding:0 14px; border-radius:0; -webkit-appearance:none; appearance:none }
.dir-select { font-size:13.5px; padding-right:34px; background-image:linear-gradient(45deg,transparent 50%,var(--text-2) 50%),linear-gradient(135deg,var(--text-2) 50%,transparent 50%); background-position:calc(100% - 18px) 22px,calc(100% - 13px) 22px; background-size:5px 5px; background-repeat:no-repeat }
.dir-input::placeholder { color:var(--text-faint) }
.dir-input--main { font-size:16px }
.dir .dir-find__go { height:50px; padding:0 30px }
.dir-find__popular { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:14px }
.dir-find__lbl, .dir-jump__lbl { font:700 9.5px/1 var(--f-body); letter-spacing:.16em; text-transform:uppercase; color:var(--text-2); margin-right:4px }
.dir-find__popular a { font:400 13px/1 var(--f-body); border:1px solid var(--border); background:var(--card); padding:9px 12px }
.dir-find__popular a:hover { background:var(--structure); color:var(--sand); border-color:var(--structure) }

/* numbered bands */
.dir-band, .dir-sec { padding-top:52px }
.dir-band__eyebrow { display:flex; align-items:center; gap:10px; font:700 9.5px/1 var(--f-body); letter-spacing:.16em; text-transform:uppercase; color:var(--text-2) }
.dir-band__eyebrow i { flex:1; height:1px; background:var(--border) }
.dir-band__head { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin:18px 0 24px }

/* launch cards */
.dir-lgrid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:26px }
.dir-lcard { display:flex; flex-direction:column; gap:10px }
.dir-lcard__img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; background:var(--panel) }
.dir-lcard:hover .dir-lcard__t { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px }
.dir-lcard__k { margin-top:4px }
.dir-lcard__plate { display:flex; flex-direction:column; justify-content:flex-end; gap:6px; padding:18px; background:#1F2A26; color:#F4EFE6; aspect-ratio:4/3 }
.dir-lcard__plate-d { font:600 11px/1 var(--f-body); letter-spacing:.14em; text-transform:uppercase; color:#F3C21A }
.dir-lcard__plate-n { font:400 56px/1 var(--f-display); letter-spacing:-.02em; color:#F3C21A }
.dir-lcard__plate-l { font:400 12px/1.2 var(--f-body); color:rgba(244,239,230,.72) }
.dir-lcard__t { font:400 24px/1.1 var(--f-display); letter-spacing:-.012em }
.dir-lcard__facts { margin:2px 0 0; display:flex; flex-direction:column }
.dir-lcard__facts div, .dir-glance dl div, .dir-rows div { display:flex; justify-content:space-between; gap:12px; padding:8px 0; border-bottom:1px solid var(--dir-rule); font:400 12.5px/1.25 var(--f-body) }
.dir-lcard__facts div:last-child, .dir-glance dl div:last-child, .dir-rows div:last-child { border-bottom:0 }
.dir-lcard__facts dt, .dir-glance dt, .dir-rows dt { color:var(--text-2) }
.dir-lcard__facts dd, .dir-glance dd, .dir-rows dd { margin:0; text-align:right; font-variant-numeric:tabular-nums }
.dir-noimg { display:flex; align-items:flex-end; padding:14px; background:repeating-linear-gradient(135deg,var(--card) 0 10px,var(--panel) 10px 11px); color:var(--text-faint); font:700 9px/1.1 var(--f-body); letter-spacing:.14em; text-transform:uppercase }
.dir-noimg--sm { width:56px; height:42px; padding:0; align-items:center; justify-content:center; font:700 7.5px/1.1 var(--f-body); letter-spacing:.08em; text-transform:uppercase; text-align:center }

/* districts */
.dir-segs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px 44px }
.dir-seg--wide { grid-column:1/-1 }
.dir-seg__h { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin:0 0 6px; padding-bottom:10px; border-bottom:1px solid var(--structure); font:700 10.5px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase }
.dir-seg__n { color:var(--text-faint); font-weight:400; letter-spacing:.06em }
.dir-seg__list { display:grid; grid-template-columns:1fr; column-gap:44px }
.dir-seg--wide .dir-seg__list { grid-template-columns:repeat(2,minmax(0,1fr)) }
.dir-drow { display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:11px 0; border-bottom:1px solid var(--dir-rule); font:400 14.5px/1.3 var(--f-body) }
.dir-drow b { display:inline-block; min-width:44px; font-weight:700; font-size:11px; letter-spacing:.08em; color:var(--text-2) }
.dir-drow:hover { background:var(--card) }
.dir-drow__n { color:var(--text-faint); font-size:12.5px; font-variant-numeric:tabular-nums }

/* closing pair */
.dir-closing { display:grid; grid-template-columns:1fr 1fr; margin-top:64px; border:1px solid var(--structure) }
.dir-closing__col { padding:34px 36px 36px; background:var(--dir-paper) }
.dir-closing__col--tint { background:var(--card); border-left:1px solid var(--structure) }
.dir-closing__h { font:400 32px/1.06 var(--f-display); letter-spacing:-.016em; margin:10px 0 0 }
.dir-closing__d { font:400 15px/1.55 var(--f-body); color:var(--body-strong); margin:12px 0 22px; max-width:460px }
.dir-closing__ctas { display:flex; flex-wrap:wrap; gap:12px }

/* advisory card + side card */
.dir-consult { margin-top:52px; padding:28px 30px; background:var(--card); border-top:2px solid var(--structure) }
.dir-results__side .dir-consult { margin-top:0 }
.dir-consult__h { font:400 26px/1.1 var(--f-display); letter-spacing:-.012em; margin:10px 0 0 }
.dir-consult__d { font:400 14px/1.5 var(--f-body); color:var(--body-strong); margin:8px 0 16px }
.dir-sidecard { border:1px solid var(--structure); background:var(--dir-paper) }
.dir-sidecard > img { display:block; width:100%; height:140px; object-fit:cover; background:var(--panel) }
.dir-sidecard__b { padding:18px 20px 20px }
.dir-sidecard__h { font:400 24px/1.12 var(--f-display); letter-spacing:-.012em; margin:10px 0 0; text-wrap:pretty }
.dir-sidecard__d { font:400 13.5px/1.5 var(--f-body); color:var(--body-strong); margin:8px 0 0 }
.dir-sidecard .dir-more { margin-top:14px }

/* search */
.dir-panel { background:var(--card); border-top:1px solid var(--structure); padding:22px 24px 8px }
.dir-browse { padding:18px 0 14px }
.dir-browse + .dir-browse { border-top:1px solid var(--border) }
.dir-browse__h { display:flex; align-items:center; gap:9px; margin:0 0 12px; font:700 9.5px/1 var(--f-body); letter-spacing:.16em; text-transform:uppercase; color:var(--text-2) }
.dir-browse__h i { flex:1; height:1px; background:var(--border) }
.dir-keys { display:flex; flex-wrap:wrap; gap:6px }
.dir-key { min-width:36px; height:36px; display:inline-flex; align-items:center; justify-content:center; padding:0 8px; border:1px solid var(--border); background:var(--dir-paper); font:700 12px/1 var(--f-body); letter-spacing:.04em; font-variant-numeric:tabular-nums }
.dir-key--d { min-width:48px }
.dir-key--w { padding:0 14px; font-weight:400; font-size:13px; letter-spacing:0 }
.dir-key:hover { border-color:var(--structure) }
.dir-key.is-on { background:var(--structure); border-color:var(--structure); color:var(--sand) }
.dir-results { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:44px; align-items:start; margin-top:40px }
.dir-results__side { display:flex; flex-direction:column; gap:22px }
.dir-results__head { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; padding-bottom:14px; border-bottom:1px solid var(--structure) }
.dir-results__count { font:700 9.5px/1 var(--f-body); letter-spacing:.16em; text-transform:uppercase; color:var(--text-2); margin:0 }
.dir-results__h { font:400 32px/1.05 var(--f-display); letter-spacing:-.016em; margin:10px 0 0 }
.dir-clear { display:inline-block; margin-top:8px; font:400 12.5px/1 var(--f-body); color:var(--text-2); border-bottom:1px solid var(--border) }
.dir-sort { display:flex; align-items:center; gap:4px; font:700 10px/1 var(--f-body); letter-spacing:.12em; text-transform:uppercase; color:var(--text-2); flex:none }
.dir-sort span { margin-right:6px }
.dir-sort a { padding:8px 10px; border:1px solid transparent }
.dir-sort a.is-on { border-color:var(--structure); color:var(--ink) }
.dir-table { display:flex; flex-direction:column }
.dir-tr { display:grid; grid-template-columns:34px 56px minmax(0,2.4fr) minmax(0,.7fr) minmax(0,1.2fr) minmax(0,.9fr); gap:16px; align-items:center; padding:12px 0; border-bottom:1px solid var(--dir-rule); font:400 13.5px/1.3 var(--f-body); color:var(--body-strong) }
a.dir-tr:hover { background:var(--card) }
.dir-tr--h { padding:12px 0 10px; font:700 9px/1 var(--f-body); letter-spacing:.14em; text-transform:uppercase; color:var(--text-faint); border-bottom-color:var(--border) }
.dir-td--n { font:400 11.5px/1 var(--f-body); color:var(--text-faint); font-variant-numeric:tabular-nums }
.dir-td--img img { display:block; width:56px; height:42px; object-fit:cover; background:var(--panel) }
.dir-td--t { font:400 19px/1.15 var(--f-display); letter-spacing:-.008em; color:var(--ink) }
.dir-td--r { text-align:right; font-variant-numeric:tabular-nums }
.dir-td--faint { color:var(--text-faint) }
.dir-tag { display:inline-block; vertical-align:middle; margin-left:10px; padding:4px 6px; background:#F6E9C0; color:#3E3524; font:700 8.5px/1 var(--f-body); letter-spacing:.12em; text-transform:uppercase; font-style:normal }
.dir-pager { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:26px; font:700 10.5px/1 var(--f-body); letter-spacing:.12em; text-transform:uppercase }
.dir-pager > a, .dir-pager > span { padding:12px 14px; border:1px solid var(--structure) }
.dir-pager > .is-off { border-color:var(--border); color:var(--text-faint) }
.dir-pager__nums { display:flex; flex-wrap:wrap; justify-content:center; gap:4px; border:0 !important; padding:0 !important }
.dir-pager__nums a, .dir-pager__nums span { min-width:36px; height:36px; display:inline-flex; align-items:center; justify-content:center; padding:0 6px; font-variant-numeric:tabular-nums; letter-spacing:.02em }
.dir-pager__nums a:hover { background:var(--card) }
.dir-pager__nums .is-on { background:var(--structure); color:var(--sand) }
.dir-pager__gap { color:var(--text-faint) }
.dir-empty { padding:30px 0; font:400 16px/1.55 var(--f-body); color:var(--body-strong); max-width:600px }
.dir-shortcuts { display:flex; flex-direction:column; border-top:1px solid var(--structure); padding-top:14px }
.dir-shortcuts a { padding:11px 0; border-bottom:1px solid var(--dir-rule); font:400 14px/1.3 var(--f-body) }
.dir-shortcuts a::after { content:" \2192"; color:var(--dir-teal) }
.dir-shortcuts a:hover { color:var(--dir-teal) }

/* condo page */
.dir-top { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:44px; align-items:start; padding-top:34px }
.dir-top__side { display:flex; flex-direction:column; gap:22px }
.dir-hero-img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; background:var(--panel); margin:26px 0 0 }
.dir-hero-img--plan { aspect-ratio:auto; max-height:640px; padding:24px; background:var(--card); border:1px solid var(--border); display:flex; justify-content:center }
.dir-hero-img--plan img { max-width:100%; max-height:592px; object-fit:contain; mix-blend-mode:multiply }
.dir-glance { background:var(--card); padding:20px }
.dir-glance__h { font:700 9.5px/1 var(--f-body); letter-spacing:.16em; text-transform:uppercase; color:var(--text-faint); margin:0 0 8px }
.dir-glance dl { margin:0 }
.dir-review { display:grid; grid-template-columns:minmax(0,1fr) 420px; margin-top:48px; border:1px solid var(--structure); background:var(--dir-paper) }
.dir-review:not(:has(> img)) { grid-template-columns:1fr }
.dir-review__b { padding:34px 36px 36px }
.dir-review__b .dir-h2 { margin-top:14px }
.dir-review__b p { font:400 16px/1.6 var(--f-body); color:var(--body-strong); margin:14px 0 20px; max-width:460px }
.dir-review > img { width:100%; height:100%; min-height:260px; object-fit:cover; background:var(--panel) }
.dir-facts { display:grid; grid-template-columns:1fr 1fr; column-gap:56px; margin:24px 0 0; border-top:1px solid var(--structure); padding-top:6px }
.dir-facts div { display:grid; grid-template-columns:130px minmax(0,1fr); gap:16px; padding:14px 0; border-bottom:1px solid var(--dir-rule) }
.dir-facts dt { font:700 9.5px/1.4 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--text-faint) }
.dir-facts dd { margin:0; font:400 15px/1.35 var(--f-body) }
.dir-sec__head { display:grid; grid-template-columns:minmax(0,1fr) 420px; gap:56px; align-items:end; margin:20px 0 26px }
.dir-sec__head p { font:400 14.5px/1.55 var(--f-body); color:var(--body-strong); margin:0 }
.dir-sec__head--row { display:flex; justify-content:space-between; align-items:flex-end; gap:40px }
.dir-bedgrid { display:grid; grid-template-columns:repeat(var(--n),minmax(0,1fr)); border-top:1px solid var(--structure) }
.dir-bed { display:flex; flex-direction:column; padding:22px; border-right:1px solid var(--border) }
.dir-bed:first-child { padding-left:0 }
.dir-bed:last-child { border-right:0 }
.dir-bed:hover { background:var(--card) }
.dir-bed__k { display:flex; align-items:center; gap:8px; font:700 9.5px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase; color:var(--text-2) }
.dir-bed__t { font:400 26px/1.08 var(--f-display); letter-spacing:-.014em; margin-top:12px }
.dir-bed__d { font:400 12.5px/1.5 var(--f-body); color:var(--body-strong); margin-top:10px; font-variant-numeric:tabular-nums }
.dir-featured { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:30px; align-items:start; margin-top:32px }
.dir-featured__img { display:flex; justify-content:center; border:1px solid var(--border); background:var(--card); padding:24px }
.dir-featured__img img { max-width:100%; max-height:560px; object-fit:contain; mix-blend-mode:multiply }
.dir-featured__t { font:400 26px/1.1 var(--f-display); letter-spacing:-.012em; margin:10px 0 0 }
.dir-rows { margin:14px 0 18px }
.dir-siteplan { display:block; width:100%; border:1px solid var(--border); background:var(--dir-paper) }
.dir-brochure { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:40px; align-items:center; margin-top:52px; padding:30px 32px; background:var(--card); border-top:2px solid var(--structure) }
.dir-brochure__t { font:400 30px/1.08 var(--f-display); letter-spacing:-.018em; margin:0 }
.dir-brochure__d { font:400 14.5px/1.5 var(--f-body); color:var(--body-strong); margin:10px 0 0; max-width:560px }
.dir-near { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:22px; border-top:1px solid var(--structure) }
.dir-near a { display:flex; flex-direction:column; gap:8px; padding:20px 24px; border-right:1px solid var(--border) }
.dir-near a:first-child { padding-left:0 }
.dir-near a:last-child { border-right:0 }
.dir-near a:hover .dir-near__t { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px }
.dir-near__t { font:400 22px/1.12 var(--f-display); letter-spacing:-.01em }
.dir-near__d { font:400 12.5px/1.4 var(--f-body); color:var(--body) }

/* floor plans page */
/* The site header no longer hides on scroll (24 Sep 2026): the strip + nav and the orange promo
   band stay pinned, so the jump bar parks directly below both, always. -2px: the promo already
   tucks 1px under the header (chrome.css), and this tucks 1px under the promo, so no hairline of
   page can show between them on a high-DPR phone. */
.dir-jump { display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:14px 0; border-top:1px solid var(--structure); border-bottom:1px solid var(--structure); position:sticky; top:calc(var(--dir-head-h,0px) + var(--dir-promo-h,0px) - 2px); z-index:5; background:var(--sand) }
.dir-jump a { border:1px solid var(--border); background:var(--card); padding:10px 14px; font:700 11px/1 var(--f-body); letter-spacing:.06em }
.dir-jump a span { font-weight:400; color:var(--text-faint); margin-left:4px }
.dir-jump a:hover { background:var(--structure); color:var(--sand); border-color:var(--structure) }
.dir-jump a:hover span { color:var(--border-alt) }
.dir-pgroup { padding-top:46px; scroll-margin-top:calc(var(--dir-head-h,0px) + var(--dir-promo-h,0px) + 60px) }
.dir-pgroup__head { display:flex; align-items:baseline; justify-content:space-between; gap:24px; padding-bottom:14px; border-bottom:1px solid var(--structure) }
.dir-pgroup__head > span { font:400 13px/1.3 var(--f-body); color:var(--text-2); font-variant-numeric:tabular-nums; text-align:right }
.dir-pgroup__note { font:400 14px/1.55 var(--f-body); color:var(--body-strong); margin:14px 0 0; max-width:700px }
.dir-plans { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; margin-top:24px }
.dir-plan { margin:0; display:flex; flex-direction:column; gap:12px }
.dir-plan__img { display:flex; align-items:center; justify-content:center; height:320px; padding:16px; border:1px solid var(--border); background:var(--card); cursor:zoom-in; transition:border-color .15s }
.dir-plan__img:hover { border-color:var(--structure) }
.dir-plan__img img { max-width:100%; max-height:100%; object-fit:contain; mix-blend-mode:multiply }
.dir-plan figcaption { display:flex; flex-direction:column; gap:4px }
.dir-plan__t { font:400 20px/1.15 var(--f-display); letter-spacing:-.008em }
.dir-plan__m { font:400 13px/1.4 var(--f-body); color:var(--body); font-variant-numeric:tabular-nums }
.dir-plan__n { font:400 12px/1.4 var(--f-body); color:var(--text-2); font-style:italic }
.dir-foot { display:flex; flex-direction:column; gap:14px; margin-top:44px; padding-top:20px; border-top:1px solid var(--border) }
.dir-foot p { margin:0 }
.dir-lightbox { width:min(1200px,96vw); max-height:94vh; padding:18px; border:1px solid var(--structure); background:var(--dir-paper) }
.dir-lightbox::backdrop { background:rgba(22,20,15,.72) }
.dir-lightbox img { display:block; max-width:100%; max-height:calc(94vh - 90px); margin:0 auto; object-fit:contain }
.dir-lightbox p { margin:12px 0 0; font:700 10px/1.3 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--text-2) }
.dir-lightbox__x { position:absolute; top:8px; right:10px; width:40px; height:40px; border:0; background:transparent; font:400 30px/1 var(--f-body); cursor:pointer; color:var(--ink) }

/* site plan page */
.dir-top--site { grid-template-columns:minmax(0,1fr) 300px }
.dir-switch { display:flex; flex-direction:column; gap:10px; padding:18px; border:1px solid var(--structure); background:var(--dir-paper) }
.dir-switch .ed-cta { justify-content:center; text-align:center }
.dir-sitefig { margin:30px 0 0 }

/* new-launch floor plans (Stacked New Launch Floor Plans) */
.nl-meta { display:flex; flex-wrap:wrap; gap:10px 26px; margin-top:22px; font:400 13px/1.3 var(--f-body); color:var(--text-2) }
.nl-meta b { font-weight:400; color:var(--ink) }
.nl-jump { margin-top:30px }
.nl-jump .nl-jump__mix { border-color:var(--dir-sw); background:#E3EDE8; color:var(--dir-teal) }
.nl-jump .nl-jump__mix:hover { background:var(--dir-teal); border-color:var(--dir-teal); color:#fff }
.nl-h2 { font-size:clamp(28px,3vw,38px); margin-top:18px }
.nl-eyebrow { gap:9px }
.nl-eyebrow .ed-sw { flex:none }
.nl-mix { display:flex; flex-direction:column; margin-top:20px; border-top:1px solid var(--structure) }
.nl-mix__r { display:grid; grid-template-columns:140px 110px minmax(0,1fr) 90px 100px 60px 60px 100px; gap:0 18px; align-items:center; padding:12px 0; border-bottom:1px solid var(--dir-rule); font:400 13.5px/1.35 var(--f-body); color:var(--body-strong) }
a.nl-mix__r:hover { background:var(--card) }
.nl-mix__r--h { padding:14px 0; border-bottom-color:var(--border); font:700 9px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase; color:var(--text-2) }
.nl-mix__b { font:400 16px/1.2 var(--f-display); color:var(--ink) }
.nl-mix__n { text-align:right; font-variant-numeric:tabular-nums }
.nl-mix__foot { display:flex; justify-content:space-between; align-items:baseline; gap:24px; margin-top:12px; padding-top:10px; border-top:1px solid var(--structure); font:400 11.5px/1.5 var(--f-body); color:var(--text-2) }
.nl-mix__foot b { color:var(--ink) }
.nl-types { display:grid; grid-template-columns:1fr 1fr; gap:34px 26px; padding-top:24px; border-top:1px solid var(--structure) }
.nl-types--many { grid-template-columns:repeat(3,minmax(0,1fr)) }
.nl-type { display:flex; flex-direction:column; min-width:0 }
.nl-type__img { display:flex; align-items:center; justify-content:center; height:340px; padding:16px; border:1px solid var(--border); background:var(--card); cursor:zoom-in; transition:border-color .15s }
.nl-types--many .nl-type__img { height:280px }
.nl-type__img:hover { border-color:var(--structure) }
.nl-type__img img { max-width:100%; max-height:100%; object-fit:contain; mix-blend-mode:multiply }
.nl-type__img--none { flex-direction:column; gap:10px; cursor:default; font:400 14px/1.4 var(--f-body); color:var(--text-2) }
.nl-type__img--none span { font:700 9.5px/1 var(--f-body); letter-spacing:.16em; text-transform:uppercase }
.nl-type__t { font:400 24px/1.12 var(--f-display); letter-spacing:-.012em; margin:16px 0 0 }
.nl-types--many .nl-type__t { font-size:21px }
.nl-type__spec { margin:10px 0 0 }
.nl-type__spec dd { max-width:65% }
.nl-faq { display:grid; grid-template-columns:1fr 1fr; gap:0 56px; margin-top:22px; border-top:1px solid var(--structure) }
.nl-faq__i { padding:18px 0; border-bottom:1px solid var(--dir-rule) }
.nl-faq__i h3 { font:400 21px/1.2 var(--f-display); letter-spacing:-.01em; margin:0 }
.nl-faq__i p { font:400 14px/1.55 var(--f-body); color:var(--body-strong); margin:9px 0 0 }
.nl-next { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:44px; padding-top:24px; border-top:1px solid var(--structure) }
.nl-next a { display:flex; flex-direction:column; gap:9px; padding:8px 26px; border-right:1px solid var(--border) }
.nl-next a:first-child { padding-left:0 }
.nl-next a:last-child { border-right:0 }
.nl-next__k { font:700 9.5px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase; color:var(--dir-teal) }
.nl-next__t { font:400 22px/1.14 var(--f-display); letter-spacing:-.01em }
.nl-next a:hover .nl-next__t { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px }
.nl-fine { margin-top:30px }
.nl-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:30px; border-top:1px solid var(--structure); border-bottom:1px solid var(--border) }
.nl-stats > div { display:flex; flex-direction:column; gap:6px; padding:18px 20px 18px 0; border-right:1px solid var(--border) }
.nl-stats > div + div { padding-left:20px }
.nl-stats > div:last-child { border-right:0 }
.nl-stats__k { font:700 9.5px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase; color:var(--text-2) }
.nl-stats__v { font:400 30px/1.05 var(--f-display); letter-spacing:-.015em; font-variant-numeric:tabular-nums }
.nl-stats__v small { font:400 13px/1 var(--f-body); color:var(--text-2); letter-spacing:0 }
.nl-stats__d { font:400 12.5px/1.45 var(--f-body); color:var(--body); font-variant-numeric:tabular-nums }
.nl-stats__src { font:400 11.5px/1.5 var(--f-body); color:var(--text-2); margin:8px 0 0 }
.nl-dev { display:grid; grid-template-columns:1fr 1fr; gap:26px 56px; margin-top:22px; border-top:1px solid var(--structure); padding-top:6px }
.nl-dev__h { font:700 9.5px/1.2 var(--f-body); letter-spacing:.16em; text-transform:uppercase; color:var(--text-2); margin:14px 0 4px }
.nl-dev__h--gap { margin-top:26px }
.nl-dev .dir-rows dd { max-width:62% }
.nl-fac { display:flex; flex-wrap:wrap; gap:6px; list-style:none; margin:8px 0 0; padding:0 }
.nl-fac li { border:1px solid var(--border); background:var(--card); padding:7px 10px; font:400 12.5px/1.2 var(--f-body) }
@media (max-width:1100px) {
  .nl-mix__r { grid-template-columns:120px 90px minmax(0,1fr) 90px 60px 60px 90px; gap:0 12px }
  .nl-mix__sqm { display:none }
  .nl-stats { grid-template-columns:1fr 1fr }
  .nl-dev { grid-template-columns:1fr }
  .nl-types--many { grid-template-columns:1fr 1fr }
}
@media (max-width:700px) {
  .nl-mix__r { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) 56px 42px 42px; gap:0 10px; font-size:12.5px }
  .nl-mix__r--h { font-size:8.5px; letter-spacing:.08em }
  .nl-mix__d, .nl-mix__sqm, .nl-mix__psf { display:none }
  .nl-stats { grid-template-columns:1fr }
  .nl-mix__b { font-size:14.5px }
  .nl-mix__foot { flex-direction:column; gap:4px }
  .nl-types, .nl-types--many, .nl-faq, .nl-next { grid-template-columns:1fr }
  .nl-type__img, .nl-types--many .nl-type__img { height:auto; aspect-ratio:1/1 }
  .nl-next a, .nl-next a:first-child { padding:14px 0; border-right:0; border-bottom:1px solid var(--border) }
  .nl-meta { gap:8px 18px }
  .nl-stats > div, .nl-stats > div + div { padding:14px 0; border-right:0; border-bottom:1px solid var(--dir-rule) }
  .nl-stats__v { font-size:26px }
  .nl-dev .dir-rows dd { max-width:60% }
}

/* responsive */
@media (max-width:1100px) {
  .dir-find__row { grid-template-columns:1fr 1fr 1fr }
  .dir-input--main { grid-column:1/-1 }
  .dir-find__go { grid-column:1/-1 }
  .dir-lgrid { grid-template-columns:repeat(2,minmax(0,1fr)) }
  .dir-results { grid-template-columns:1fr }
  .dir-results__side { position:static; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)) }
  .dir-results__side .dir-consult { grid-column:1/-1 }
  .dir-top, .dir-top--site { grid-template-columns:1fr }
  .dir-top__side { display:grid; grid-template-columns:1fr 1fr }
  .dir-review { grid-template-columns:1fr }
  .dir-review > img { min-height:0; aspect-ratio:16/9 }
  .dir-sec__head { grid-template-columns:1fr; gap:14px }
  .dir-bedgrid { grid-template-columns:repeat(min(var(--n),3),minmax(0,1fr)) }
  .dir-bed { border-bottom:1px solid var(--border) }
  .dir-bed:first-child { padding-left:22px }
  .dir-featured { grid-template-columns:1fr }
  .dir-near { grid-template-columns:repeat(2,minmax(0,1fr)) }
  .dir-near a, .dir-near a:first-child { padding:18px 18px 18px 0; border-right:0; border-bottom:1px solid var(--border) }
  .dir-plans { grid-template-columns:repeat(2,minmax(0,1fr)) }
  .dir-switch { flex-direction:row; flex-wrap:wrap }
  .dir-switch > * { flex:1 1 150px }
}
@media (max-width:700px) {
  .dir-hero { padding:26px 0 20px }
  .dir-dek { font-size:16px }
  .dir-find__row { grid-template-columns:1fr }
  .dir-find__row--two { grid-template-columns:minmax(0,1fr) auto }
  .dir-find__row--two .dir-input--main, .dir-find__row--two .dir-find__go { grid-column:auto }
  .dir .dir-find__row--two .dir-find__go { padding:0 18px }
  .dir-segs, .dir-seg--wide .dir-seg__list, .dir-closing, .dir-facts, .dir-plans, .dir-near, .dir-top__side, .dir-results__side { grid-template-columns:1fr }
  .dir-lgrid { grid-template-columns:1fr 1fr; gap:22px 14px }
  .dir-lcard__t { font-size:19px }
  .dir-lcard__facts div { font-size:11.5px; flex-direction:column; gap:2px }
  .dir-lcard__facts dd { text-align:left }
  .dir-closing__col--tint { border-left:0; border-top:1px solid var(--structure) }
  .dir-closing__col { padding:26px 22px }
  .dir-band__head, .dir-sec__head--row, .dir-results__head { flex-direction:column; align-items:flex-start }
  .dir-panel { padding:16px 16px 4px; margin:0 calc(-1 * var(--gutter)) }
  .dir-tr { grid-template-columns:56px minmax(0,1fr) auto; gap:4px 12px }
  .dir-tr--h { display:none }
  .dir-tr .dir-td--n { display:none }
  .dir-tr .dir-td--img { grid-row:span 2 }
  .dir-tr .dir-td--t { grid-column:2/-1 }
  .dir-tr > span:nth-child(4) { grid-column:2; color:var(--text-2); font-size:12.5px }
  .dir-tr > span:nth-child(5) { display:none }
  .dir-tr > span:nth-child(6) { grid-column:3; font-size:12.5px }
  .dir-pager { flex-wrap:wrap; justify-content:center }
  .dir-pager > a, .dir-pager > span.is-off { flex:1 }
  .dir-pager__nums { order:-1; flex-basis:100% }
  .dir-bedgrid { grid-template-columns:1fr 1fr }
  .dir-bed, .dir-bed:first-child { padding:16px 14px 16px 0; border-right:0 }
  .dir-bed__t { font-size:22px }
  .dir-facts div { grid-template-columns:110px minmax(0,1fr) }
  .dir-brochure { grid-template-columns:1fr; gap:18px; padding:24px 20px }
  .dir-plan__img { height:auto; aspect-ratio:1/1 }
  .dir-actions .dir-btn, .dir-actions .ed-cta { flex:1 1 100% }
  .dir-jump { overflow-x:auto; flex-wrap:nowrap; margin:0 calc(-1 * var(--gutter)); padding-left:var(--gutter); padding-right:var(--gutter) }
  .dir-jump a { flex:none }
  .dir-jump { scrollbar-width:none }
  .dir-jump::-webkit-scrollbar { display:none }
  .dir-jump__lbl { flex:none; white-space:nowrap }
}
@media (prefers-reduced-motion:reduce) { .dir *, .dir *::before { transition:none !important; scroll-behavior:auto !important } }
html { scroll-behavior:smooth }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto } }

/* the standing caveat at the foot of every directory page */
.dir-caveat { margin:48px 0 40px; padding:18px 0 0; border-top:1px solid var(--dir-rule); max-width:860px; font:400 12.5px/1.6 var(--f-body); color:var(--text-2) }
.dir-caveat p { margin:0 0 8px }
.dir-caveat__h { font:700 10px/1.2 var(--f-body) !important; letter-spacing:.14em; text-transform:uppercase; color:var(--text-faint); margin:0 0 10px !important }
.dir-caveat a { color:var(--dir-teal); text-decoration:underline; text-underline-offset:2px }

/* bof/ed/mobile.min.css */
@media (max-width:900px){
@media (max-width:780px) {

  
  
  .ed .ed-more,
  .ed .ed-cta,
  .ed .ed-chip,
  .ed .ed-nl__btn,
  .ed .ed-drawer__eyebrow,
  .ed .ed-dfeat__kicker,
  .ed .ed-dfeat__cta,
  .ed .ed-dconsult__cta,
  .ed .ed-foot__head,
  .ed .ed-tours__more,
  .ed .ed-revlist__more {
    font-size:14px;
    letter-spacing:.06em;
  }

  
  .ed .ed-kicker,
  .ed .ed-eyebrow,
  .ed .ed-card__label,
  .ed .ed-flag,
  .ed .ed-revlist__cat,
  .ed .intel-lead__k,
  .ed .ed-pill {
    font-size:12px;
    letter-spacing:.02em;
  }

  
  .ed .ed-nl__fine,
  .ed .ed-takes__with,
  .ed .ed-foot__legal,
  .ed .ed-foot__legal-links a,
  .ed .ed-foot__links a,
  .ed .ed-drawer__util a,
  .ed .ed-dquick a,
  .ed .ed-topics__sub,
  .ed .ed-dnet__desc,
  .ed .ed-dconsult__desc {
    font-size:14px;
    letter-spacing:normal;
    text-transform:none;
  }
  
  .ed .ed-byline,
  .ed .ed-byline--lg,
  .ed .ed-brief__stamp {
    font-size:11px; line-height:1.45;
    letter-spacing:.08em; text-transform:uppercase;
  }
  .ed .ed-shares {
    font-size:inherit; letter-spacing:inherit; text-transform:inherit;
  }

  
  .ed .ed-byline__read { display:none }

  
  .ed .ed-pop__rank,
  .ed .ed-dpillar__n,
  .ed .ed-dnet__n { font-size:13px; letter-spacing:normal }

  
  .ed .author-bio__role,
  .ed .popular__head,
  .ed .workwith__eyebrow,
  .ed .comment-reply-link,
  .ed .dss-live-count,
  .ed .elc-field,
  .ed .elc-time,
  .ed .digest__form,
  .ed .digest__form label,
  .ed .article-share__count {
    font-size:14px;
    letter-spacing:normal;
  }

  
  .ed .breadcrumb,
  .ed .breadcrumb a,
  .ed .sep,
  .ed .byline__meta {
    font-size:12px;
    letter-spacing:.02em;
  }
  .ed .byline__meta { line-height:1.5 }

  
  .ed .article-standfirst { display:none }

  
  .ed .ed-foot__promos { display:none }

  
  .ed .ed-foot__head { line-height:1.45 }

  
  .ed .ed-foot__legal-links {
    display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:11px 18px;
  }

  
  .ed .ed-foot__legal { border-top:1px solid var(--rule-dark); padding-top:20px; margin-top:8px; gap:22px }
  .ed .ed-foot__legal-links { order:-1 }

  

  
  .ed.ed-single .byline {
    border-top:0; border-bottom:0;
    padding:0; margin:10px 0 18px;
  }

  
  .ed.ed-single .byline__stats { display:block }
  .ed.ed-single .byline__sep { display:none }

  
  .ed.ed-single .byline__share a,
  .ed.ed-single .byline__share button { width:34px; height:34px }
  .ed.ed-single .byline__share a svg,
  .ed.ed-single .byline__share button svg { width:12px; height:12px }

  
  .ed.ed-single .byline .dss-live-count { font-size:inherit }

  
  .ed.ed-single .article-main { padding-top:14px }
  .ed.ed-single .article-title { margin-top:12px }

  
  .ed .intel-scard__meta,
  .ed .intel-benefit__n,
  .ed .intel-state__k,
  .ed .intel-shead__note,
  .ed .intel-tier__k,
  .ed .intel-tier__sub,
  .ed .intel-hero__ghost,
  .ed .intel-hero__fine {
    font-size:14px;
    letter-spacing:.04em;
  }

  
  .ed .ed-hlist__item,
  .ed .ed-hlist__item--compact,
  .ed .ed-revlist__title,
  .ed .ed-takes__title,
  .ed .ed-topics__title,
  .ed .ed-brief__link,
  .ed .ed-pop__title,
  .ed .ed-twoup__item,
  .ed .ed-sponsor__title {
    font-size:16px; line-height:1.25;
  }
  .ed .ed-card__dek,
  .ed .ed-row__dek,
  .ed .ed-band-dek,
  .ed .ed-sponsor__dek,
  .ed .ed-dnet__name,
  .ed .ed-dconsult__title {
    font-size:16px; line-height:1.5;
  }
  .ed .ed-row__title,
  .ed .ed-card__title,
  .ed .ed-split__title,
  .ed .ed-dpillar__name,
  
  .ed .ed-dlatest__t {
    font-size:21px; line-height:1.33;
  }
  .ed .ed-rail-h,
  .ed .ed-band-title,
  .ed .ed-brief__title,
  .ed .ed-hood-h,
  .ed .ed-reviews-h,
  .ed .ed-topics-h,
  .ed .ed-work-h,
  .ed .ed-intel-h,
  .ed .ed-nl__h {
    font-size:24px; line-height:1.33;
  }

  
  .ed .ed-dpillar__sub { padding:11px 0 }
  .ed .ed-hlist__item  { padding:15px 0 }
  .ed .ed-foot__links a,
  .ed .ed-drawer__util a,
  .ed .ed-dquick a { padding:9px 0 }
  
  .ed .ed-foot__links { gap:3px }
  
  .ed .ed-foot__links--hoods a { margin-bottom:0 }

  

  
  .ed .ed-foot__legal-links { gap:2px 18px }
  .ed .ed-foot__legal-links a { padding:7px 0 }

  
  .ed .ed-foot__head a { display:inline-block; padding:6px 0; margin:-6px 0 }

  
  .ed.ed-single .breadcrumb a { display:inline-block; padding:7px 0 }
  .ed.ed-single .series-nav__all { display:inline-block; padding:8px 0 }

  
  .ed .cat-topics__chip { padding-top:10px; padding-bottom:10px }

  

  
  .ed .ed-hood__all,
  .ed .ed-topics__all { padding:11px 0 }

  
  .ed .ed-more { padding-bottom:7px }

  

  
  .ed .ed-topics__sec {
    display:inline-block; padding:10px 0; margin:-10px 0;
    min-width:32px;
  }

  
  .ed .ed-foot__contact dd a { display:inline-block; padding:7px 0; margin:-7px 0 }

  
  .ed .ed-foot__grp a,
  .ed .ed-nl__fine a { display:inline-block; padding:7px 0; margin:-7px 0 }

  
  .ed.ed-single .byline__author,
  .ed.ed-single .author-bio__namelink { display:inline-block; padding:6px 0; margin:-6px 0 }

  
  .ed .ed-foot__logo { padding:4px 0 }

  
  .ed .ed-row {
    grid-template-columns:minmax(0,1fr);
    gap:12px; padding:18px 0;
  }
  .ed .ed-row .ed-img { width:100%; aspect-ratio:16/9 }

  .ed .ed-pop__thumb { width:60px; height:60px; flex:none }

  
  .ed .ed-takes { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 12px }
  .ed .ed-takes__card { min-height:0 }
  .ed .ed-takes__title { font-size:15px; line-height:1.27 }
  .ed .ed-takes__by { padding-top:8px }
  .ed .ed-takes__face { width:38px; height:38px }
  .ed .ed-takes__with { font-size:12.5px }

  
  .ed .ed-front__well   { grid-row:1 }
  .ed .ed-front__rail-l { grid-row:2 }
  .ed .ed-front__rail-r { grid-row:3 }
  
  .ed .ed-front__rail-l { grid-template-columns:minmax(0,1fr) }

  
  .ed .ed-band { padding-top:24px }
  .ed .ed-band > .ed-eyebrow-row,
  .ed .ed-band .ed-eyebrow-row:first-child,
  .ed .ed-reviews__rail > .ed-eyebrow-row { margin-top:4px }
  .ed .ed-band-title { margin-top:8px }

  
  .ed .ed-revlist__item .ed-revlist__cat { display:none }

  
  
  
  .ed .ed-chips {
    margin-left:0;
    margin-right:calc(var(--gutter) * -1);
    width:calc(100% + var(--gutter));
    padding-left:0; padding-right:0;
  }
  .ed .ed-chips .ed-chip:first-child { margin-left:0 }
  .ed .ed-chips .ed-chip:last-child { margin-right:var(--gutter) }

  
  .ed .ed-front__well { padding-top:0 }
  .ed .ed-front { padding-top:0 }
  .ed .ed-lead { margin-top:0 }
  .ed .ed-lead__imglink { display:block }

  
  .ed .ed-front__rail-l { border-top:0; padding-top:26px }

  
  .ed .ed-intel__cta { margin-bottom:22px }

  
  .ed .ed-topics { border-top:0 }

  
  .ed .ed-work__cta,
  .ed .ed-intel__cta,
  .ed .ed-nl__btn { margin-bottom:20px }

  
  .ed .cat-nl__form .ed-nl__btn { margin-bottom:0 }

  
  .ed .ed-lead__title { font-size:25px !important; line-height:1.16; letter-spacing:normal }
  .ed .ed-lead__dek   { font-size:15.5px !important; line-height:1.45 }
  .ed .ed-hero__title { font-size:21px !important; line-height:1.2 }
  .ed .ed-hero__dek   { font-size:15.5px !important; line-height:1.45 }

  
  .ed .ed-reviews { display:flex; flex-direction:column }
  .ed .ed-reviews__eyebrow { order:1; margin-bottom:12px }
  .ed .ed-reviews .ed-hero { order:2; margin:0 0 18px }
  .ed .ed-reviews__rail { order:3; margin-top:0; padding-top:0; border-top:0 }

  
  .ed .ed-band { margin-top:40px; padding-top:0 }
}

@media (max-width:767px) {
  .ed .ed-lead__imglink {
    margin-inline:calc(var(--gutter) * -1);
    width:calc(100% + var(--gutter) * 2);
    max-width:none;
  }
  
  .ed .ed-lead .ed-img--16x9 { width:100%; max-width:none; margin-inline:0 }

  
  .ed .ed-lead__body { align-items:flex-start; text-align:left; padding:14px 0 20px }
  .ed .ed-lead__kicker { justify-content:flex-start }
  .ed .ed-lead__dek { max-width:none }
}

@media (max-width:900px) {
  
  .ed .ed-band,
  .ed .ed-reviews,
  .ed .ed-hood,
  .ed .ed-topics,
  .ed .ed-work,
  .ed .ed-intel { padding-top:26px }
  .ed .ed-eyebrow-row,
  .ed .ed-eyebrow { margin-top:2px }
  .ed .ed-band-title,
  .ed .ed-hood-h,
  .ed .ed-topics-h { margin-top:8px }

  
  .ed .ed-kicker,
  .ed .ed-eyebrow,
  .ed .ed-card__label,
  .ed .ed-flag,
  .ed .ed-revlist__cat,
  .ed .ed-topics__sub,
  .ed .intel-lead__k,
  .ed .ed-pill { font-size:11.5px; letter-spacing:.02em }
  .ed .ed-chip { font-size:12px }

  
  .ed .ed-topics__lead,
  .ed .ed-hlist__item--media,
  .ed .ed-split {
    display:block;
  }
  .ed .ed-topics__lead .ed-img,
  .ed .ed-split__img,
  .ed .ed-split .ed-img {
    width:100%; max-width:none; aspect-ratio:16/9; margin-bottom:10px;
  }
  .ed .ed-topics__lead .ed-topics__title,
  .ed .ed-topics__lead .ed-topics__sub { margin-left:0 }

  
  .ed .ed-revlist__item { align-items:flex-start }
  .ed .ed-avatar--img { object-fit:cover }
}

@media (max-width:900px) {
  
  
  .ed .ed-hood__list { grid-template-columns:minmax(0,1fr); gap:26px }
  
  @media (min-width:561px) {
    .ed .ed-hood__list { grid-template-columns:repeat(2,minmax(0,1fr)) }
  }
  .ed .ed-hood__item-t { font-size:19px; line-height:1.26 }
  .ed .ed-hood__item-d { font-size:15px }
  .ed .ed-hood__bar { flex-wrap:wrap; gap:12px }
  .ed .ed-hood__select { flex:1 1 100%; max-width:none; font-size:16px }
  

  
  .ed .ed-tours__list { grid-template-columns:minmax(0,1fr); gap:26px }
  .ed .ed-tours__t { font-size:19px; line-height:1.26 }
  @media (min-width:561px) {
    .ed .ed-tours__list { grid-template-columns:repeat(2,minmax(0,1fr)) }
  }
}

@media (max-width:900px) {
  .ed .ed-nav__sections { display:none }
  
  .ed .ed-nav { grid-template-columns:auto 1fr auto; gap:12px }
  .ed .ed-nav__brand { grid-column:2; justify-self:center }
  .ed .ed-nav__right { grid-column:3 }
  .ed .ed-burger { grid-column:1 }
  .ed .ed-nav__left { grid-column:1 }
  .ed .ed-nav__intel { display:none }

  
  .ed .ed-nav__search-t,
  .ed .ed-nav__acct-t {
    position:absolute; width:1px; height:1px; padding:0; margin:-1px;
    overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
  }
  .ed .ed-nav__search-i,
  .ed .ed-nav__acct-i { display:inline-flex; align-items:center }
  .ed .ed-nav__search,
  .ed .ed-nav__acct {
    display:inline-flex; align-items:center; justify-content:center;
    min-width:34px; min-height:34px;
  }
  
  .ed .ed-lang { display:inline-flex; align-items:center }
  .ed .ed-nav__brand img { max-width:100%; height:auto }
  
  .ed .ed-nav__brand a {
    display:inline-flex; align-items:center; vertical-align:middle;
    padding:9px 6px;
  }
  
  .ed .ed-nav__right { gap:8px }
  .ed .ed-lang { white-space:nowrap }
  
  .ed .ed-lang b[aria-current],
  .ed .ed-lang .ed-lang__sep,
  .ed .ed-lang .ed-lang__off { display:none }
  .ed .ed-lang a {
    font-weight:500;
    
    display:inline-flex; align-items:center; justify-content:center;
    min-width:28px; min-height:36px;
  }

  
  .ed .ed-dlang .ed-dlang__o.is-on,
  .ed .ed-dlang .ed-dlang__o.is-off { display:none }

  
  .ed .ed-drawer__bar { grid-template-columns:minmax(104px,1fr) minmax(0,auto) minmax(104px,1fr) }
  .ed .ed-drawer__logo img { max-width:100%; height:auto }

  
  .ed .ed-dlang { border:0 }
  .ed .ed-dlang .ed-dlang__o { min-width:0; padding:0; font-weight:500; background:none }
  
  .ed .ed-dlang .ed-dlang__o + .ed-dlang__o { border-left:0 }

  
  .ed .ed-nav {
    
    grid-template-columns:minmax(104px,1fr) minmax(0,auto) minmax(104px,1fr);
    align-items:center; min-height:52px; padding:8px 0;
  }
  .ed .ed-burger { grid-column:1; justify-self:start; align-self:center }
  .ed .ed-nav__left { grid-column:1; justify-self:start; align-self:center }
  .ed .ed-nav__brand { grid-column:2; justify-self:center; align-self:center }
  .ed .ed-nav__brand a { display:flex; align-items:center }
  .ed .ed-nav__right {
    grid-column:3; justify-self:end; align-self:center;
    display:flex; align-items:center; gap:6px;
  }

  
  .ed .ed-promo__copy .ed-promo__long { display:none }
  .ed .ed-promo__copy .ed-promo__short { display:inline }

  
  
  .ed .ed-promo__inner {
    gap:10px; align-items:center; flex-wrap:nowrap;
    padding:0;
  }
  .ed .ed-promo .ed-promo__copy,
  .ed .ed-promo .ed-promo__copy b { font-size:14px; line-height:1.3 }
  .ed .ed-promo .ed-promo__copy { flex:1 1 auto; min-width:0 }

  
  .ed .ed-promo__cta-t {
    position:absolute; width:1px; height:1px; padding:0; margin:-1px;
    overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
  }
  .ed .ed-promo__cta-i { display:inline-flex; align-items:center; justify-content:center }

  
  
  .ed .ed-promo__cta::after { content:''; position:absolute; inset:0; z-index:1 }
  
  .ed .ed-promo__cta {
    flex:none;
    display:inline-flex; align-items:center; justify-content:center;
    width:30px; height:30px; padding:0; margin:0;   
    background:var(--structure); color:#fff;
    line-height:0;                                  
  }
  .ed .ed-promo__cta svg { width:15px; height:15px }
  .ed .ed-promo__cta:hover { background:#463F35; color:#fff }
  
  .ed .ed-promo { padding:5px var(--gutter) }
}

}
/* bof/condo-v2.css */
/* The v2 condo page (resources/views/bof/directory/condo-v2.blade.php), from the
   StackedCondoPage design. Loaded on that page only, after directory.css; tokens
   (--f-display, --f-body, colours) come from bof/ed/tokens. Mobile below 760px. */
.cv2 {
  --cv2-ink:#241F1A; --cv2-body:#2B2822; --cv2-muted:#6E6456; --cv2-faint:#6F675A;
  --cv2-line:#D8CDB6; --cv2-rule:#E4DECF; --cv2-dark:#2A2620; --cv2-card:#F2EBDC; --cv2-panel:#E9E2D2;
  --cv2-teal:#1E7568; --cv2-teal-line:#9FCFC5; --cv2-red:#B0381C; --cv2-gap:72px;
  color:var(--cv2-ink); font-family:var(--f-body);
}
.cv2 a { color:inherit; text-decoration:none }
.cv2 a:hover { color:var(--cv2-teal) }
.cv2 p { margin:0 }

/* shared type */
.cv2-sw { flex:none; display:inline-block; width:8px; height:8px }
.cv2-sw--sm { width:7px; height:7px }
.cv2-kick { display:flex; align-items:center; gap:9px }
.cv2-kick__t { font:700 10px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase; color:var(--cv2-red) }
.cv2-kick__t--muted { color:var(--cv2-muted) }
.cv2-kick__t--red { font-size:9.5px; color:var(--cv2-red) }
.cv2-h1 { font:400 62px/1.02 var(--f-display); letter-spacing:-.022em; margin:14px 0 0; text-wrap:balance }
.cv2-h2 { font:400 40px/1.04 var(--f-display); letter-spacing:-.02em; margin:18px 0 0; text-wrap:balance }
.cv2-src { font:400 11.5px/1.4 var(--f-body); color:var(--cv2-faint); margin-top:12px !important }
.cv2-label { font:700 10px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase; color:var(--cv2-muted) }
.cv2-note { font:400 12.5px/1.45 var(--f-body); color:var(--cv2-faint); margin-top:6px }
.cv2-note--basis { margin-top:14px; color:var(--cv2-muted) }
.cv2-note__link { color:var(--cv2-teal) !important; border-bottom:1px solid var(--cv2-teal-line); font-weight:700 }
.cv2-intro { font:400 14.5px/1.55 var(--f-body); color:var(--cv2-body); margin-top:10px !important; max-width:960px }
.cv2-more { display:inline-block; font:700 10px/1.2 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--cv2-teal) !important; border-bottom:1px solid var(--cv2-teal-line); padding-bottom:4px }
.cv2-m { display:none }

/* section opener: "02 — Prices" with a rule */
.cv2-sec { padding-top:var(--cv2-gap) }
.cv2-sec--last { padding-bottom:8px }
.cv2-band { display:flex; align-items:center; gap:10px }
.cv2-band__t { font:700 10px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase; color:var(--cv2-muted) }
.cv2-band i { flex:1; height:1px; background:var(--cv2-line) }
.cv2-sub { margin-top:32px }

/* hero */
.cv2-hero { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:32px 44px; align-items:start; padding-top:34px }
.cv2-hero__main, .cv2-hero__side { min-width:0 }
.cv2-hero__side { display:flex; flex-direction:column; gap:20px }
.cv2-place { font:700 10px/1.4 var(--f-body); letter-spacing:.14em; text-transform:uppercase; color:var(--cv2-muted); margin-top:12px }
.cv2-summary { font:400 16.5px/1.55 var(--f-body); color:var(--cv2-body); margin-top:16px !important; max-width:680px; text-wrap:pretty }
.cv2-hero__main > .cv2-src { margin-top:8px !important }
.cv2-glance { display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); margin-top:24px; border-top:1px solid var(--cv2-dark); border-bottom:1px solid var(--cv2-line) }
.cv2-glance > div { padding:14px 14px 14px 0; min-width:0 }
.cv2-glance__v { font:400 28px/1.05 var(--f-display); letter-spacing:-.015em }
.cv2-glance__l { font:700 9.5px/1.3 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--cv2-muted); margin-top:8px }
.cv2-photo { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; margin-top:24px; background:var(--cv2-panel) }
.cv2-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px }
.cv2-act { display:inline-flex; align-items:center; gap:10px; min-height:44px; box-sizing:border-box; border:1px solid var(--cv2-dark); font:700 10.5px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase; padding:0 20px; transition:background .15s,color .15s }
.cv2 .cv2-act:hover { background:var(--cv2-dark); color:#F5F0E4 }
.cv2-act--primary { background:#FC9046; border-color:#FC9046 }

.cv2-facts { background:var(--cv2-card); padding:20px 20px 16px }
.cv2-facts__list { display:flex; flex-direction:column; margin:12px 0 0 }
.cv2-facts__list > div { display:flex; justify-content:space-between; align-items:baseline; gap:16px; padding:11px 0; border-bottom:1px solid var(--cv2-line); font:400 13.5px/1.35 var(--f-body) }
.cv2-facts__list dt { flex:none; color:var(--cv2-muted) }
.cv2-facts__list dd { margin:0; text-align:right; min-width:0; overflow-wrap:anywhere }
.cv2-facts__fac { padding:12px 0 2px; font:400 13px/1.5 var(--f-body) }
.cv2-facts__fac > div:first-child { color:var(--cv2-muted) }
.cv2-facts__fac > div + div { margin-top:4px }
.cv2-advisory { border:1px solid var(--cv2-dark); padding:20px }
.cv2-advisory .cv2-kick { gap:7px }
.cv2-advisory__h { font:400 23px/1.12 var(--f-display); letter-spacing:-.012em; margin-top:10px !important }
.cv2-advisory .cv2-more { margin-top:14px }

/* prices */
.cv2-period { font:700 10px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase; color:var(--cv2-faint); margin-top:12px }
.cv2-figs { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); margin-top:14px; border-top:1px solid var(--cv2-dark) }
.cv2-fig { padding:16px 16px 16px 0; border-bottom:1px solid var(--cv2-rule); min-width:0 }
.cv2-fig__v { font:400 30px/1.05 var(--f-display); letter-spacing:-.015em }
.cv2-fig__l { font:400 12.5px/1.35 var(--f-body); color:var(--cv2-muted); margin-top:6px }
.cv2-sec .cv2-sub:first-of-type { margin-top:30px }
.cv2-list, .cv2-table { margin-top:12px; border-top:1px solid var(--cv2-dark) }
.cv2-ind { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 28px; padding:14px 0; border-bottom:1px solid var(--cv2-rule); font:400 14.5px/1.3 var(--f-body) }
.cv2-ind__bed { flex:1 1 200px; display:flex; align-items:center; gap:10px }
.cv2-ind__name { font:400 23px/1.1 var(--f-display); border-bottom:1px solid var(--cv2-line) }
.cv2-ind__from { flex:0 1 130px; font-weight:700 }
.cv2-ind__psf { flex:0 1 190px }
.cv2-ind__avail { flex:0 1 150px; color:var(--cv2-muted) }

.cv2-chart { position:relative; height:280px; margin-top:10px }
.cv2-chart__plot { position:absolute; left:52px; right:26px; top:28px; bottom:30px }
.cv2-chart__grid { position:absolute; left:0; right:0; border-top:1px solid var(--cv2-rule) }
.cv2-chart__grid--base { border-top-color:var(--cv2-dark) }
.cv2-chart__ax { position:absolute; left:-52px; transform:translateY(-50%); font:400 11px/1 var(--f-body); color:var(--cv2-faint) }
.cv2-chart svg { position:absolute; left:0; top:0; width:100%; height:100%; overflow:visible }
.cv2-pt { position:absolute; width:0; height:0 }
.cv2-pt i { position:absolute; left:-5px; top:-5px; width:10px; height:10px; box-sizing:border-box; border-radius:50%; background:var(--cc, var(--cv2-teal)); border:2px solid #F5F0E4 }
.cv2-dpt { position:absolute; width:0; height:0 }
.cv2-dpt i { position:absolute; left:-4px; top:-4px; width:8px; height:8px; box-sizing:border-box; border-radius:50%; background:#F5F0E4; border:2px solid var(--dc) }
/* one hover column per year, the full plot height; its tooltip gives both averages */
.cv2-hov { position:absolute; top:0; bottom:0; transform:translateX(-50%); margin:0; padding:0; border:0; background:transparent; cursor:default; z-index:3 }
.cv2-hov:focus-visible { outline:2px solid var(--mango, #F5731E); outline-offset:-2px }
.cv2-hov::after { content:""; position:absolute; left:50%; top:0; bottom:0; border-left:1px solid var(--cv2-line); opacity:0 }
.cv2-hov:hover::after, .cv2-hov:focus-visible::after { opacity:1 }
.cv2-hov__tip { position:absolute; top:-8px; left:50%; transform:translate(-50%, -100%); z-index:5; display:flex; flex-direction:column; gap:4px; width:max-content; padding:8px 10px; background:var(--cv2-dark); color:#F5F0E4; font:400 12px/1.3 var(--f-body); text-align:left; white-space:nowrap; font-variant-numeric:tabular-nums; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .12s }
.cv2-hov__tip span { display:flex; align-items:center; gap:6px }
.cv2-hov__tip i { width:8px; height:8px; border-radius:50% }
.cv2-hov:hover .cv2-hov__tip, .cv2-hov:focus .cv2-hov__tip { opacity:1; visibility:visible }
.cv2-hov--first .cv2-hov__tip { left:50%; transform:translate(0, -100%) }
.cv2-hov--last .cv2-hov__tip { left:auto; right:50%; transform:translate(0, -100%) }
@media (prefers-reduced-motion:reduce) { .cv2-hov__tip { transition:none } }
.cv2-pt span { position:absolute; left:0; bottom:10px; transform:translateX(-50%); font:700 11px/1 var(--f-body); white-space:nowrap }
.cv2-pt--first span { transform:translateX(-20%) }
.cv2-pt--last span { transform:translateX(-80%) }
.cv2-chart__yr { position:absolute; top:calc(100% + 12px); transform:translateX(-50%); font:400 11px/1 var(--f-body); color:var(--cv2-muted); white-space:nowrap }
.cv2-chart__yr b { font-weight:400 }
.cv2-chart__yr em { display:none; font-style:normal }

.cv2-sale { display:grid; grid-template-columns:1.2fr 1fr 1fr 1fr; gap:16px; padding:13px 0; border-bottom:1px solid var(--cv2-rule); font:400 14.5px/1.3 var(--f-body) }
.cv2-bed { display:grid; grid-template-columns:1.1fr .8fr .9fr 1.5fr 1.2fr; gap:16px; padding:13px 0; border-bottom:1px solid var(--cv2-rule); font:400 14.5px/1.3 var(--f-body); font-variant-numeric:tabular-nums }
.cv2-bed__t { font-weight:700 }
.cv2-caveat { margin:16px 0 4px; padding:14px 16px; border-left:3px solid #FC9046; background:var(--cv2-card); font:400 13.5px/1.5 var(--f-body); color:var(--cv2-body); max-width:760px }
.cv2-caveat strong { font-weight:700; color:var(--cv2-ink) }
.cv2-caveat a { color:var(--cv2-teal); font-weight:700 }
.cv2-bed--rent { grid-template-columns:1.1fr .8fr 1fr 1.4fr 1fr .8fr }
.cv2-bed--head { padding:10px 0; border-bottom-color:var(--cv2-line); font:700 9.5px/1.2 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--cv2-faint) }
.cv2-tabs--cmp { margin-top:12px }
.cv2-cmp-panel { margin-top:14px }
.cv2-cmp-panel .cv2-note { margin-top:0 }
.cv2-sale--head { padding:10px 0; border-bottom-color:var(--cv2-line); font:700 9.5px/1.2 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--cv2-faint) }

.cv2-cmp { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,2fr) 128px; gap:8px 20px; align-items:center; padding:12px 0; border-bottom:1px solid var(--cv2-rule); font:400 14px/1.3 var(--f-body) }
.cv2-cmp__name { min-width:0 }
.cv2-cmp__n { border-bottom:1px solid var(--cv2-line) }
div.cv2-cmp .cv2-cmp__n { border-bottom-color:transparent }
.cv2-cmp--hi .cv2-cmp__n { font-weight:700; border-bottom-color:transparent }
.cv2-cmp__meta { display:block; font-size:12px; color:var(--cv2-muted); margin-top:3px }
.cv2-cmp__bar { height:8px; background:var(--cv2-panel); position:relative }
.cv2-cmp__bar i { position:absolute; left:0; top:0; bottom:0; background:var(--cv2-dark) }
.cv2-cmp--hi .cv2-cmp__bar i { background:var(--cv2-red) }
.cv2-cmp__psf { text-align:right; font-weight:700; font-variant-numeric:tabular-nums }
.cv2-cmp__psf small, .cv2-near__v small { display:block; font-weight:400; font-size:12px; color:var(--cv2-muted); margin-top:3px }

.cv2-quiets { margin-top:22px }
.cv2-quiet { display:grid; grid-template-columns:200px minmax(0,1fr); gap:4px 24px; align-items:baseline; padding:13px 0; border-top:1px solid var(--cv2-rule) }
.cv2-quiet > span:first-child { font:700 9.5px/1.3 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--cv2-faint) }
.cv2-quiet > span + span { font:400 14px/1.5 var(--f-body); color:var(--cv2-muted) }
.cv2-quiet--under { border-top:0; border-bottom:1px solid var(--cv2-rule) }

/* lease */
.cv2-lease { margin-top:22px; padding-top:20px; border-top:1px solid var(--cv2-dark); max-width:560px }
.cv2-lease__big { display:flex; align-items:baseline; gap:10px; flex-wrap:wrap }
.cv2-lease__big span:first-child { font:400 60px/1 var(--f-display); letter-spacing:-.03em }
.cv2-lease__big span + span { font:400 20px/1 var(--f-display) }
.cv2-lease__bar { height:10px; background:var(--cv2-panel); margin-top:18px }
.cv2-lease__bar i { display:block; height:100%; background:var(--cv2-dark) }
.cv2-lease__ends { display:flex; justify-content:space-between; margin-top:8px; font:400 12px/1 var(--f-body); color:var(--cv2-muted) }
.cv2-lease__t { font:400 14.5px/1.55 var(--f-body); color:var(--cv2-body); margin-top:16px !important }

/* unit mix */
.cv2-mix { margin-top:20px; border-top:1px solid var(--cv2-dark) }
.cv2-mix__head, .cv2-mix__main { display:grid; grid-template-columns:minmax(0,1.4fr) 1fr 1.4fr 1fr 32px; gap:16px }
.cv2-mix--nounits .cv2-mix__head, .cv2-mix--nounits .cv2-mix__main { grid-template-columns:minmax(0,1.4fr) 1fr 1.4fr 32px }
.cv2-mix__head { padding:10px 0; border-bottom:1px solid var(--cv2-line); font:700 9.5px/1.2 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--cv2-faint) }
.cv2-mix__row { padding:16px 0; border-bottom:1px solid var(--cv2-line) }
.cv2-mix__main { align-items:baseline; font:400 14.5px/1.3 var(--f-body) }
.cv2-mix__bed { display:flex; align-items:center; gap:10px; min-width:0 }
.cv2-mix__name { font:400 24px/1.1 var(--f-display); letter-spacing:-.012em; border-bottom:1px solid var(--cv2-line) }
.cv2-mix__go { text-align:right; color:var(--cv2-teal) }
.cv2-mix__line { display:none }
.cv2-chips { display:flex; flex-wrap:wrap; gap:6px; margin-top:12px }
.cv2-chip { display:inline-flex; flex-wrap:wrap; align-items:center; gap:4px 8px; min-height:32px; padding:6px 10px; box-sizing:border-box; border:1px solid var(--cv2-line); background:var(--cv2-card); font:400 12.5px/1.1 var(--f-body) }
.cv2 .cv2-chip:hover { border-color:var(--cv2-teal); color:inherit }
.cv2-chip__m { color:var(--cv2-muted) }
.cv2-chip__f { color:var(--cv2-teal) }
.cv2-mix + .cv2-quiet { margin-top:0 }

/* launch progress */
.cv2-prog { display:grid; grid-template-columns:repeat(3,minmax(0,170px)); gap:12px; margin-top:22px; padding-top:20px; border-top:1px solid var(--cv2-dark) }
.cv2-prog__v { font:400 34px/1 var(--f-display); letter-spacing:-.02em }
.cv2-prog__l { font:400 12.5px/1.3 var(--f-body); color:var(--cv2-muted); margin-top:6px }
.cv2-month { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 28px; padding:13px 0; border-bottom:1px solid var(--cv2-rule); font:400 14.5px/1.3 var(--f-body) }
.cv2-month__m { flex:1 1 160px; font:400 21px/1.1 var(--f-display) }
.cv2-month__s { flex:0 1 100px; font-weight:700 }
.cv2-month__t { flex:0 1 110px; color:var(--cv2-muted) }
.cv2-month > span:last-child { flex:0 1 140px }

/* stack plan */
.cv2-legend { display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:14px; font:400 12.5px/1 var(--f-body); color:var(--cv2-body) }
.cv2-legend span { display:flex; align-items:center; gap:7px }
.cv2-legend i { width:14px; height:14px; box-sizing:border-box }
.cv2-legend__dash { border:1px dashed var(--cv2-teal) }
.cv2-hint { font:400 13px/1.4 var(--f-body); color:var(--cv2-muted); margin-top:10px !important }
.cv2-blocks { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:28px 48px; margin-top:22px }
.cv2-block { border-top:1px solid var(--cv2-dark); padding-top:14px; min-width:0 }
.cv2-block--wide { grid-column:1 / -1 }
.cv2-block__head { display:flex; justify-content:space-between; align-items:baseline; gap:12px }
.cv2-block__name { font:400 24px/1.1 var(--f-display) }
.cv2-block__note { font:400 12.5px/1.3 var(--f-body); color:var(--cv2-muted); text-align:right }
.cv2-grid { display:grid; grid-auto-rows:46px; gap:3px; margin-top:14px }
.cv2-grid--tall { grid-auto-rows:56px }
.cv2-grid__lbl { display:flex; align-items:center; justify-content:center; font:400 11px/1 var(--f-body); color:var(--cv2-faint) }
.cv2-unit { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; min-width:0; padding:0 2px; margin:0; border:1px solid transparent; box-sizing:border-box; border-radius:0; cursor:pointer; color:var(--cv2-ink); font:700 12.5px/1 var(--f-body); letter-spacing:.04em; overflow:hidden }
.cv2-unit > span { max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.cv2-unit__p { font:400 11px/1 var(--f-body); letter-spacing:0; white-space:nowrap }
/* the last sale's date sits beside its price; a cell too narrow for both keeps the price (the tap panel has the date) */
.cv2-unit { container-type:inline-size }
.cv2-unit__d i { font-style:normal }
/* a narrow cell puts the sale date on its own line under the price; only the narrowest drop it */
@container (max-width:118px) { .cv2-unit__d { display:block; margin-top:3px; font-size:10px; opacity:.8 } .cv2-unit__d i { display:none } }
@container (max-width:49px) { .cv2-unit__d { display:none } }
.cv2-unit__sub { font:400 10px/1 var(--f-body); color:var(--cv2-teal) }
.cv2-unit--loft { border:1px dashed var(--cv2-teal) }
.cv2-unit--sold { background:var(--cv2-dark); color:#F5F0E4 }
.cv2-unit--sold .cv2-unit__sub { color:var(--cv2-teal-line) }
.cv2-unit[aria-pressed="true"] { border:2px solid var(--cv2-red) }
.cv2-unit:hover { outline:1px solid var(--cv2-dark); outline-offset:-1px }
.cv2-block--dense .cv2-unit { font-size:11px; letter-spacing:0 }
/* big launches: block tabs, and each block's grid in a scroll box with sticky storey and stack labels */
.cv2-tabs { display:flex; flex-wrap:wrap; gap:6px; margin-top:20px }
.cv2-tab { min-height:40px; padding:0 14px; border:1px solid var(--cv2-line); background:transparent; color:var(--cv2-ink); font:700 10.5px/1.2 var(--f-body); letter-spacing:.12em; text-transform:uppercase; cursor:pointer; border-radius:0 }
.cv2-tab:hover { border-color:var(--cv2-dark) }
.cv2-tab[aria-selected="true"] { background:var(--cv2-dark); border-color:var(--cv2-dark); color:#F5F0E4 }
.cv2-blocks--tabbed { grid-template-columns:minmax(0,1fr); margin-top:18px }
.cv2-scroll { max-height:520px; overflow:auto; margin-top:14px; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; border-bottom:1px solid var(--cv2-line) }
.cv2-scroll:focus-visible { outline:2px solid var(--mango, #F5731E); outline-offset:2px }
.cv2-scroll .cv2-grid { margin-top:0; background:#F5F0E4 }
.cv2-scroll .cv2-grid__lbl { background:#F5F0E4; position:sticky; z-index:1 }
.cv2-scroll .cv2-grid__stack { top:0; box-shadow:0 3px 0 #F5F0E4 }
.cv2-scroll .cv2-grid__floor { left:0; box-shadow:3px 0 0 #F5F0E4 }
.cv2-scroll .cv2-grid__corner { top:0; left:0; z-index:2; box-shadow:3px 3px 0 #F5F0E4 }

/* everyday amenities */
.cv2-amen { display:grid; grid-template-columns:130px minmax(0,1fr) auto; gap:4px 16px; align-items:baseline; padding:12px 0; border-bottom:1px solid var(--cv2-rule) }
.cv2-amen__k { font:700 9.5px/1.3 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--cv2-faint) }
.cv2-amen__n { font:400 15px/1.3 var(--f-body); min-width:0 }
.cv2-amen__d { font:400 13.5px/1.3 var(--f-body); color:var(--cv2-body); text-align:right; white-space:nowrap }
.cv2-amen__d span { color:var(--cv2-muted) }

/* stack plan + unit details: details in a sticky column on desktop, a bottom sheet below 900px */
.cv2 [hidden] { display:none !important }
.cv2-stackwrap { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:28px 36px; align-items:start; margin-top:4px }
.cv2-stackplan { min-width:0 }
.cv2-detail { position:sticky; top:calc(var(--dir-head-h, 0px) + var(--dir-promo-h, 0px) + 16px); margin-top:22px; padding:16px 18px 18px; background:var(--cv2-card); border-top:2px solid var(--cv2-dark); max-height:calc(100vh - var(--dir-head-h, 0px) - var(--dir-promo-h, 0px) - 32px); overflow:auto; box-sizing:border-box }
.cv2-detail:focus { outline:none }
.cv2-detail__bar { display:none }
.cv2-detail__empty { font:400 14px/1.5 var(--f-body); color:var(--cv2-muted) }
.cv2-detail__where { font:700 9.5px/1.3 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--cv2-muted) }
.cv2-detail__title { font:400 23px/1.1 var(--f-display); letter-spacing:-.012em; margin:6px 0 0 }
.cv2-detail__rows { margin:12px 0 0 }
.cv2-detail__rows > div { display:flex; justify-content:space-between; align-items:baseline; gap:14px; padding:6px 0; border-bottom:1px solid var(--cv2-line); font:400 13px/1.4 var(--f-body) }
.cv2-detail__rows dt { flex:none; color:var(--cv2-muted) }
.cv2-detail__rows dd { margin:0; text-align:right; min-width:0 }
.cv2-detail__rows dd.is-sold { font-weight:700 }
.cv2-detail__img { margin:12px 0 0; background:#fff; border:1px solid var(--cv2-line) }
.cv2-detail__img img { display:block; width:100%; height:130px; object-fit:contain }
@media (max-width:899px) { .cv2-detail__img img { height:220px } }
.cv2-detail .cv2-panel__go { margin-top:12px; width:100%; box-sizing:border-box }
.cv2 .cv2-panel__go { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:44px; padding:0 20px; background:var(--cv2-dark); color:#F5F0E4; font:700 10.5px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase }
.cv2 .cv2-panel__go:hover { background:var(--cv2-teal); color:#F5F0E4 }
.cv2-backdrop { display:none }

@media (max-width:899px) {
  .cv2-stackwrap { grid-template-columns:minmax(0,1fr) }
  .cv2-detail { position:fixed; left:0; right:0; bottom:0; top:auto; z-index:10001; margin:0; max-height:70vh; overflow:auto; overscroll-behavior:contain;
    padding:6px 18px calc(20px + env(safe-area-inset-bottom, 0px)); border-top:0; box-shadow:0 -8px 30px rgba(32,27,22,.22);
    transform:translateY(105%); visibility:hidden; transition:transform .25s ease, visibility 0s linear .25s }
  .cv2-detail.is-open { transform:translateY(0); visibility:visible; transition:transform .25s ease }
  .cv2-detail__bar { display:flex; align-items:center; justify-content:center; position:sticky; top:-6px; margin:0 -18px 6px; padding:8px 18px 4px; background:var(--cv2-card) }
  .cv2-detail__grip { width:40px; height:4px; border-radius:2px; background:var(--cv2-line) }
  .cv2-detail__close { position:absolute; right:10px; top:2px; width:44px; height:44px; border:0; background:transparent; color:var(--cv2-ink); font:400 28px/1 var(--f-body); cursor:pointer }
  .cv2-detail__empty { display:none }
  .cv2-backdrop { display:block; position:fixed; inset:0; z-index:10000; background:rgba(32,27,22,.4); opacity:0; transition:opacity .25s ease }
  .cv2-backdrop.is-open { opacity:1 }
  html.cv2-sheet-open { overflow:hidden }
}
@media (prefers-reduced-motion:reduce) { .cv2-detail, .cv2-detail.is-open, .cv2-backdrop { transition:none } }

/* location */
.cv2-loc { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:28px 48px; margin-top:22px; align-items:start }
.cv2-loc--nomap { grid-template-columns:minmax(0,760px) }
.cv2-loc > div { min-width:0 }
.cv2-colh { font:700 10px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase; color:var(--cv2-muted); padding-bottom:10px; border-bottom:1px solid var(--cv2-dark) }
.cv2-colh--gap { margin-top:28px }
.cv2-mrt { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:48px; padding:8px 0; box-sizing:border-box; border-bottom:1px solid var(--cv2-rule) }
.cv2-mrt__name { display:flex; align-items:center; gap:10px; min-width:0; font:400 15px/1.3 var(--f-body) }
.cv2-mrt__lines { display:flex; gap:3px; flex:none }
.cv2-mrt__lines span { display:inline-flex; align-items:center; justify-content:center; min-width:26px; height:18px; padding:0 3px; box-sizing:border-box; color:#fff; font:700 9.5px/1 var(--f-body); letter-spacing:.06em }
.cv2-mrt__d { flex:none; font:400 13.5px/1.3 var(--f-body); color:var(--cv2-body); text-align:right }
.cv2-mrt__d span { color:var(--cv2-muted) }
.cv2-sch__g { font:700 9.5px/1.2 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--cv2-faint); padding:14px 0 4px }
.cv2-sch { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:44px; box-sizing:border-box; border-bottom:1px solid var(--cv2-rule) }
.cv2-sch__name { display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; min-width:0; font:400 15px/1.3 var(--f-body) }
.cv2-sch__d { flex:none; font:400 13.5px/1.3 var(--f-body); color:var(--cv2-body) }
.cv2-tag { display:inline-flex; align-items:center; gap:5px; font:700 9px/1 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--cv2-red) }
.cv2-tag i { width:6px; height:6px; background:#FC9046 }
.cv2-map { width:100%; aspect-ratio:4/3; background:var(--cv2-panel); border:1px solid var(--cv2-line); box-sizing:border-box; overflow:hidden }
.cv2-map img { display:block; width:100%; height:100%; object-fit:cover }
.cv2-map-fig { margin:0 }
.cv2-map-credit { font:400 11px/1.4 var(--f-body); color:var(--cv2-faint); margin-top:6px }
.cv2-map-credit a { color:inherit; border-bottom:1px solid var(--cv2-line) }

/* nearby */
.cv2-near { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:28px 40px; margin-top:22px }
.cv2-near > div { min-width:0 }
.cv2-near__i { display:flex; justify-content:space-between; align-items:baseline; gap:14px; padding:12px 0; border-bottom:1px solid var(--cv2-rule) }
.cv2-near__b { min-width:0 }
.cv2-near__n { font:400 19px/1.2 var(--f-display) }
a.cv2-near__i .cv2-near__n { border-bottom:1px solid var(--cv2-line) }
.cv2-near__m { display:block; font:400 12.5px/1.3 var(--f-body); color:var(--cv2-muted); margin-top:5px }
.cv2-near__v { flex:none; max-width:45%; text-align:right; font:700 13px/1.3 var(--f-body) }

/* from Stacked */
.cv2-articles { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:24px; margin-top:22px }
.cv2-article { display:block; border-top:1px solid var(--cv2-dark); padding-top:14px }
.cv2-article__k { display:block; font:700 9.5px/1.2 var(--f-body); letter-spacing:.14em; text-transform:uppercase; color:var(--cv2-red) }
.cv2-article__t { display:block; font:400 22px/1.15 var(--f-display); letter-spacing:-.01em; margin-top:8px }
.cv2-article__d { display:block; font:400 13.5px/1.45 var(--f-body); color:var(--cv2-muted); margin-top:6px }
.cv2-article__img { display:block; aspect-ratio:3/2; background:var(--cv2-panel); overflow:hidden }
.cv2-article__img img { display:block; width:100%; height:100%; object-fit:cover }
.cv2-article:hover .cv2-article__t { text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px }
.cv2-article__k { margin-top:14px }
.cv2-article__more { font:400 13.5px/1.45 var(--f-body); color:var(--cv2-muted); margin:18px 0 0 }

/* FAQ */
.cv2-faqs { margin-top:20px; border-top:1px solid var(--cv2-dark); max-width:860px }
.cv2-faq { border-bottom:1px solid var(--cv2-line) }
.cv2-faq summary { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:56px; padding:12px 0; box-sizing:border-box; cursor:pointer; list-style:none; font:400 20px/1.25 var(--f-display); color:var(--cv2-ink) }
.cv2-faq summary::-webkit-details-marker { display:none }
.cv2-faq summary i { flex:none; font:400 20px/1 var(--f-body); font-style:normal; color:var(--cv2-teal) }
.cv2-faq summary i::before { content:'+' }
.cv2-faq[open] summary i::before { content:'\2013' }
.cv2-faq p { font:400 15px/1.55 var(--f-body); color:var(--cv2-body); padding:0 0 18px; max-width:680px }

@media (max-width:960px) {
  .cv2-hero { grid-template-columns:minmax(0,1fr) }
}

@media (max-width:760px) {
  .cv2 { --cv2-gap:52px }
  .cv2-hero { padding-top:22px }
  .cv2-h1 { font-size:40px; line-height:1.04 }
  .cv2-h2 { font-size:30px; line-height:1.08 }
  .cv2-advisory { display:none }
  .cv2-m { display:inline }

  .cv2-chart { height:220px }
  .cv2-pt:not(.cv2-pt--first):not(.cv2-pt--last) span { display:none }
  .cv2-chart__yr b { display:none }
  .cv2-chart__yr em { display:inline }

  .cv2-sale { grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px 10px; padding:12px 0; font-size:14px }
  .cv2-bed { grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 12px; padding:12px 0; font-size:14px }
  .cv2-bed--head { display:none }
  .cv2-bed__t { grid-column:1 / -1 }
  .cv2-tab { min-height:36px; padding:0 11px }
  .cv2-sale--head { display:none }
  .cv2-sale__date { grid-column:1 / -1; font:700 9.5px/1.2 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--cv2-faint) }

  .cv2-cmp { grid-template-columns:minmax(0,1fr) auto }
  .cv2-cmp__bar { grid-column:1 / -1; grid-row:2 }

  .cv2-quiet { grid-template-columns:minmax(0,1fr) }

  .cv2-mix__head { display:none }
  .cv2-mix__main, .cv2-mix--nounits .cv2-mix__main { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:0 10px }
  .cv2-mix__main .cv2-d { display:none }
  .cv2-mix__name { font-size:23px }
  .cv2-mix__line { display:block; flex:1 0 100%; font:400 13.5px/1.5 var(--f-body); color:var(--cv2-body); margin-top:8px }

  .cv2-prog { grid-template-columns:repeat(3,minmax(0,1fr)) }

  .cv2-blocks { grid-template-columns:minmax(0,1fr) }
  .cv2-block--dense .cv2-unit__p, .cv2-block--dense .cv2-unit__sub { display:none }
  .cv2-block--dense .cv2-grid { grid-auto-rows:40px }
  .cv2-scroll { max-height:420px }
  .cv2-blocks--tabbed .cv2-block--dense .cv2-unit__p, .cv2-blocks--tabbed .cv2-block--dense .cv2-unit__sub { display:block }
  .cv2-blocks--tabbed .cv2-block--dense .cv2-grid { grid-auto-rows:56px }
  .cv2-blocks--tabbed .cv2-block--dense .cv2-grid:not(.cv2-grid--tall) { grid-auto-rows:46px }
  .cv2-amen { grid-template-columns:minmax(0,1fr) auto }
  .cv2-amen__k { grid-column:1 / -1 }

  .cv2-loc { grid-template-columns:minmax(0,1fr) }
  .cv2-near, .cv2-articles { grid-template-columns:minmax(0,1fr) }
  .cv2-faq summary { font-size:19px }
}

/* From Stacked on phones: a compact list, thumbnail beside the title */
@media (max-width:640px) {
  .cv2-articles { gap:0 }
  .cv2-article { display:grid; grid-template-columns:104px minmax(0,1fr); grid-template-rows:auto 1fr; column-gap:14px; padding:14px 0; border-top:1px solid var(--cv2-rule) }
  .cv2-article:first-child { border-top-color:var(--cv2-dark) }
  .cv2-article__img { grid-row:1 / span 2 }
  .cv2-article__k { margin-top:0 }
  .cv2-article__t { font-size:17px; line-height:1.2; margin-top:6px }
}

/* Sales by year: stacked bars per type of sale, a round axis, hover/focus tooltips, a table view */
.cv2-legend { display:flex; flex-wrap:wrap; gap:6px 18px; margin-top:12px; font:400 12.5px/1.2 var(--f-body); color:var(--cv2-muted) }
.cv2-legend span { display:inline-flex; align-items:center; gap:7px }
.cv2-legend i { width:10px; height:10px; border-radius:2px; display:inline-block }
.cv2-legend i.cv2-legend__ln { width:22px; height:0; border-radius:0; border-top:2px solid var(--c) }
.cv2-legend i.cv2-legend__ln--dash { border-top-style:dashed }
.cv2-vol { margin-top:18px; padding-left:44px }
.cv2-vol__plot { position:relative; height:190px; margin-bottom:28px }
.cv2-vol__grid { position:absolute; left:0; right:0; border-top:1px solid var(--cv2-rule) }
.cv2-vol__grid--base { border-top-color:var(--cv2-line) }
.cv2-vol__grid span { position:absolute; right:calc(100% + 10px); top:-7px; font:400 11px/1 var(--f-body); color:var(--cv2-faint); font-variant-numeric:tabular-nums; white-space:nowrap }
.cv2-vol__bars { position:absolute; inset:0; display:grid; grid-template-columns:repeat(var(--n), minmax(0, 1fr)); gap:4px }
.cv2-vol__col { position:relative; height:100%; margin:0; padding:0; border:0; background:transparent; cursor:default; display:flex; align-items:flex-end; justify-content:center }
.cv2-vol__col:hover .cv2-vol__stack, .cv2-vol__col:focus-visible .cv2-vol__stack { filter:brightness(1.08) }
.cv2-vol__col:focus-visible { outline:2px solid var(--mango, #F5731E); outline-offset:2px }
.cv2-vol__stack { width:min(100%, 34px); display:flex; flex-direction:column; gap:2px; min-height:0 }
.cv2-vol__stack i { display:block; width:100%; min-height:2px }
.cv2-vol__stack i:first-child { border-radius:4px 4px 0 0 }
.cv2-vol__val { position:absolute; left:50%; transform:translate(-50%, -4px); font:700 11.5px/1 var(--f-body); color:var(--cv2-ink); font-variant-numeric:tabular-nums; white-space:nowrap; pointer-events:none }
.cv2-vol__yr { position:absolute; top:calc(100% + 8px); left:50%; transform:translateX(-50%); font:400 11px/1 var(--f-body); color:var(--cv2-faint); font-variant-numeric:tabular-nums; white-space:nowrap }
.cv2-vol__tip { position:absolute; bottom:calc(100% + 8px); left:50%; transform:translateX(-50%); z-index:5; width:max-content; max-width:220px; padding:8px 10px; background:var(--cv2-dark); color:#F5F0E4; font:400 12px/1.35 var(--f-body); text-align:left; white-space:normal; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .12s }
.cv2-vol__col:hover .cv2-vol__tip, .cv2-vol__col:focus .cv2-vol__tip { opacity:1; visibility:visible }
.cv2-vol__col:first-child .cv2-vol__tip { left:0; transform:none }
.cv2-vol__col:last-child .cv2-vol__tip { left:auto; right:0; transform:none }
.cv2-vol__table { margin-top:6px; font:400 13px/1.4 var(--f-body) }
.cv2-vol__table summary { cursor:pointer; color:var(--cv2-teal); font-weight:700; font-size:12px; letter-spacing:.04em }
.cv2-vol__table table { border-collapse:collapse; margin-top:10px; font-variant-numeric:tabular-nums }
.cv2-vol__table th, .cv2-vol__table td { padding:6px 16px 6px 0; border-bottom:1px solid var(--cv2-rule); text-align:left }
.cv2-vol__table th { font:700 9.5px/1.2 var(--f-body); letter-spacing:.13em; text-transform:uppercase; color:var(--cv2-faint) }
@media (max-width:760px) {
  .cv2-vol { padding-left:34px }
  .cv2-vol__plot { height:150px }
  .cv2-vol__bars { gap:2px }
  .cv2-vol__yr--minor { display:none }
  .cv2-vol__yr { font-size:10px }
}
@media (prefers-reduced-motion:reduce) { .cv2-vol__tip { transition:none } }

/* recent sales: date, unit (#12-XX), size and bedrooms, price, $psf, type of sale */
.cv2-sale--6 { grid-template-columns:1.1fr .7fr 1.5fr 1fr 1fr .9fr; font-variant-numeric:tabular-nums }
.cv2-sale__unit { color:var(--cv2-muted) }
.cv2-sale__type { color:var(--cv2-muted); font-size:13px }
.cv2-table--cont { margin-top:0; border-top:0 }
.cv2-more-sales summary { cursor:pointer; margin-top:12px; color:var(--cv2-teal); font:700 12px/1.2 var(--f-body); letter-spacing:.04em }
@media (max-width:760px) {
  .cv2-sale--6 { grid-template-columns:repeat(3, minmax(0, 1fr)) }
  .cv2-sale--6 .cv2-sale__date { grid-column:1 / 3 }
  .cv2-sale--6 .cv2-sale__unit { grid-column:3; text-align:right; font:700 9.5px/1.2 var(--f-body); letter-spacing:.13em }
  .cv2-sale--6 .cv2-sale__type { grid-column:1 / -1; font-size:12px }
}

