.hero{min-height:610px;padding-top:54px;padding-bottom:40px;gap:36px}
.hero h1{font-size:clamp(46px,5.8vw,88px);line-height:1.08;letter-spacing:-.035em}
.hero-description{max-width:620px}
.hero-image{object-position:center}
.hero:after{background:linear-gradient(90deg,rgba(17,25,22,.82),rgba(17,25,22,.35))}
.hero h1 span{color:#eee5cd}
.sector-text h3{font-size:clamp(32px,3vw,48px)}
.intro-image{object-position:center}
.tenement-card{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:clamp(28px,4vw,60px);border-radius:25px;background:#181818;color:#fff}
.tenement-card .number{color:#e1c27b}
.tenement-card h3{font-size:clamp(30px,3vw,46px);line-height:1.15;margin-top:24px}
.tenement-card p{font-size:18px;line-height:1.7;color:#e0e4dd}
.tenement-contact{display:inline-flex;align-items:center;min-height:44px;margin-top:24px;border-bottom:1px solid #c5a866;font-size:16px;color:#e1c27b}
.tenement-contact:hover{color:white}
@media(max-width:800px){.tenement-card{grid-template-columns:1fr;gap:24px}.tenement-card h3{font-size:34px}.tenement-card p{font-size:17px}}
@media(min-width:641px) and (max-width:1100px){
 .header{gap:18px}
 .desktop-nav,.contact-link{display:none}
 .menu-button{display:flex;flex-direction:column;gap:6px;justify-content:center;align-items:center;width:48px;height:48px;border-radius:50%;border:1px solid #aaa;background:#fff;cursor:pointer;flex-shrink:0}
 .menu-button span{width:19px;height:1px;background:var(--ink)}
 #mobile-nav:not([hidden]){display:flex;position:absolute;top:155px;left:0;right:0;flex-direction:column;padding:24px;background:#fff;border-radius:20px;box-shadow:0 14px 35px #0002;gap:18px}
}
@media(max-width:640px){
 .hero{min-height:560px;padding:34px 24px;gap:32px}
 .hero h1{font-size:clamp(32px,8vw,50px);letter-spacing:-.025em}
 .hero h1 br{display:none}
 .hero h1 span:before{content:' '}
 .hero-description{font-size:18px}
 .hero-bottom{gap:16px}
 .hero-bottom>span{max-width:145px}
 .photo-caption h3{font-size:36px}
}
/* Investment asset classes and distinct cooperation models. */
.hero-bottom .circle{width:132px;height:132px;flex-shrink:0;font-size:14px}
.asset-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.asset-card{padding:30px 24px;background:#f1f2ef;border-radius:22px;min-width:0}
.asset-card .number{font-size:14px;color:#626b64}
.asset-card h3{font-size:clamp(24px,2vw,30px);line-height:1.2;letter-spacing:-.02em;margin:32px 0 18px;overflow-wrap:anywhere}
.asset-card p{font-size:16px;line-height:1.65}
.collaboration-models{background:#181818;color:#fff;padding:var(--pad)}
.collaboration-models>.section-label{color:#e1c27b;margin-bottom:28px}
.collaboration-models h2{font-size:clamp(36px,4.5vw,64px)}
.model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:48px}
.model-grid article{border-top:1px solid #5a5b54;padding-top:24px;min-width:0}
.model-grid .number{color:#e1c27b;font-size:14px}
.model-grid h3{font-size:30px;line-height:1.2;margin:28px 0 20px}
.model-grid p{color:#deded9;font-size:18px;line-height:1.7}
@media(max-width:1100px){.asset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.model-grid{gap:24px}.model-grid h3{font-size:26px}}
@media(max-width:800px){.model-grid{grid-template-columns:1fr;gap:32px}.model-grid h3{margin:18px 0 14px}.model-grid p{max-width:640px}}
@media(max-width:640px){.asset-grid{grid-template-columns:1fr;gap:16px}.asset-card{padding:28px}.asset-card h3{font-size:28px;margin-top:22px}.collaboration-models{padding:32px 24px}.hero-bottom .circle{width:120px;height:120px;font-size:13px}}
/* One shared footer strip for copyright, legal links and utility navigation. */
.footer .footer-bottom{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:12px 24px}
.footer .footer-bottom .legal-links{display:contents;margin:0;padding:0;border:0}
.footer .footer-bottom .legal-links a{font-size:13px;min-height:44px;display:inline-flex;align-items:center;padding:5px 0}
.footer .footer-bottom>a,.footer .footer-bottom>span{font-size:13px}
.footer .footer-bottom .team-link{margin-right:auto}
@media(max-width:640px){.footer .footer-bottom{gap:8px 20px}.footer .footer-bottom .team-link{margin-right:0}}
.footer .footer-bottom .legal-links a{text-decoration:none}
.footer .footer-bottom .legal-links a:hover{color:#e1c27b}
.credentials{background:#f1f2ef;padding:clamp(28px,4vw,56px)}
.credentials>.section-label{margin-bottom:28px}
.credentials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.credentials-grid article{border-top:1px solid #b9bfb6;padding-top:24px;min-width:0}
.credentials-grid h3{font-size:clamp(25px,2.4vw,34px);line-height:1.2;margin-bottom:16px}
.credentials-grid p{font-size:17px;line-height:1.7;color:#555e58}
.company-details{margin:28px 0;font-size:17px;line-height:1.65}
.company-details>div{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(0,1.5fr);gap:24px;padding:16px 0;border-bottom:1px solid #d0d4ca}
.company-details dt{font-weight:400;color:#242a27}
.company-details dd{margin:0;color:#454e48;overflow-wrap:anywhere}
.legal-section .registry-source{margin-top:20px}
@media(max-width:800px){.credentials-grid{grid-template-columns:1fr;gap:24px}}
@media(max-width:640px){.company-details>div{grid-template-columns:1fr;gap:4px}.credentials{padding:32px 24px}}
/* Compact property list on small screens, with every category and description visible. */
@media(max-width:640px){
 .asset-grid{gap:0;background:#f1f2ef;border-radius:22px;overflow:hidden}
 .asset-card{display:grid;grid-template-columns:24px minmax(0,1fr);gap:6px 14px;padding:20px;border-radius:0;border-bottom:1px solid #d0d4ca}
 .asset-card:last-child{border-bottom:0}
 .asset-card .number{grid-column:1;grid-row:1;padding-top:3px}
 .asset-card h3{grid-column:2;grid-row:1;font-size:22px;line-height:1.2;margin:0;overflow-wrap:normal}
 .asset-card p{grid-column:2;font-size:15px;line-height:1.5}
 .intro-image{height:240px}
 .credentials-grid h3{font-size:26px;margin-bottom:10px}
 .credentials-grid p{font-size:16px;line-height:1.6}
}

/* Match sections 04 and 05 to the stacked heading layout of section 03. */
.sectors .section-top,.process .section-top{display:block}
.sectors .section-top>.section-label,.process .section-top>.section-label,.contact>.section-label{margin-bottom:28px}
.contact{display:block}
.sectors .section-top h2,.process .section-top h2,.contact h2{font-size:clamp(38px,4.5vw,68px)}
@media(max-width:640px){.sectors .section-top h2,.process .section-top h2,.contact h2{font-size:38px}}

/* Keep the responsive photograph in the second intro grid column. */
.intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.intro>.intro-copy{grid-column:1;grid-row:1}
.intro>picture{display:block;grid-column:2;grid-row:1;min-width:0;position:relative;min-height:540px;overflow:hidden;border-radius:25px}
.intro>picture>.intro-image{display:block;position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:cover}
@media(max-width:900px){.intro{grid-template-columns:minmax(0,1fr)}.intro>picture{grid-column:1;grid-row:2;min-height:0;height:400px}}
@media(max-width:640px){.intro>picture{height:240px}}
