/* Our Leaders. Follows URBAN_DESIGN_SYSTEM.md: no pills, no rounded portraits, negative
   tracking on headings, wide tracking on micro-labels, gold on dark only and bronze on
   light, breakpoints 1100px and 767px. Photo heights are fixed pixels, never
   aspect-ratio, which the Hub theme can drop. */
.urban-leaders{width:100%;max-width:none;color:#282726;background:#fff;font:400 15px/1.7 Manrope,sans-serif}
.urban-leaders,.urban-leaders *{box-sizing:border-box}
.urban-leaders h1,.urban-leaders h2,.urban-leaders h3,.urban-leaders p,.urban-leaders figure,.urban-leaders dl,.urban-leaders dd,.urban-leaders ol{margin:0;padding:0}
/* -webkit-text-fill-color resets the Hub theme's gradient heading treatment. */
.urban-leaders h1{color:#fff;-webkit-text-fill-color:#fff;font:700 46px/1.15 Sora,sans-serif;text-transform:uppercase;letter-spacing:-1px}
.urban-leaders h2{color:#282726;-webkit-text-fill-color:#282726;font:700 38px/1.2 Sora,sans-serif;letter-spacing:-1.1px}
.urban-leaders h3{color:#282726;-webkit-text-fill-color:#282726;font:600 18px/1.4 Sora,sans-serif;letter-spacing:-.4px}
.urban-leaders a{color:inherit;text-decoration:none}
.urban-leaders summary:focus-visible,.urban-leaders a:focus-visible{outline:2px solid #a57322;outline-offset:5px}
.urban-leaders img{display:block;max-width:100%;border:0;border-radius:0}
.urban-leaders .ul-wrap{max-width:1340px;width:96%;margin:0 auto}
.urban-leaders .ul-eyebrow{font:600 11px/1.5 Manrope,sans-serif;text-transform:uppercase;letter-spacing:2.4px;border:0;border-radius:0;background:none;padding:0;color:#686868}
.urban-leaders .ul-eyebrow-rule{letter-spacing:1.1px;margin-bottom:12px}
.urban-leaders .ul-role{margin-top:6px;color:#686868;font-size:12px;line-height:1.6;text-transform:uppercase;letter-spacing:1.6px}

/* Hero: left copy capped at 540px over a two-layer directional scrim. */
.urban-leaders .ul-hero{position:relative;isolation:isolate;min-height:80vh;display:flex;flex-direction:column;justify-content:space-between;gap:55px;padding:clamp(150px,16vw,235px) 5% 30px;color:#fff;background:#292a29;overflow:hidden}
.urban-leaders .ul-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.urban-leaders .ul-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.28) 48%,rgba(0,0,0,.06)),linear-gradient(0deg,rgba(0,0,0,.4),transparent 32%)}
.urban-leaders .ul-hero-copy{max-width:540px}
.urban-leaders .ul-hero .ul-eyebrow{color:#fff;margin-bottom:16px}
.urban-leaders .ul-hero-description{font:400 19px/1.35 Manrope,sans-serif;color:#fff;margin-top:16px}
/* Every page banner carries the brand line, same treatment as the About Us hero. */
.urban-leaders .ul-motto{font-size:11px;line-height:1.8;letter-spacing:2.4px;text-transform:uppercase;color:#efcb73;margin-top:26px}

/* Disclosure: a bare underlined label with a bronze sign, not a pill button. */
.urban-leaders .ul-profile{margin-top:18px}
.urban-leaders .ul-profile summary{display:inline-flex;align-items:center;gap:12px;cursor:pointer;font-size:14px;font-weight:600;line-height:1.6;list-style:none}
.urban-leaders .ul-profile summary::-webkit-details-marker{display:none}
.urban-leaders .ul-profile-label{border-bottom:1px solid #ba8a3d;padding-bottom:4px}
.urban-leaders .ul-profile summary::after{content:"+";font:400 25px/1 Manrope,sans-serif;color:#a57322;transition:transform .2s}
.urban-leaders .ul-profile[open] summary::after{content:"\2212"}
.urban-leaders .ul-profile summary:hover::after{transform:translateX(4px)}
.urban-leaders .ul-profile-body{display:grid;gap:14px;margin-top:18px;padding-top:18px;border-top:1px solid #e3e3e3;color:#505050}

/* Leadership chart: the original composition is kept exactly - a centred heading, then
   figure / chairman / statement across three columns with the chairman centred between
   them. Only the styling is new: bare labels, square portraits, bronze figures. */
.urban-leaders .ul-chart-section{background:#fff;padding:112px 0 116px}
.urban-leaders .ul-intro{padding:0 0 38px;display:flex;gap:32px;align-items:center}
.urban-leaders .ul-intro::before,.urban-leaders .ul-intro::after{content:"";height:1px;background:#e3e3e3;flex:1}
.urban-leaders .ul-intro h2{text-align:center;flex-shrink:0}
.urban-leaders .ul-chart-top{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start;gap:48px;padding:112px 20px 0}
.urban-leaders .ul-stat{justify-self:stretch;padding-top:26px;border-top:1px solid #e3e3e3}
/* The statement is a card, so it carries its own ground instead of a hairline. */
.urban-leaders .ul-statement{justify-self:stretch;background:#f7f4ef;border-radius:4px 4px 0 0;padding:30px 32px 34px}
.urban-leaders .ul-statement-icon{display:block;width:44px;height:44px;color:#94671e;margin-bottom:22px}
.urban-leaders .ul-statement-icon svg{width:100%;height:100%;display:block}
.urban-leaders .ul-stat-number{color:#94671e;font:600 clamp(32px,3.2vw,44px)/1 Manrope,sans-serif;letter-spacing:-1.4px;margin-bottom:16px;font-variant-numeric:tabular-nums}
.urban-leaders .ul-stat-number span{color:#c3b8ab;font-size:.62em;font-weight:400;letter-spacing:0}
.urban-leaders .ul-stat h3,.urban-leaders .ul-statement h3{margin-bottom:12px}
.urban-leaders .ul-stat>p:last-child,.urban-leaders .ul-statement>p:last-child{color:#505050}
.urban-leaders .ul-statement h3{margin-bottom:10px;font-size:17px}
.urban-leaders .ul-statement>p:last-child{font-size:14px;line-height:1.65}
.urban-leaders{--node-w:min(300px,calc((100vw - 124px)/4));--member-gap:36px}

/* Org-chart node: a card with the portrait as a circle overlapping its top edge, the
   reference layout. Circles and the softer 10px radius are a deliberate exception to the
   square-image rule, scoped to this component only. */
.urban-leaders .ul-node{position:relative;background:#fff;border:1px solid #e3e3e3;border-radius:10px;padding:84px 24px 28px;text-align:center}
.urban-leaders .ul-node-photo{position:absolute;top:-66px;left:50%;transform:translateX(-50%);width:132px;height:132px;border-radius:50%;overflow:hidden;background:#f7f4ef;box-shadow:0 0 0 5px #fff}
.urban-leaders .ul-node-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:50%}
.urban-leaders .ul-node-body h3{font-size:19px;line-height:1.4}
.urban-leaders .ul-chairman{width:var(--node-w);margin:0 auto;min-width:0}
.urban-leaders .ul-chairman .ul-profile summary{justify-content:center}
.urban-leaders .ul-chairman .ul-profile-body,
/* Connector: a stub down from the chairman, then a bracket whose rounded elbows drop
   into each member. Its width is centre-to-centre, so the drops land on their axes. */
.urban-leaders .ul-connector{display:flex;flex-direction:column;align-items:center;padding-top:30px}
.urban-leaders .ul-trunk{width:1px;height:34px;background:#ddd6cd}
.urban-leaders .ul-branch{width:calc(var(--node-w) + var(--member-gap));height:34px;border:1px solid #ddd6cd;border-bottom:0;border-radius:12px 12px 0 0}

/* Team row. */
.urban-leaders .ul-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.urban-leaders .ul-team{padding-top:0}
.urban-leaders .ul-team-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:56px var(--member-gap)}
.urban-leaders .ul-member{width:var(--node-w);min-width:0}
.urban-leaders .ul-node .ul-profile{margin-top:16px;padding-top:14px;border-top:1px solid #e3e3e3}
.urban-leaders .ul-node .ul-profile summary{justify-content:center;font-size:13px}
.urban-leaders .ul-node .ul-profile-body{font-size:14px}

/* Philosophy: sticky label column against the numbered principles. */
.urban-leaders .ul-philosophy{background:#f7f4ef;padding:96px 0 112px}
.urban-leaders .ul-philosophy-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px;align-items:start}
.urban-leaders .ul-philosophy-header{position:sticky;top:40px;align-self:start}
.urban-leaders .ul-philosophy-description{margin-top:20px;color:#505050;max-width:440px}
.urban-leaders .ul-principles{list-style:none}
.urban-leaders .ul-principles li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:26px;padding:26px 0;border-top:1px solid #e0d9d0}
.urban-leaders .ul-principles li:first-child{padding-top:0;border-top:0}
.urban-leaders .ul-principle-number{color:#94671e;font:600 15px/1.6 Manrope,sans-serif;letter-spacing:1.6px;padding-top:2px}
.urban-leaders .ul-principles p{margin-top:8px;color:#505050}

@media(max-width:1100px){
  .urban-leaders h2{font-size:30px;letter-spacing:-.7px}
  .urban-leaders h3{font-size:16px}
  .urban-leaders .ul-chart-top{gap:28px}
  .urban-leaders .ul-statement h3{font-size:16px}
  .urban-leaders{--member-gap:26px}
  .urban-leaders .ul-team-grid{gap:48px var(--member-gap)}
  .urban-leaders .ul-philosophy-layout{gap:36px}
}
@media(max-width:767px){
  .urban-leaders .ul-wrap{width:calc(100% - 40px)}
  .urban-leaders h1{font-size:37px;line-height:1.15;letter-spacing:-.8px}
  .urban-leaders h2{font-size:25px;letter-spacing:-.6px}
  .urban-leaders h3{font-size:18px}
  .urban-leaders .ul-eyebrow{font-size:10px;letter-spacing:2px}
  .urban-leaders .ul-hero{min-height:80vh;padding:135px 20px 24px;gap:65px}
  .urban-leaders .ul-hero-image{object-position:60% center}
  .urban-leaders .ul-hero-description{font-size:17px}
  .urban-leaders .ul-motto{font-size:10px;letter-spacing:2px}
  .urban-leaders .ul-chart-section{padding:64px 0 60px}
  .urban-leaders .ul-intro{padding:0 0 28px;gap:14px}
  .urban-leaders .ul-chart-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 22px;padding:84px 0 0}
  .urban-leaders .ul-chairman{grid-column:1/-1;grid-row:1;width:100%}
    .urban-leaders .ul-stat{padding-top:22px}
  .urban-leaders .ul-statement{padding:26px 24px 28px}
  .urban-leaders .ul-stat-number{font-size:34px;margin-bottom:12px}
  /* Cards stack, so the bracket collapses to a single trunk. */
  .urban-leaders{--node-w:min(340px,100%);--member-gap:22px}
  .urban-leaders .ul-team-grid{flex-direction:column;align-items:center;gap:64px}
  .urban-leaders .ul-branch{display:none}
  .urban-leaders .ul-trunk{height:48px}
  .urban-leaders .ul-connector{padding-top:26px}
  .urban-leaders .ul-node{padding:72px 20px 26px}
  .urban-leaders .ul-node-photo{top:-56px;width:112px;height:112px}
  .urban-leaders .ul-philosophy{padding:62px 0 70px}
  .urban-leaders .ul-philosophy-layout{grid-template-columns:1fr;gap:28px}
  .urban-leaders .ul-philosophy-header{position:static}
  .urban-leaders .ul-philosophy-description{max-width:none}
  .urban-leaders .ul-principles li{grid-template-columns:auto minmax(0,1fr);gap:18px;padding:20px 0}
}
@media(prefers-reduced-motion:reduce){.urban-leaders *{transition:none!important}}
/* Our Developments. Follows URBAN_DESIGN_SYSTEM.md: bare eyebrows, cards at
   4px 4px 0 0 with square images, negative tracking on headings, wide tracking on
   micro-labels, gold on dark only and bronze on light, breakpoints 1100px and 767px.
   Photo heights are fixed pixels, never aspect-ratio, which the Hub theme can drop. */
.urban-developments{width:100%;max-width:none;color:#282726;background:#fff;font:400 15px/1.7 Manrope,sans-serif;padding:0 0 116px}
.urban-developments,.urban-developments *{box-sizing:border-box}
.urban-developments h1,.urban-developments h2,.urban-developments h3,.urban-developments p,.urban-developments figure,.urban-developments dl,.urban-developments dd{margin:0;padding:0}
/* -webkit-text-fill-color resets the Hub theme's gradient heading treatment. */
.urban-developments h1{color:#fff;-webkit-text-fill-color:#fff;font:700 46px/1.15 Sora,sans-serif;text-transform:uppercase;letter-spacing:-1px}
.urban-developments h2{color:#282726;-webkit-text-fill-color:#282726;font:600 18px/1.4 Sora,sans-serif;letter-spacing:-.4px}
.urban-developments a{color:inherit;text-decoration:none}
.urban-developments a:focus-visible,.urban-developments button:focus-visible{outline:2px solid #a57322;outline-offset:5px}
.urban-developments img{display:block;max-width:100%;border:0;border-radius:0}
.urban-developments .ud-wrap{max-width:1340px;width:96%;margin:0 auto}
.urban-developments .ud-eyebrow{font:600 11px/1.5 Manrope,sans-serif;text-transform:uppercase;letter-spacing:2.4px;border:0;border-radius:0;background:none;padding:0}
.urban-developments [hidden]{display:none!important}
.urban-developments.urban-developments-section{background:transparent;padding:0}
.urban-developments-section .ud-wrap{width:100%;max-width:none}
.urban-developments-section .ud-categories{margin-top:0}

/* Banner: left copy capped at 540px over a two-layer directional scrim, 80vh, closing
   on the page's own three-part line. */
.urban-developments .ud-hero{position:relative;isolation:isolate;min-height:80vh;display:flex;flex-direction:column;justify-content:space-between;gap:55px;padding:clamp(150px,16vw,235px) 5% 30px;color:#fff;background:#292a29;overflow:hidden}
.urban-developments .ud-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 70%;z-index:-2}
.urban-developments .ud-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.28) 48%,rgba(0,0,0,.06)),linear-gradient(0deg,rgba(0,0,0,.4),transparent 32%)}
.urban-developments .ud-hero-copy{max-width:540px}
.urban-developments .ud-hero .ud-eyebrow{color:#fff;margin-bottom:16px}
.urban-developments .ud-hero-description{font:400 19px/1.35 Manrope,sans-serif;color:#fff;margin-top:16px}
.urban-developments .ud-motto{font-size:11px;line-height:1.8;letter-spacing:2.4px;text-transform:uppercase;color:#efcb73;margin-top:26px}

/* Category tabs: the homepage tab rail, so both places read the same. */
.urban-developments .ud-categories{display:flex;gap:26px;margin:72px 0 32px;border-bottom:1px solid #d5d5d5;overflow-x:auto}
.urban-developments .ud-categories button{appearance:none;flex:none;border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;box-shadow:none;padding:12px 25px;color:#686868;font:400 15px/1.5 Manrope,sans-serif;cursor:pointer;white-space:nowrap;text-transform:none;letter-spacing:0}
.urban-developments .ud-categories button[aria-selected="true"]{border-bottom-color:#b98529;color:#282726;font-weight:600}
.urban-developments .ud-categories button:hover{color:#282726;background:#efeae1}

/* Project cards: square photo, no shadow, top corners only. */
.urban-developments .ud-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.urban-developments .ud-card{background:#fff;min-width:0;border:1px solid #e3e3e3;border-radius:4px 4px 0 0;overflow:hidden;scroll-margin-top:100px}
.urban-developments .ud-photo{height:340px;overflow:hidden;background:#f7f4ef}
.urban-developments .ud-photo img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .3s}
.urban-developments .ud-card:hover .ud-photo img{transform:scale(1.025)}
.urban-developments .ud-content{padding:26px 28px 28px}
.urban-developments .ud-label{font:600 11px/1.5 Manrope,sans-serif;text-transform:uppercase;letter-spacing:2.4px;color:#686868;margin-bottom:8px}
.urban-developments .ud-location{margin-top:6px;color:#717171;font-size:12px;line-height:1.7}
.urban-developments .ud-status{margin-top:8px;color:#94671e;font:600 12px/1.6 Manrope,sans-serif;letter-spacing:1.4px;text-transform:uppercase}
.urban-developments .ud-status::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#94671e;margin-right:9px;vertical-align:middle}
.urban-developments .ud-facts{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;margin:18px 0;padding:16px 0;border-top:1px solid #e3e3e3;border-bottom:1px solid #e3e3e3}
.urban-developments .ud-type{grid-column:1/-1}
.urban-developments dt{font:600 11px/1.5 Manrope,sans-serif;text-transform:uppercase;letter-spacing:1.6px;color:#686868;margin-bottom:3px}
.urban-developments dd{font:600 16px/1.4 Sora,sans-serif;letter-spacing:-.4px;color:#282726}
.urban-developments .ud-type dd{font:400 14px/1.55 Manrope,sans-serif}
.urban-developments dd small{font:400 12px/1.6 Manrope,sans-serif;color:#686868}
.urban-developments .ud-card-end{display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:12px;color:#686868}
.urban-developments .ud-link{display:inline-flex;align-items:center;gap:12px;font-size:12px;font-weight:600;line-height:1.6;color:#282726;flex:none}
.urban-developments .ud-link-label{border-bottom:1px solid #ba8a3d;padding-bottom:4px}
.urban-developments .ud-link>span[aria-hidden]{font-size:18px;font-weight:400;color:#94671e;transition:transform .2s}
.urban-developments .ud-link:hover>span[aria-hidden]{transform:translateX(4px)}
.urban-developments .ud-empty{padding:50px 0;min-height:230px;color:#626262}

@media(max-width:1100px){
  .urban-developments h2{font-size:17px}
  .urban-developments .ud-photo{height:290px}
  .urban-developments .ud-content{padding:24px 24px 26px}
  .urban-developments dd{font-size:15px}
}
@media(max-width:767px){
  .urban-developments{padding:0 0 70px}
  .urban-developments .ud-wrap{width:calc(100% - 40px)}
  .urban-developments h1{font-size:37px;line-height:1.15;letter-spacing:-.8px}
  .urban-developments h2{font-size:16px}
  .urban-developments .ud-eyebrow{font-size:10px;letter-spacing:2px}
  .urban-developments .ud-hero{min-height:80vh;padding:135px 20px 24px;gap:65px}
  .urban-developments .ud-hero-image{object-position:60% center}
  .urban-developments .ud-hero-description{font-size:17px}
  .urban-developments .ud-motto{font-size:10px;letter-spacing:2px}
  .urban-developments .ud-categories{gap:8px;margin:48px 0 25px}
  .urban-developments .ud-categories button{font-size:13px;padding:12px 10px}
  .urban-developments .ud-grid{grid-template-columns:1fr;gap:22px}
  .urban-developments .ud-photo{height:240px}
  .urban-developments .ud-facts{grid-template-columns:1fr;gap:16px}
  .urban-developments .ud-card-end{align-items:flex-start;flex-direction:column;gap:14px}
}
@media(prefers-reduced-motion:reduce){.urban-developments *{transition:none!important}}
/* Smart Living. Follows URBAN_DESIGN_SYSTEM.md: bare eyebrows, cards at 4px 4px 0 0 with
   square images and no shadow, negative tracking on headings, wide tracking on
   micro-labels, gold on dark only and bronze on light, breakpoints 1100px and 767px.
   Photo heights are fixed pixels, never aspect-ratio, which the Hub theme can drop. */
.urban-smart{width:100%;max-width:none;color:#282726;background:#fff;font:400 15px/1.7 Manrope,sans-serif;padding:0 0 116px}
.urban-smart,.urban-smart *{box-sizing:border-box}
.urban-smart h1,.urban-smart h2,.urban-smart p,.urban-smart figure,.urban-smart ul{margin:0;padding:0}
/* -webkit-text-fill-color resets the Hub theme's gradient heading treatment. */
.urban-smart h1{color:#fff;-webkit-text-fill-color:#fff;font:700 46px/1.15 Sora,sans-serif;text-transform:uppercase;letter-spacing:-1px}
.urban-smart h2{color:#282726;-webkit-text-fill-color:#282726;font:600 18px/1.4 Sora,sans-serif;letter-spacing:-.4px}
.urban-smart img{display:block;max-width:100%;border:0;border-radius:0}
.urban-smart .us-wrap{max-width:1340px;width:96%;margin:0 auto}
.urban-smart .us-eyebrow{font:600 11px/1.5 Manrope,sans-serif;text-transform:uppercase;letter-spacing:2.4px;border:0;border-radius:0;background:none;padding:0}
.urban-smart.urban-smart-section{background:transparent;padding:0}
.urban-smart.urban-smart-section .us-panel{margin-top:0}

/* Banner: left copy capped at 540px over a two-layer directional scrim, 80vh, closing on
   the page's own three-part line. */
.urban-smart .us-hero{position:relative;isolation:isolate;min-height:80vh;display:flex;flex-direction:column;justify-content:space-between;gap:55px;padding:clamp(150px,16vw,235px) 5% 30px;color:#fff;background:#292a29;overflow:hidden}
.urban-smart .us-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%;z-index:-2}
.urban-smart .us-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.28) 48%,rgba(0,0,0,.06)),linear-gradient(0deg,rgba(0,0,0,.4),transparent 32%)}
.urban-smart .us-hero-copy{max-width:540px}
.urban-smart .us-hero .us-eyebrow{color:#fff;margin-bottom:16px}
.urban-smart .us-hero-description{font:400 19px/1.35 Manrope,sans-serif;color:#fff;margin-top:16px}
.urban-smart .us-motto{font-size:11px;line-height:1.8;letter-spacing:2.4px;text-transform:uppercase;color:#efcb73;margin-top:26px}

/* Six capability cards. The icon is a plain bronze glyph above the title, the same
   treatment as the About Us expertise icon - no medallion, no ring, no shadow. */
.urban-smart .us-panel{list-style:none;margin:96px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.urban-smart .us-item{display:flex;flex-direction:column;background:#fff;border:1px solid #e3e3e3;border-radius:4px 4px 0 0;overflow:hidden}
.urban-smart .us-photo{height:200px;overflow:hidden;background:#f7f4ef}
.urban-smart .us-photo img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .3s}
.urban-smart .us-item:hover .us-photo img{transform:scale(1.025)}
.urban-smart .us-body{display:flex;flex-direction:column;flex:1;padding:26px 26px 24px}
.urban-smart .us-icon-frame{display:block;width:40px;height:40px;color:#94671e}
.urban-smart .us-icon{display:block;width:100%;height:100%}
.urban-smart .us-item h2{margin-top:20px}
.urban-smart .us-description{margin-top:8px;color:#505050;font-size:14px;line-height:1.6}
/* The keyword list is the card's footnote, not its content: it sits on a hairline at the
   foot of the card so every card ends on the same line whatever the sentence length. */
.urban-smart .us-detail{margin-top:auto;padding-top:16px;color:#686868;font:600 11px/1.6 Manrope,sans-serif;text-transform:uppercase;letter-spacing:1.6px}
.urban-smart .us-detail span+span::before{content:"";display:inline-block;width:3px;height:3px;border-radius:50%;background:#94671e;margin:0 9px;vertical-align:2px}

@media(max-width:1100px){
  .urban-smart h2{font-size:17px}
  .urban-smart .us-panel{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:72px;gap:20px}
  .urban-smart .us-photo{height:180px}
  .urban-smart .us-body{padding:22px 22px 24px}
}
@media(max-width:767px){
  .urban-smart{padding:0 0 70px}
  .urban-smart .us-wrap{width:calc(100% - 40px)}
  .urban-smart h1{font-size:37px;line-height:1.15;letter-spacing:-.8px}
  .urban-smart h2{font-size:16px}
  .urban-smart .us-eyebrow{font-size:10px;letter-spacing:2px}
  .urban-smart .us-hero{min-height:80vh;padding:135px 20px 24px;gap:65px}
  .urban-smart .us-hero-image{object-position:60% center}
  .urban-smart .us-hero-description{font-size:17px}
  .urban-smart .us-motto{font-size:10px;letter-spacing:2px}
  .urban-smart .us-panel{grid-template-columns:1fr;margin-top:56px;gap:22px}
  .urban-smart .us-photo{height:210px}
  .urban-smart .us-icon-frame{width:36px;height:36px}
}
@media(prefers-reduced-motion:reduce){.urban-smart *{transition:none!important}}
/* Sustainability. Follows URBAN_DESIGN_SYSTEM.md: bare eyebrows, 4px 4px 0 0 cards with
   square images and no shadow, negative tracking on headings, wide tracking on
   micro-labels, gold on dark only and bronze on light, breakpoints 1100px and 767px.
   Photo heights are fixed pixels, never aspect-ratio, which the Hub theme can drop. */
.urban-sustain{width:100%;max-width:none;color:#282726;background:#fff;font:400 15px/1.7 Manrope,sans-serif;padding:0 0 116px}
.urban-sustain,.urban-sustain *{box-sizing:border-box}
.urban-sustain h1,.urban-sustain h2,.urban-sustain h3,.urban-sustain p,.urban-sustain figure{margin:0;padding:0}
/* -webkit-text-fill-color resets the Hub theme's gradient heading treatment. */
.urban-sustain h1{color:#fff;-webkit-text-fill-color:#fff;font:700 46px/1.15 Sora,sans-serif;text-transform:uppercase;letter-spacing:-1px}
.urban-sustain h2{color:#282726;-webkit-text-fill-color:#282726;font:700 38px/1.2 Sora,sans-serif;letter-spacing:-1.1px}
.urban-sustain h3{color:#282726;-webkit-text-fill-color:#282726;font:600 18px/1.4 Sora,sans-serif;letter-spacing:-.4px}
.urban-sustain img{display:block;max-width:100%;border:0;border-radius:0}
.urban-sustain .su-wrap{max-width:1340px;width:96%;margin:0 auto}
.urban-sustain .su-eyebrow,.urban-sustain .su-label{display:block;font:600 11px/1.5 Manrope,sans-serif;text-transform:uppercase;letter-spacing:2.4px;color:#686868;border:0;border-radius:0;background:none;padding:0;margin-bottom:12px}
.urban-sustain.urban-sustain-section{background:transparent;padding:0}

/* Banner: left copy capped at 540px over a two-layer directional scrim, 80vh, closing on
   the page's own three-part line. */
.urban-sustain .su-hero{position:relative;isolation:isolate;min-height:80vh;display:flex;flex-direction:column;justify-content:space-between;gap:55px;padding:clamp(150px,16vw,235px) 5% 30px;color:#fff;background:#292a29;overflow:hidden}
.urban-sustain .su-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.urban-sustain .su-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.28) 48%,rgba(0,0,0,.06)),linear-gradient(0deg,rgba(0,0,0,.4),transparent 32%)}
.urban-sustain .su-hero-copy{max-width:540px}
.urban-sustain .su-hero .su-eyebrow{color:#fff;margin-bottom:16px}
.urban-sustain .su-hero-description{font:400 19px/1.35 Manrope,sans-serif;color:#fff;margin-top:16px}
.urban-sustain .su-motto{font-size:11px;line-height:1.8;letter-spacing:2.4px;text-transform:uppercase;color:#efcb73;margin-top:26px}

/* Award: the badge is the link. Typographic, no third-party award artwork. */
/* The trophy photograph rides above the card's top edge, as originally composed. The
   card sits on sand so it still reads against the white page. */
.urban-sustain .su-award{display:grid;grid-template-columns:520px 1fr;gap:70px;align-items:start;padding-top:190px}
.urban-sustain .su-badge{position:relative;overflow:visible;text-decoration:none;color:inherit;background:#f7f4ef;border:1px solid #e3e3e3;border-radius:4px 4px 0 0;display:grid;grid-template-columns:140px 1fr;gap:28px;align-items:center;text-align:left;min-height:258px;padding:36px 32px 34px}
.urban-sustain .su-badge:focus-visible{outline:2px solid #a57322;outline-offset:5px}
.urban-sustain .su-badge-mark{position:absolute;left:-3px;top:-150px;width:210px;z-index:2}
.urban-sustain .su-badge-mark img{width:100%;height:auto}
.urban-sustain .su-badge-body{grid-column:2}
.urban-sustain .su-badge-tier{display:block;color:#282726;font:700 25px/1.15 Sora,sans-serif;letter-spacing:-.6px;text-transform:uppercase}
.urban-sustain .su-badge-award{display:block;margin-top:8px;color:#94671e;font:600 11px/1.6 Manrope,sans-serif;letter-spacing:2.4px;text-transform:uppercase}
.urban-sustain .su-badge-rule{display:block;width:100%;height:1px;background:#ddd6cd;margin:20px 0 18px}
.urban-sustain .su-badge-catlabel{display:block;color:#686868;font:600 11px/1.5 Manrope,sans-serif;letter-spacing:1.6px;text-transform:uppercase;margin-bottom:4px}
.urban-sustain .su-badge-cat{display:block;color:#282726;font:600 16px/1.5 Sora,sans-serif;letter-spacing:-.3px}
.urban-sustain .su-badge-link{display:inline-flex;align-items:center;gap:12px;margin-top:22px;font-size:12px;font-weight:600;color:#282726}
.urban-sustain .su-badge-link-label{border-bottom:1px solid #ba8a3d;padding-bottom:4px}
.urban-sustain .su-badge-link>span[aria-hidden]{font-size:18px;font-weight:400;color:#94671e;transition:transform .2s}
.urban-sustain .su-badge:hover .su-badge-link>span[aria-hidden]{transform:translateX(4px)}
.urban-sustain .su-award-copy{padding-left:80px}
.urban-sustain .su-award-copy p{max-width:660px;color:#505050}
.urban-sustain .su-award-copy p:first-of-type{font:400 19px/1.55 Manrope,sans-serif;color:#282726}
.urban-sustain .su-award-copy p+p{margin-top:16px}

/* Reporting disclosures, grouped by subject, beside the photograph. */
.urban-sustain .su-report{padding-top:116px}
.urban-sustain .su-report-heading{max-width:770px;margin-bottom:46px}
.urban-sustain .su-report-heading>p{margin-top:20px;color:#505050;max-width:620px}
.urban-sustain .su-report-layout{display:grid;grid-template-columns:1fr 420px;gap:70px;align-items:stretch}
/* A grid item defaults to min-width:auto and can be pushed wider by its content. */
.urban-sustain .su-report-main{min-width:0}
.urban-sustain .su-report-figure{overflow:hidden;background:#f7f4ef;min-height:520px}
.urban-sustain .su-report-figure img{width:100%;height:100%;object-fit:cover;object-position:center 35%}
.urban-sustain .su-groups{display:grid;grid-template-columns:1fr;gap:40px;align-items:start}
.urban-sustain .su-group>h3{font:600 11px/1.5 Manrope,sans-serif;text-transform:uppercase;letter-spacing:2.4px;color:#94671e;margin-bottom:14px}
.urban-sustain details{border-top:1px solid #e3e3e3}
.urban-sustain .su-group details:last-child{border-bottom:1px solid #e3e3e3}
.urban-sustain summary{position:relative;cursor:pointer;list-style:none;padding:18px 44px 18px 0;color:#282726;font:600 15px/1.5 Sora,sans-serif;letter-spacing:-.2px}
.urban-sustain summary::-webkit-details-marker{display:none}
.urban-sustain summary::after{content:"";position:absolute;right:8px;top:50%;width:9px;height:9px;margin-top:-6px;border-right:1.5px solid #94671e;border-bottom:1.5px solid #94671e;transform:rotate(45deg);transition:transform .3s}
.urban-sustain details[open] summary::after{transform:rotate(-135deg);margin-top:-3px}
.urban-sustain summary:focus-visible{outline:2px solid #a57322;outline-offset:3px}
.urban-sustain details>div{padding:0 44px 22px 0;color:#505050}
.urban-sustain details>div p+p{margin-top:14px}
.urban-sustain details a{color:#94671e;border-bottom:1px solid #ba8a3d;padding-bottom:2px}

@media(max-width:1100px){
  .urban-sustain h2{font-size:30px;letter-spacing:-.7px}
  .urban-sustain h3{font-size:16px}
  .urban-sustain .su-award{grid-template-columns:400px 1fr;gap:48px;padding-top:168px}
  .urban-sustain .su-award-copy{padding-left:40px}
  .urban-sustain .su-badge{grid-template-columns:120px 1fr;gap:22px;min-height:226px;padding:32px 26px 30px}
  .urban-sustain .su-badge-mark{width:180px;top:-128px;left:-4px}
  .urban-sustain .su-report{padding-top:88px}
  .urban-sustain .su-report-layout{grid-template-columns:1fr 320px;gap:44px}
  .urban-sustain .su-report-figure{min-height:440px}
  .urban-sustain .su-groups{gap:34px}
}
@media(max-width:767px){
  .urban-sustain{padding:0 0 70px}
  .urban-sustain .su-wrap{width:calc(100% - 40px)}
  .urban-sustain h1{font-size:37px;line-height:1.15;letter-spacing:-.8px}
  .urban-sustain h2{font-size:25px;letter-spacing:-.6px}
  .urban-sustain h3{font-size:18px}
  .urban-sustain .su-eyebrow,.urban-sustain .su-label{font-size:10px;letter-spacing:2px}
  .urban-sustain .su-hero{min-height:80vh;padding:135px 20px 24px;gap:65px}
  .urban-sustain .su-hero-image{object-position:60% center}
  .urban-sustain .su-hero-description{font-size:17px}
  .urban-sustain .su-motto{font-size:10px;letter-spacing:2px}
  .urban-sustain .su-award{grid-template-columns:1fr;gap:30px;padding-top:150px}
  .urban-sustain .su-award-copy{padding-left:0}
  .urban-sustain .su-award-copy p:first-of-type{font-size:17px}
  .urban-sustain .su-badge{grid-template-columns:104px 1fr;gap:18px;min-height:200px;padding:28px 22px 26px}
  .urban-sustain .su-badge-mark{width:158px;top:-112px;left:-14px}
  .urban-sustain .su-badge-tier{font-size:21px}
  .urban-sustain .su-report{padding-top:62px}
  .urban-sustain .su-report-heading{margin-bottom:34px}
  .urban-sustain .su-report-layout{grid-template-columns:1fr;gap:34px}
  .urban-sustain .su-report-figure{min-height:300px}
  .urban-sustain .su-groups{gap:30px}
}
@media(prefers-reduced-motion:reduce){.urban-sustain *{transition:none!important}}
/* Our Partners. Follows URBAN_DESIGN_SYSTEM.md: bare eyebrows, square images, negative
   tracking on headings, wide tracking on micro-labels, gold on dark only and bronze on
   light, breakpoints 1100px and 767px. Photo heights are fixed pixels, never
   aspect-ratio, which the Hub theme can drop. */
.urban-partners{width:100%;max-width:none;color:#282726;background:#fff;font:400 15px/1.7 Manrope,sans-serif;padding:0 0 116px}
.urban-partners,.urban-partners *{box-sizing:border-box}
.urban-partners h1,.urban-partners h2,.urban-partners h3,.urban-partners p,.urban-partners figure,.urban-partners ol{margin:0;padding:0}
/* -webkit-text-fill-color resets the Hub theme's gradient heading treatment. */
.urban-partners h1{color:#fff;-webkit-text-fill-color:#fff;font:700 46px/1.15 Sora,sans-serif;text-transform:uppercase;letter-spacing:-1px}
.urban-partners h2{color:#282726;-webkit-text-fill-color:#282726;font:700 38px/1.2 Sora,sans-serif;letter-spacing:-1.1px}
.urban-partners h3{color:#282726;-webkit-text-fill-color:#282726;font:600 18px/1.4 Sora,sans-serif;letter-spacing:-.4px}
.urban-partners img{display:block;max-width:100%;border:0;border-radius:0}
.urban-partners .pt-wrap{max-width:1340px;width:96%;margin:0 auto}
.urban-partners .pt-eyebrow,.urban-partners .pt-label{display:block;font:600 11px/1.5 Manrope,sans-serif;text-transform:uppercase;letter-spacing:2.4px;color:#686868;border:0;border-radius:0;background:none;padding:0;margin-bottom:12px}
.urban-partners.urban-partners-section{background:transparent;padding:0}

/* Banner: left copy capped at 540px over a two-layer directional scrim, 80vh, closing on
   the page's own three-part line. The scrim works at every width, so the separate
   top-to-bottom mobile wash the old hero needed is gone. */
.urban-partners .pt-hero{position:relative;isolation:isolate;min-height:80vh;display:flex;flex-direction:column;justify-content:space-between;gap:55px;padding:clamp(150px,16vw,235px) 5% 30px;color:#fff;background:#292a29;overflow:hidden}
.urban-partners .pt-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;z-index:-2}
.urban-partners .pt-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.28) 48%,rgba(0,0,0,.06)),linear-gradient(0deg,rgba(0,0,0,.4),transparent 32%)}
.urban-partners .pt-hero-copy{max-width:540px}
.urban-partners .pt-hero .pt-eyebrow{color:#fff;margin-bottom:16px}
.urban-partners .pt-hero-description{font:400 19px/1.35 Manrope,sans-serif;color:#fff;margin-top:16px}
.urban-partners .pt-motto{font-size:11px;line-height:1.8;letter-spacing:2.4px;text-transform:uppercase;color:#efcb73;margin-top:26px}

/* Five partner types as editorial rows, not a card grid: five does not divide evenly
   into three columns, and rows keep this page distinct from Smart Living. */
.urban-partners .pt-models{padding-top:112px}
.urban-partners .pt-models-heading{margin-bottom:44px}
.urban-partners .pt-models-heading h2{max-width:700px}
.urban-partners .pt-layout{display:grid;grid-template-columns:1fr 440px;gap:64px;align-items:stretch}
.urban-partners .pt-main{min-width:0}
.urban-partners .pt-figure{overflow:hidden;background:#f7f4ef;min-height:620px}
.urban-partners .pt-figure img{width:100%;height:100%;object-fit:cover;object-position:44% 60%}
.urban-partners .pt-list{list-style:none;border-top:1px solid #e3e3e3}
.urban-partners .pt-row{display:grid;grid-template-columns:64px 240px 1fr;gap:28px;align-items:baseline;padding:30px 8px 30px 0;border-bottom:1px solid #e3e3e3;transition:background .25s}
.urban-partners .pt-row:hover{background:#f7f4ef}
.urban-partners .pt-index{color:#94671e;font:600 11px/1.5 Manrope,sans-serif;letter-spacing:2.4px}
.urban-partners .pt-row p{color:#505050;max-width:620px}

@media(max-width:1100px){
  .urban-partners h2{font-size:30px;letter-spacing:-.7px}
  .urban-partners h3{font-size:16px}
  .urban-partners .pt-models{padding-top:88px}
  .urban-partners .pt-layout{grid-template-columns:1fr 300px;gap:44px}
  .urban-partners .pt-figure{min-height:520px}
  .urban-partners .pt-row{grid-template-columns:52px 180px 1fr;gap:20px;padding:26px 4px 26px 0}
}
@media(max-width:767px){
  .urban-partners{padding:0 0 70px}
  .urban-partners .pt-wrap{width:calc(100% - 40px)}
  .urban-partners h1{font-size:37px;line-height:1.15;letter-spacing:-.8px}
  .urban-partners h2{font-size:25px;letter-spacing:-.6px}
  .urban-partners h3{font-size:18px}
  .urban-partners .pt-eyebrow,.urban-partners .pt-label{font-size:10px;letter-spacing:2px}
  .urban-partners .pt-hero{min-height:80vh;padding:135px 20px 24px;gap:65px}
  .urban-partners .pt-hero-image{object-position:60% center}
  .urban-partners .pt-hero-description{font-size:17px}
  .urban-partners .pt-motto{font-size:10px;letter-spacing:2px}
  .urban-partners .pt-models{padding-top:62px}
  .urban-partners .pt-models-heading{margin-bottom:32px}
  .urban-partners .pt-layout{grid-template-columns:1fr;gap:34px}
  .urban-partners .pt-figure{min-height:300px}
  .urban-partners .pt-row{grid-template-columns:44px 1fr;gap:6px 16px;padding:24px 0}
  .urban-partners .pt-row p{grid-column:2}
}
@media(prefers-reduced-motion:reduce){.urban-partners *{transition:none!important}}
/* About Us. Follows URBAN_DESIGN_SYSTEM.md exactly: no pills, 4px top-corner radius,
   negative tracking on headings, wide tracking on micro-labels, gold on dark only,
   bronze on light. Breakpoints 1100px and 767px. */
.urban-about{width:100%;max-width:none;color:#282726;background:#fff;font:400 15px/1.7 Manrope,sans-serif}
.urban-about,.urban-about *{box-sizing:border-box}
.urban-about h1,.urban-about h2,.urban-about h3,.urban-about p,.urban-about figure,.urban-about dl,.urban-about dd{margin:0;padding:0}
/* -webkit-text-fill-color resets the Hub theme's gradient heading treatment. */
.urban-about h1{color:#fff;-webkit-text-fill-color:#fff;font:700 46px/1.15 Sora,sans-serif;text-transform:uppercase;letter-spacing:-1px}
.urban-about h2{color:#282726;-webkit-text-fill-color:#282726;font:700 38px/1.2 Sora,sans-serif;letter-spacing:-1.1px}
.urban-about h3{color:#282726;-webkit-text-fill-color:#282726;font:600 18px/1.4 Sora,sans-serif;letter-spacing:-.4px}
.urban-about a{color:inherit;text-decoration:none}
.urban-about a:focus-visible{outline:2px solid #a57322;outline-offset:5px}
.urban-about img{display:block;max-width:100%;border:0;border-radius:0}
.urban-about .ua-wrap{max-width:1340px;width:96%;margin:0 auto}
.urban-about .ua-eyebrow{font:600 11px/1.5 Manrope,sans-serif;text-transform:uppercase;letter-spacing:2.4px;border:0;border-radius:0;background:none;padding:0;color:#686868}
.urban-about .ua-eyebrow-rule{letter-spacing:1.1px;margin-bottom:12px}

/* Hero: same composition as the homepage hero - left copy capped at 540px over a
   two-layer directional scrim, never a flat overlay. */
.urban-about .ua-hero{position:relative;isolation:isolate;min-height:80vh;display:flex;flex-direction:column;justify-content:space-between;gap:55px;padding:clamp(150px,16vw,235px) 5% 30px;color:#fff;background:#292a29;overflow:hidden}
.urban-about .ua-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.urban-about .ua-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.28) 48%,rgba(0,0,0,.06)),linear-gradient(0deg,rgba(0,0,0,.4),transparent 32%)}
.urban-about .ua-hero-copy{max-width:540px}
.urban-about .ua-hero .ua-eyebrow{color:#fff;margin-bottom:16px}
.urban-about .ua-hero-description{font:400 19px/1.35 Manrope,sans-serif;color:#fff;margin-top:16px}
.urban-about .ua-motto{font-size:11px;line-height:1.8;letter-spacing:2.4px;text-transform:uppercase;color:#efcb73;margin-top:26px}

/* Positioning statement: a single side-by-side row. The copy column drives the height,
   the facts sit at its foot via margin-top:auto, and the photo stretches to match - so
   there is no dead space above or below it, and no runaway image height. */
.urban-about .ua-intro{background:#fff;padding:112px 0 106px}
.urban-about .ua-intro-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:56px;align-items:stretch}
.urban-about .ua-intro-copy{display:flex;flex-direction:column;justify-content:flex-start}
.urban-about .ua-intro-copy h2{margin-bottom:22px}
.urban-about .ua-lead{font:400 19px/1.55 Manrope,sans-serif;color:#282726}
.urban-about .ua-intro-body{margin-top:20px;color:#505050}
.urban-about .ua-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:auto;padding-top:30px;border-top:1px solid #e3e3e3}
.urban-about .ua-fact{padding-right:22px}
.urban-about .ua-fact+.ua-fact{padding-left:22px;border-left:1px solid #e3e3e3}
.urban-about .ua-facts dt{color:#94671e;font:600 clamp(24px,2.4vw,32px)/1.15 Manrope,sans-serif;letter-spacing:-1px;white-space:nowrap}
.urban-about .ua-facts dd{margin-top:6px;color:#686868;font-size:12px;line-height:1.5}
.urban-about .ua-intro-figure{min-height:540px}
.urban-about .ua-intro-figure img{width:100%;height:100%;object-fit:cover;object-position:center}

/* Integrated platform: three photographed pillars on a flat dark ground. The ground is
   solid rather than photographic now that each pillar carries its own image, and the
   hairline dividers are gone because the photographs already set the column rhythm. */
.urban-about .ua-platform{padding:92px 0 96px;color:#fff;background:#191b1a}
.urban-about .ua-platform .ua-eyebrow{color:#efcb73;margin-bottom:34px}
.urban-about .ua-platform-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:28px}
.urban-about .ua-pillar-photo{height:190px;overflow:hidden}
.urban-about .ua-pillar-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
/* Each pillar photo is framed on its own subject: the development itself, the facade of a
   held building, and the operations dashboard. */
.urban-about .ua-pillar:nth-child(1) .ua-pillar-photo img{object-position:center 62%}
.urban-about .ua-pillar:nth-child(2) .ua-pillar-photo img{object-position:center 38%}
.urban-about .ua-pillar:nth-child(3) .ua-pillar-photo img{object-position:center 40%}
.urban-about .ua-pillar h3{margin-top:22px;padding-top:16px;border-top:1px solid #4a4640;color:#efcb73;-webkit-text-fill-color:#efcb73;text-transform:uppercase;letter-spacing:2.4px;font:600 18px/1.4 Sora,sans-serif}
.urban-about .ua-pillar p{color:#fff;font-size:16px;line-height:1.5;margin-top:10px}

/* Approach: three typographic cards. The numeral reuses the impact-strip numeral
   treatment, recoloured to bronze because it now sits on a light ground. */
.urban-about .ua-approach{padding:96px 0 116px;background:#f7f4ef}
.urban-about .ua-approach h2{margin-bottom:32px}
.urban-about .ua-approach-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.urban-about .ua-card{background:#fff;min-width:0;border-radius:4px 4px 0 0;padding:32px 30px 36px}
.urban-about .ua-index{display:block;color:#94671e;font:600 clamp(34px,4.8vw,68px)/1.15 Manrope,sans-serif;letter-spacing:-2px}
.urban-about .ua-card h3{margin-top:14px;padding-top:14px;border-top:1px solid #e3e3e3}
.urban-about .ua-card p{color:#505050;margin-top:10px}

/* Our Story: the split section, mirrored - photo left, copy right - so it reads as a
   sibling of the homepage Smart Living band rather than a repeat of it. */
.urban-about .ua-story{display:grid;grid-template-columns:50% 50%;background:#fff}
.urban-about .ua-story-photo{position:relative;min-height:490px;overflow:hidden}
.urban-about .ua-story-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.urban-about .ua-story-copy{padding:96px max(5vw,calc((100vw - 1340px)/2)) 96px 45px;align-self:center;display:grid;gap:18px}
.urban-about .ua-story .ua-eyebrow{color:#976522}
.urban-about .ua-story-copy h2{margin-bottom:6px}
.urban-about .ua-story-copy p{color:#505050}

@media(max-width:1100px){
  .urban-about h2{font-size:30px;letter-spacing:-.7px}
  .urban-about h3{font-size:16px}
  .urban-about .ua-intro-grid{gap:36px}
  .urban-about .ua-facts{padding-top:24px}
  .urban-about .ua-fact{padding-right:14px}
  .urban-about .ua-fact+.ua-fact{padding-left:14px}
  .urban-about .ua-intro-figure{min-height:470px}
  .urban-about .ua-platform-grid{gap:20px}
  .urban-about .ua-pillar-photo{height:165px}
  .urban-about .ua-pillar h3{margin-top:18px}
  .urban-about .ua-pillar p{font-size:13px}
  .urban-about .ua-card{padding:26px 22px 30px}
  .urban-about .ua-story-photo{min-height:440px}
  .urban-about .ua-story-copy{padding:72px 5vw 72px 30px}
}
@media(max-width:767px){
  .urban-about .ua-wrap{width:calc(100% - 40px)}
  .urban-about h1{font-size:37px;line-height:1.15;letter-spacing:-.8px}
  .urban-about h2{font-size:25px;letter-spacing:-.6px}
  .urban-about h3{font-size:18px}
  .urban-about .ua-eyebrow{font-size:10px;letter-spacing:2px}
  .urban-about .ua-hero{min-height:80vh;padding:135px 20px 24px;gap:65px}
  .urban-about .ua-hero-image{object-position:60% center}
  .urban-about .ua-hero-description{font-size:17px}
  .urban-about .ua-motto{font-size:10px;letter-spacing:2px}
  .urban-about .ua-intro{padding:64px 0 60px}
  .urban-about .ua-intro-grid{grid-template-columns:1fr;gap:26px}
  .urban-about .ua-facts{grid-template-columns:1fr;margin-top:30px;padding-top:22px}
  .urban-about .ua-fact{padding:0 0 14px}
  .urban-about .ua-fact+.ua-fact{padding:14px 0 0;border-left:0;border-top:1px solid #e3e3e3}
  .urban-about .ua-intro-figure{min-height:0;height:250px;order:-1}
  .urban-about .ua-lead{font-size:17px}
  .urban-about .ua-platform{padding:58px 0}
  .urban-about .ua-platform .ua-eyebrow{margin-bottom:24px}
  .urban-about .ua-platform-grid{grid-template-columns:1fr;gap:32px}
  .urban-about .ua-pillar-photo{height:200px}
  .urban-about .ua-pillar p{font-size:15px}
  .urban-about .ua-approach{padding:62px 0 70px}
  .urban-about .ua-approach h2{margin-bottom:24px}
  .urban-about .ua-approach-grid{grid-template-columns:1fr;gap:22px}
  .urban-about .ua-index{font-size:46px;letter-spacing:-1.5px}
  .urban-about .ua-story{grid-template-columns:1fr}
  .urban-about .ua-story-photo{min-height:340px}
  .urban-about .ua-story-copy{padding:62px 20px;max-width:none}
}
@media(prefers-reduced-motion:reduce){.urban-about *{transition:none!important}}
/* Blog and Events banner. Banner only - the posts below it stay in Elementor. The rule
   block is the system banner from URBAN_DESIGN_SYSTEM.md section 4b, value for value:
   80vh, left copy capped at 540px, two-layer directional scrim, closing on the page's own
   three-part line. */
.urban-blog{width:100%;max-width:none;color:#282726;font:400 15px/1.7 Manrope,sans-serif}
.urban-blog,.urban-blog *{box-sizing:border-box}
.urban-blog h1,.urban-blog p{margin:0;padding:0}
/* -webkit-text-fill-color resets the Hub theme's gradient heading treatment. */
.urban-blog h1{color:#fff;-webkit-text-fill-color:#fff;font:700 46px/1.15 Sora,sans-serif;text-transform:uppercase;letter-spacing:-1px}
.urban-blog img{display:block;max-width:100%;border:0;border-radius:0}
.urban-blog .ub-eyebrow{font:600 11px/1.5 Manrope,sans-serif;text-transform:uppercase;letter-spacing:2.4px;border:0;border-radius:0;background:none;padding:0}

.urban-blog .ub-hero{position:relative;isolation:isolate;min-height:80vh;display:flex;flex-direction:column;justify-content:space-between;gap:55px;padding:clamp(150px,16vw,235px) 5% 30px;color:#fff;background:#292a29;overflow:hidden}
.urban-blog .ub-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;z-index:-2}
.urban-blog .ub-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.28) 48%,rgba(0,0,0,.06)),linear-gradient(0deg,rgba(0,0,0,.4),transparent 32%)}
.urban-blog .ub-hero-copy{max-width:540px}
.urban-blog .ub-hero .ub-eyebrow{color:#fff;margin-bottom:16px}
.urban-blog .ub-hero-description{font:400 19px/1.35 Manrope,sans-serif;color:#fff;margin-top:16px}
.urban-blog .ub-motto{font-size:11px;line-height:1.8;letter-spacing:2.4px;text-transform:uppercase;color:#efcb73;margin-top:26px}

@media(max-width:767px){
  .urban-blog h1{font-size:37px;line-height:1.15;letter-spacing:-.8px}
  .urban-blog .ub-eyebrow{font-size:10px;letter-spacing:2px}
  .urban-blog .ub-hero{min-height:80vh;padding:135px 20px 24px;gap:65px}
  .urban-blog .ub-hero-image{object-position:60% center}
  .urban-blog .ub-hero-description{font-size:17px}
  .urban-blog .ub-motto{font-size:10px;letter-spacing:2px}
}
@media(prefers-reduced-motion:reduce){.urban-blog *{transition:none!important}}
