/* A single, restrained visual system for the one-page group narrative. */
.section{padding:104px 0}
.intro,.projects,.housing,.leadership{background:#fff}
.portfolio,.property,.land{background:#f6f7f5}
.intro,.portfolio,.projects,.property,.housing,.land,.leadership{border-top:1px solid #e1e5e3}

.intro h2,.title-row h2,.projects-head h2,.property h2,.housing h2,.land h2,.leadership h2{
  color:var(--navy);
  font-size:clamp(38px,3.55vw,52px);
  line-height:1.12;
}
.title-row,.projects-head{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(280px,.65fr);
  gap:90px;
  align-items:end;
  margin-bottom:48px;
}
.section-summary,.projects-head p{
  max-width:430px;
  margin:0;
  color:#68737b;
  font-size:12px;
  line-height:1.8;
}
.section-no,.section-no.light{color:#8a683c}

/* Preserve the full portrait architecture while retaining a wide cinematic hero. */
.hero{background:#8da7b8}
.hero-photo-backdrop{object-fit:cover;object-position:center 30%;filter:blur(18px) saturate(.78);transform:scale(1.06);opacity:.72}
.hero-photo-main{object-fit:contain;object-position:78% center;-webkit-mask-image:linear-gradient(90deg,transparent 0%,transparent 35%,#000 54%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,transparent 35%,#000 54%,#000 100%)}
.hero-overlay{background:linear-gradient(90deg,rgba(7,16,28,.84) 0%,rgba(7,16,28,.7) 38%,rgba(7,16,28,.28) 60%,rgba(7,16,28,.06) 80%,rgba(7,16,28,.1) 100%)}
.hero h1,.hero-content>p{text-shadow:0 2px 22px rgba(4,10,18,.42)}

.ownership-disclosure{margin-top:62px;border-top:1px solid #d5dbd8;border-bottom:1px solid #d5dbd8}
.ownership-disclosure summary{display:grid;grid-template-columns:1fr auto 24px;gap:28px;align-items:center;padding:22px 0;cursor:pointer;list-style:none}
.ownership-disclosure summary::-webkit-details-marker{display:none}
.ownership-disclosure summary span{color:#8a683c;font-size:8px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.ownership-disclosure summary b{color:#43505a;font-size:10px;font-weight:600}
.ownership-disclosure summary i{color:#9c7a43;font-size:18px;font-style:normal;font-weight:400;text-align:right}
.ownership-disclosure[open] summary i{transform:rotate(45deg)}
.structure-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #d5dbd8;border-left:1px solid #d5dbd8}
.structure-grid>div{min-height:150px;padding:23px 22px;border-right:1px solid #d5dbd8;border-bottom:1px solid #d5dbd8;background:#f8f9f7}
.structure-grid small{color:#8a683c;font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.structure-grid p{margin:15px 0 0;color:#34434e;font-size:11px;line-height:1.8}
.structure-grid em{color:#7c878d;font-style:normal;font-size:10px}
.disclosure-note{margin:10px 0 0;color:#8b9499;font-size:9px;line-height:1.6}
.project-status,.asset-status{color:#8a683c;font-size:8px;font-style:normal;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.asset-status{display:block;margin:18px 0 -12px}
.diligence-note{margin:18px 0 0;color:#8a683c;font-size:10px;line-height:1.7}
.contact-cta{padding:72px 0;border-top:1px solid #d5dbd8;background:#eef2f1}
.contact-cta .shell{display:flex;align-items:center;justify-content:space-between;gap:60px}
.contact-cta h2{margin:0;color:var(--navy);font:600 38px/1.15 var(--serif)}
.contact-cta p:not(.section-no){max-width:550px;margin:12px 0 0;color:#68737b;font-size:11px;line-height:1.8}
.contact-cta .button{flex:0 0 auto}

/* Eight compact business chapters can be understood in a single scan. */
.sector-grid{display:block;border-top:1px solid #cfd6d3;border-left:0}
.sector,.sector.major,.sector.tech,.sector.school{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 30px;
  align-items:center;
  min-height:148px;
  padding:26px 8px;
  border:0;
  border-bottom:1px solid #cfd6d3;
  background:transparent;
  color:var(--ink);
  box-shadow:none;
}
.sector:hover{z-index:1;transform:none;background:rgba(255,255,255,.55);box-shadow:none}
.sector>div{
  display:grid;
  grid-template-columns:minmax(230px,.72fr) minmax(300px,1fr);
  grid-template-rows:auto auto auto;
  column-gap:64px;
  align-items:center;
  margin:0;
}
.sector small{grid-column:1;grid-row:1}
.sector h3{grid-column:1;grid-row:2;margin:7px 0 4px}
.sector .entity-type{grid-column:1;grid-row:3;margin:0}
.sector p{grid-column:2;grid-row:1/4;max-width:500px;font-size:11px;line-height:1.75}
.sector.design p{grid-row:1/3}
.sector .related-vertical{grid-column:2;grid-row:3;margin:5px 0 0}
.sector.major h3,.sector.major p,.sector.tech h3,.sector.tech p{color:inherit}
.sector.major p,.sector.tech p,.sector p{color:#68737b}
.sector h3{font-size:27px}
.sector b{position:static;justify-self:end;color:#9c7a43}
.sector .entity-type,.sector.major .entity-type,.sector.tech .entity-type{color:#8a9298}
.sector.has-photo{padding:18px 210px 18px 8px;overflow:hidden}
.sector.has-photo:after{display:none}
.sector.has-photo .sector-photo{
  position:absolute;
  inset:18px 46px 18px auto;
  width:145px;
  height:calc(100% - 36px);
  object-fit:cover;
  object-position:center;
}
.sector.has-photo>span{position:relative;z-index:2;top:auto;left:auto;padding:0;background:transparent}
.sector.has-photo>div{position:relative;z-index:2;width:auto;margin:0;padding:0}
.sector.has-photo>b{z-index:3}

.design-credentials{margin-top:72px;padding-top:72px;border-color:#d5dbd8}
.credentials-intro{gap:90px}
.featured-credentials{border-color:#d5dbd8}
.featured-credentials span{background:rgba(255,255,255,.72);border-color:#d5dbd8}

/* Hospitality follows the same light institutional language as the portfolio. */
.projects{color:var(--ink)}
.projects-head h2{color:var(--navy)}
.project-grid{gap:18px}
.project-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.project-gallery figure{height:330px;border-color:#d7ddda;background:#eef0ee}
.project-gallery figure:after{background:linear-gradient(transparent,rgba(7,16,28,.62))}
.project{
  padding:34px;
  border:1px solid #d7ddda;
  background:#fafbf9;
  color:var(--ink);
}
.project-top{color:#8a683c}
.project h3{color:var(--navy)}
.project>p{color:#68737b}
.project dl{border-color:#d7ddda}
.project dl div{border-color:#d7ddda}
.project dt{color:#8a9298}
.project dd{color:#25313b}
.asset-details{margin-top:26px;border-top:1px solid #d7ddda}
.asset-details summary{display:flex;min-height:48px;align-items:center;justify-content:space-between;padding:16px 0 0;cursor:pointer;list-style:none;color:#59656d;font-size:8px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.asset-details summary::-webkit-details-marker{display:none}
.asset-details summary span{color:#9c7a43;font-size:16px;font-weight:400}
.asset-details[open] summary span{transform:rotate(45deg)}
.asset-details dl{margin-top:16px}

/* Real estate uses the same information-card treatment. */
.development-feature{padding:34px;border-color:#d7ddda;background:#fff;color:var(--ink)}
.development-feature h3{color:var(--navy)}
.tenant-wall{border-color:#d7ddda}
.tenant-wall span{min-height:82px;border-color:#d7ddda;background:#fff;font-size:11px}
.leasing-panel{padding:8px 0}
.leasing-locations{max-width:560px;margin:13px 0 0;color:var(--navy);font:600 25px/1.28 var(--serif)}
.leasing-note{margin-top:15px}
.occupier-label{margin-top:27px}
.housing-layout{display:block}
.housing .development-feature{min-height:0}
.commercial-feature h3{margin-bottom:45px}
.land-detail-standalone{padding:0}
.land-expertise{
  margin-top:54px;
  border-top:1px solid #d5dbd8;
  border-bottom:1px solid #d5dbd8;
}
.land-expertise summary{display:grid;grid-template-columns:1fr auto 24px;gap:28px;align-items:center;padding:25px 0;cursor:pointer;list-style:none}
.land-expertise summary::-webkit-details-marker{display:none}
.land-expertise summary span{display:flex;flex-direction:column;gap:8px}
.land-expertise summary small{color:#8a683c;font-size:8px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.land-expertise summary strong{color:var(--navy);font:600 22px/1.25 var(--serif)}
.land-expertise summary>b{color:#59656d;font-size:9px;font-weight:600;text-transform:uppercase}
.land-expertise summary i{color:#9c7a43;font-size:18px;font-style:normal;text-align:right}
.land-expertise[open] summary i{transform:rotate(45deg)}
.land-detail{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px 90px;padding:8px 0 38px}
.land-detail>p{max-width:560px;margin:0;color:#68737b;font-size:11px;line-height:1.85}
.land-process{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d5dbd8;border-left:1px solid #d5dbd8}
.land-process span{display:flex;min-height:72px;align-items:center;gap:18px;padding:18px 22px;border-right:1px solid #d5dbd8;border-bottom:1px solid #d5dbd8;background:#fff;color:#43505a;font-size:10px;font-weight:600}
.land-process b{color:#9c7a43;font-size:8px;letter-spacing:.08em}

/* Quiet leadership rows conclude the story without introducing another motif. */
.leadership{background:#fff}
.leader-row{gap:0;border-top:1px solid #d5dbd8}
.leader-row article,.leader-row article:first-child{border-top:0;border-right:1px solid #d5dbd8}
.leader-row article:last-child{border-right:0}
.leader-row article>div{padding:30px 34px 12px 0}
.leader-row article+article>div{padding-left:34px}
.founder-profile{margin-top:52px;border-top:1px solid #d5dbd8;border-bottom:1px solid #d5dbd8}
.founder-profile summary{display:grid;grid-template-columns:1fr auto 24px;gap:28px;align-items:center;padding:22px 0;cursor:pointer;list-style:none}
.founder-profile summary::-webkit-details-marker{display:none}
.founder-profile summary span{color:#8a683c;font-size:8px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.founder-profile summary b{color:#43505a;font-size:10px;font-weight:600}
.founder-profile summary i{color:#9c7a43;font-size:18px;font-style:normal;font-weight:400;text-align:right}
.founder-profile[open] summary i{transform:rotate(45deg)}
.founder-profile>div{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;padding:12px 0 38px}
.founder-profile p{margin:0;color:#68737b;font-size:10px;line-height:1.85}
.founder-profile>.expanded-profile{grid-template-columns:150px minmax(0,1fr);gap:36px;padding-top:20px}
.expanded-profile>img{display:block;width:150px;height:180px;object-fit:cover;object-position:center 18%}
.expanded-profile .profile-copy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px}
.raman-profile{margin-top:14px}

@media(max-width:900px){
  .title-row,.projects-head{grid-template-columns:1fr;gap:24px}
  .section-summary,.projects-head p{max-width:620px}
  .credentials-intro{gap:38px}
  .sector>div{grid-template-columns:minmax(200px,.7fr) 1fr;column-gap:34px}
  .structure-grid{grid-template-columns:repeat(2,1fr)}
  .housing-layout{grid-template-columns:1fr}
}
@media(max-width:700px){
  .hero{height:700px}
  .hero-content{padding-top:190px}
  .hero h1{font-size:38px}
  .hero-photo-backdrop{display:none}
  .hero-photo-main{object-fit:cover;object-position:center 28%;-webkit-mask-image:none;mask-image:none}
  .hero-overlay{background:linear-gradient(0deg,rgba(7,16,28,.84) 0%,rgba(7,16,28,.48) 58%,rgba(7,16,28,.08) 100%)}
  .snapshot-grid div{padding:20px 16px}
  .snapshot strong{font-size:28px}
  .section{padding:52px 0}
  .split{gap:28px}
  .intro h2,.title-row h2,.projects-head h2,.property h2,.housing h2,.land h2,.leadership h2{font-size:35px}
  .title-row,.projects-head{margin-bottom:34px}
  .sector,.sector.major,.sector.tech,.sector.school{grid-template-columns:34px minmax(0,1fr) 22px;min-height:0;padding:20px 4px}
  .sector>div{display:block;margin:0}
  .sector h3{margin:7px 0 4px;font-size:23px}
  .sector p{margin-top:9px;font-size:10px}
  .sector .related-vertical{margin-top:10px}
  .sector.has-photo{padding:18px 78px 18px 4px}
  .sector.has-photo .sector-photo{inset:18px 10px auto auto;width:58px;height:58px}
  .sector.has-photo>div{width:auto}
  .sector.has-photo>b{position:absolute;right:13px;bottom:16px}
  .design-credentials{margin-top:40px;padding-top:32px}
  .credentials-intro{gap:18px}
  .credentials-intro h3{font-size:29px}
  .credentials-label{margin-top:32px}
  .featured-credentials{grid-template-columns:repeat(3,minmax(0,1fr))}
  .featured-credentials span{min-height:60px;padding:9px 8px;font-size:8px;line-height:1.35}
  .client-disclosure summary{min-height:48px;padding:14px 0}
  .project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .project-gallery figure{height:180px}
  .project-gallery figure:last-child{grid-column:1/-1}
  .project-gallery figcaption{left:11px;right:8px;bottom:11px;font-size:7px;line-height:1.4}
  .project{padding:21px}
  .project h3{margin:19px 0 10px;font-size:27px}
  .project-top{display:grid;grid-template-columns:1fr auto;gap:7px 14px;align-items:center}
  .project-top>span{grid-column:1;grid-row:1}
  .project-top .project-status{grid-column:1;grid-row:2}
  .project-top strong{grid-column:2;grid-row:1/3;align-self:center}
  .development-feature>div{grid-template-columns:auto 1fr}
  .tenant-wall{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tenant-wall span{min-height:74px;padding:10px 8px;font-size:8px;line-height:1.35}
  .leasing-panel{padding-top:14px}
  .leasing-locations{font-size:22px}
  .occupier-label{margin-top:23px}
  .commercial-feature h3{margin-bottom:34px}
  .land-expertise{margin-top:42px}
  .land-expertise summary{grid-template-columns:1fr 24px;gap:16px}
  .land-expertise summary>b{display:none}
  .land-detail{grid-template-columns:1fr;gap:18px;padding-bottom:28px}
  .land-process{grid-column:auto;grid-template-columns:1fr;margin-top:18px}
  .ownership-disclosure{margin-top:42px}
  .ownership-disclosure summary{grid-template-columns:1fr 24px;gap:16px}
  .ownership-disclosure summary b{display:none}
  .structure-grid{grid-template-columns:1fr}
  .contact-cta{padding:52px 0}
  .contact-cta h2{font-size:32px}
  .contact-cta .shell{display:block}
  .contact-cta .button{width:100%;margin-top:25px}
  .leader-row{border-top:0}
  .leader-row article,.leader-row article:first-child{border-top:1px solid #d5dbd8;border-right:0}
  .leader-row article>div,.leader-row article+article>div{padding:24px 0 12px}
  .founder-profile{margin-top:38px}
  .founder-profile summary{grid-template-columns:1fr 24px;gap:16px}
  .founder-profile summary b{display:none}
  .founder-profile>div{grid-template-columns:1fr;gap:18px;padding-bottom:28px}
  .expanded-profile>img{width:110px;height:132px}
  .expanded-profile .profile-copy{grid-template-columns:1fr;gap:18px}

  /* Mobile reading scale: keep corporate restraint without sacrificing legibility. */
  .hero-content>p:not(.overline){font-size:16px;line-height:1.6}
  .overline,.section-no,.section-no.light{font-size:11px;line-height:1.45}
  .button{min-height:50px;font-size:11px}
  .snapshot span{font-size:11px;line-height:1.45;letter-spacing:.06em}
  .copy .lead{font-size:20px;line-height:1.45}
  .copy p:not(.lead),.section-summary,.projects-head p{font-size:15px;line-height:1.7}

  .ownership-disclosure summary,.founder-profile summary{grid-template-columns:1fr auto 24px;gap:12px}
  .ownership-disclosure summary span,.founder-profile summary span{font-size:10px;line-height:1.4}
  .ownership-disclosure summary b,.founder-profile summary b{display:block;font-size:12px;text-align:right}
  .structure-grid small{font-size:10px}
  .structure-grid p{font-size:14px;line-height:1.7}
  .structure-grid em{font-size:13px}

  .sector small,.sector .entity-type,.sector.major .entity-type,.sector.tech .entity-type{font-size:10px;line-height:1.4}
  .sector p{font-size:14px;line-height:1.6}
  .sector .related-vertical{font-size:10px;line-height:1.45}
  .credentials-intro p{font-size:14px;line-height:1.7}
  .credentials-label{font-size:10px}
  .disclosure-note{font-size:13px;line-height:1.6}
  .featured-credentials{grid-template-columns:repeat(2,minmax(0,1fr))}
  .featured-credentials span{min-height:64px;padding:12px;font-size:12px;line-height:1.4}
  .client-disclosure summary{font-size:11px;line-height:1.4}
  .client-roster span{font-size:13px;line-height:1.5}

  .project-gallery figcaption{font-size:10px;line-height:1.4}
  .project-top,.project-status,.asset-status{font-size:10px;line-height:1.4}
  .project>p{font-size:14px;line-height:1.65}
  .asset-details summary{font-size:11px;line-height:1.4}
  .project dt{font-size:10px}
  .project dd{font-size:13px;line-height:1.45}

  .development-feature>p,.tenant-label{font-size:10px;line-height:1.4}
  .development-feature span{font-size:11px;line-height:1.4}
  .development-feature small,.portfolio-locations{font-size:13px;line-height:1.6}
  .tenant-wall{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tenant-wall span{min-height:68px;padding:12px;font-size:11px;line-height:1.4}
  .land-detail>p,.diligence-note{font-size:14px;line-height:1.7}
  .land-process span{font-size:13px;line-height:1.45}

  .leader-row small{font-size:10px;line-height:1.4}
  .leader-row p,.founder-profile p{font-size:14px;line-height:1.7}
  .contact-cta p:not(.section-no){font-size:14px;line-height:1.7}
  .quiet-footer-main span,.quiet-footer address,.quiet-footer a,.quiet-footer-bottom{font-size:12px;line-height:1.65}
}

@media(max-width:350px){
  .sector.has-photo{padding-right:72px}
  .sector.has-photo .sector-photo{width:54px;height:54px}
  .project-top{gap:6px 10px}
  .project-top strong{font-size:24px}
}
