/* Robert Lu — interior pages, luxury system. Loaded after luxury.css. */
body:not(.page-home) {
  --ink:#10151b; --forest:#10151b; --paper:#e9e6df; --muted:#65635e;
  --line:#c9c3b8; --gold:#b5a079; --jade:#8b7651;
  --gradient:linear-gradient(120deg,#10151b,#1e2630);
  background:var(--paper); color:var(--ink); font-family:Jost,Noto,Arial,sans-serif;
}
body:not(.page-home) main { overflow:clip; }
body:not(.page-home) :is(h1,h2,h3,blockquote,.case-result strong,.about-facts strong,.v2-service-aside strong,.contact-phone,.property-facts strong,.property-price>strong,.case-banner span,.article-number) { font-family:Jost,Noto,Arial,sans-serif; font-style:normal; font-weight:400; }
html[lang^=zh] body:not(.page-home) :is(h1,h2,h3,blockquote) { font-family:Jost,Noto,Arial,sans-serif; font-weight:400; }
body:not(.page-home) em { font-family:inherit; font-style:normal; }
body:not(.page-home) main .eyebrow { font-size:11px; font-weight:400; letter-spacing:.12em; color:#84704e; }
body:not(.page-home) .page-lead { color:var(--muted); font-size:19px; line-height:1.85; max-width:700px; }
body:not(.page-home) .line-link { font-size:14px; font-weight:400; letter-spacing:.015em; }
body:not(.page-home) .button { font-family:Jost,Noto,Arial,sans-serif; font-size:14px; font-weight:400; letter-spacing:.02em; min-height:58px; padding:18px 26px; border-radius:0; }
/* Full-bleed, architectural page openings with contained text columns. */
body:not(.page-home) :is(.page-intro,.v2-service-hero,.about-opening,.consultation) { position:relative; isolation:isolate; }
body:not(.page-home) :is(.page-intro,.v2-service-hero,.about-opening,.consultation)::before { content:''; position:absolute; inset:0 calc((100% - 100vw)/2); background:#10151b; z-index:-1; }
body:not(.page-home) .page-intro { padding-block:110px 95px; color:#e9e6df; }
body:not(.page-home) .page-intro h1 { font-size:clamp(58px,6.5vw,96px); font-weight:300; line-height:1.08; letter-spacing:-.035em; max-width:1120px; }
body:not(.page-home) .page-intro .page-lead { color:#b9b7b2; margin-top:32px; }
body:not(.page-home) :is(.page-intro,.v2-service-hero,.about-opening,.consultation-intro)>.eyebrow,
body:not(.page-home) :is(.v2-service-hero,.about-opening,.consultation-intro)>div>.eyebrow { color:#b5a079; }
body:not(.page-home) .page-intro .v2-editor-note { background:#1d242c; color:#c2beb5; border-color:#b5a079; margin-top:36px; }
body:not(.page-home) .v2-section { padding-block:110px; }
body:not(.page-home) .v2-no-top { padding-top:80px; }
body:not(.page-home) .v2-section-heading { margin-bottom:52px; align-items:end; }
body:not(.page-home) .v2-section-heading h2 { font-size:clamp(40px,4vw,60px); line-height:1.15; letter-spacing:-.025em; }
/* Selling / buying: strong, calm mastheads and an unframed portrait. */
body:not(.page-home) .v2-service-hero { grid-template-columns:1.35fr .8fr; gap:9%; padding-block:96px 104px; align-items:center; color:#e9e6df; }
body:not(.page-home) .v2-service-hero h1 { font-size:clamp(52px,5.7vw,84px); line-height:1.08; font-weight:300; letter-spacing:-.03em; margin-block:28px 30px; }
body:not(.page-home) .v2-service-hero>div>p:not(.eyebrow) { color:#b9b7b2; font-size:18px; line-height:1.85; max-width:540px; }
body:not(.page-home) .v2-service-hero .button { background:#b5a079; color:#10151b; border-color:#b5a079; margin-top:34px; }
body:not(.page-home) .v2-service-hero .button:hover { background:#c7b48f; border-color:#c7b48f; }
body:not(.page-home) .v2-service-aside { background:transparent; border:0; border-left:1px solid #b5a07955; padding-left:28px; align-self:stretch; display:flex; flex-direction:column; }
body:not(.page-home) .v2-service-portrait { height:390px; background:#1b222b; overflow:hidden; }
body:not(.page-home) .v2-service-portrait img { height:121%; padding-top:24px; filter:saturate(.7); }
body:not(.page-home) .v2-service-aside>div:last-child { padding:24px 0 0; }
body:not(.page-home) .v2-service-aside .eyebrow { color:#b5a079; margin-bottom:14px; }
body:not(.page-home) .v2-service-aside strong { font-size:24px; line-height:1.35; font-weight:400; }
body:not(.page-home) .v2-service-aside p:not(.eyebrow) { color:#a9a7a1; font-size:12px; }
body:not(.page-home) .v2-benefits { background:#dedad2; padding-block:85px 95px; }
body:not(.page-home) .v2-benefit-grid { gap:55px; }
body:not(.page-home) .v2-benefit-grid article { border-color:#b9ad97; padding-top:26px; }
body:not(.page-home) .v2-benefit-grid article>span { color:#84704e; font-size:13px; }
body:not(.page-home) .v2-benefit-grid h3 { font-size:29px; line-height:1.25; margin-block:28px 20px; }
body:not(.page-home) .v2-benefit-grid p { color:var(--muted); font-size:16px; }
body:not(.page-home) .v2-steps li { grid-template-columns:58px 1fr 1.25fr; gap:32px; padding-block:36px; border-color:var(--line); }
body:not(.page-home) .step-number { color:#84704e; font-size:17px; font-weight:400; line-height:1.35; }
body:not(.page-home) .v2-steps h3 { font-size:28px; line-height:1.25; }
body:not(.page-home) .v2-steps p { color:var(--muted); font-size:16px; }
body:not(.page-home) .v2-case { padding-block:95px 110px; border-color:var(--line); }
body:not(.page-home) .case-label>span { font-size:19px; font-weight:400; letter-spacing:.015em; }
body:not(.page-home) .case-label>small { color:var(--muted); font-size:12px; }
body:not(.page-home) .v2-case-copy h2 { font-size:clamp(44px,4.5vw,66px); line-height:1.12; letter-spacing:-.03em; }
body:not(.page-home) .v2-case-copy>p { color:var(--muted); font-size:17px; }
body:not(.page-home) .case-actions { gap:0; margin-block:32px; }
body:not(.page-home) .case-actions>span { border:0; border-left:1px solid #b5a079; padding:7px 20px; margin:4px 0; color:var(--ink); font-size:12px; }
body:not(.page-home) .case-result { border-color:var(--line); padding-top:28px; }
body:not(.page-home) .case-result strong { font-size:36px; font-weight:400; }
body:not(.page-home) .case-result small { color:var(--muted); font-size:12px; }
body:not(.page-home) .v2-moving-callout { padding-block:90px; border-top:1px solid var(--line); gap:10%; }
body:not(.page-home) .v2-moving-callout h2 { font-size:clamp(38px,3.8vw,54px); }
body:not(.page-home) .v2-moving-callout p:not(.eyebrow) { color:var(--muted); font-size:17px; }
body:not(.page-home) .v2-faq { background:#dedad2; padding-block:90px; }
body:not(.page-home) .v2-faq h2 { font-size:48px; }
body:not(.page-home) .v2-faq details { max-width:none; border-color:#bfb7a9; padding-block:28px; }
body:not(.page-home) .v2-faq summary { font-size:19px; font-weight:400; }
body:not(.page-home) .v2-faq details p { color:var(--muted); font-size:16px; }
body:not(.page-home) .v2-buying-note { background:#171e26; padding-block:100px; color:#e9e6df; }
body:not(.page-home) .v2-buying-note h2 { font-size:clamp(42px,4.3vw,64px); font-weight:300; }
body:not(.page-home) .v2-buying-note p { color:#c1bdb5; }
body:not(.page-home) .v2-buying-note small { color:#a8a396; }
body:not(.page-home) :is(.v2-close,.closing) { background:#10151b; color:#e9e6df; padding-block:100px; }
body:not(.page-home) :is(.v2-close,.closing) h2 { font-size:clamp(44px,4.8vw,70px); font-weight:300; line-height:1.12; }
body:not(.page-home) :is(.v2-close,.closing) p:not(.eyebrow) { color:#b9b7b2; font-size:17px; }
body:not(.page-home) :is(.v2-close,.closing,.v2-buying-note) .eyebrow { color:#b5a079; }
/* Biography / moving / case-study interiors. */
body:not(.page-home) .about-opening { padding-block:90px; gap:9%; align-items:center; color:#e9e6df; }
body:not(.page-home) .about-opening h1 { font-size:clamp(52px,5.7vw,84px); font-weight:300; line-height:1.08; letter-spacing:-.03em; }
body:not(.page-home) .about-opening .page-lead { color:#b9b7b2; }
body:not(.page-home) .about-opening .portrait-stage { height:610px; background:#1b222b; }
body:not(.page-home) .portrait-stage::before { border-color:#b5a07940; }
body:not(.page-home) .portrait-stage img { filter:saturate(.7); }
body:not(.page-home) .portrait-name { background:#10151bed; color:#e9e6df; }
body:not(.page-home) .biography { padding-block:115px; }
body:not(.page-home) .about-facts strong { font-size:29px; line-height:1.25; }
body:not(.page-home) .about-facts span { font-size:13px; }
body:not(.page-home) .bio-copy>p { font-size:18px; color:var(--muted); }
body:not(.page-home) blockquote { font-size:31px; line-height:1.55; color:var(--ink); font-weight:300; }
body:not(.page-home) .method { background:#dedad2; }
body:not(.page-home) .principles article { border-color:#bfb7a9; padding-block:30px; }
body:not(.page-home) .principles h3 { font-size:27px; }
body:not(.page-home) .sequence-art { padding-block:42px; border-top:0; }
body:not(.page-home) .sequence-line { background:#b5a079; }
body:not(.page-home) .sequence-line i { background:#84704e; }
body:not(.page-home) .situation-panels article { background:#171e26; padding:50px; }
body:not(.page-home) .situation-panels article .eyebrow { color:#b5a079; }
body:not(.page-home) .situation-panels article>p:not(.eyebrow) { color:#c1bdb5; }
body:not(.page-home) .situation-panels h3 { font-size:39px; line-height:1.2; font-weight:300; }
body:not(.page-home) .situation-tabs button[aria-selected=true] { color:#84704e; }
.page-moving [role=tab]:focus-visible { outline-color:#84704e; }
body:not(.page-home) .case-banner { background:#1c242d; padding-block:65px; color:#e9e6df; }
body:not(.page-home) .case-banner span { font-size:clamp(40px,7.5vw,110px); font-weight:300; letter-spacing:.015em; }
body:not(.page-home) .case-banner p { color:#b5a079; letter-spacing:.08em; }
body:not(.page-home) .story h3 { font-size:30px; }
body:not(.page-home) .story-layout aside h2 { font-size:43px; font-weight:300; }
body:not(.page-home) .story article p { font-size:18px; }
/* Listings use expansive alternating image/text rows, not identical cards. */
.page-listings .property-index { padding-block:55px 110px; }
body:not(.page-home) .listing-filters { border-bottom:1px solid var(--line); padding-bottom:28px; margin-bottom:50px; gap:12px; }
body:not(.page-home) .listing-filters button { border-color:var(--line); color:var(--ink); min-height:46px; font-size:14px; background:transparent; }
body:not(.page-home) .listing-filters button[aria-pressed=true] { background:#10151b; border-color:#10151b; color:#e9e6df; }
body:not(.page-home) .listing-empty { color:var(--muted); border-color:var(--line); }
body:not(.page-home) .property-grid { grid-template-columns:1fr; gap:65px; }
body:not(.page-home) .property-grid .property-card { display:grid; grid-template-columns:1.45fr 1fr; border:0; background:transparent; overflow:hidden; gap:0; }
body:not(.page-home) .property-grid .property-card>img { width:100%; height:100%; min-height:390px; object-fit:cover; aspect-ratio:4/3; }
body:not(.page-home) .property-grid .property-card>div { padding:35px 0 35px 55px; border-block:1px solid var(--line); justify-content:center; }
body:not(.page-home) .property-grid .property-card h3 { font-size:clamp(29px,3vw,42px); font-weight:400; letter-spacing:-.02em; }
body:not(.page-home) .property-grid .property-card h3 span { color:var(--muted); font-size:20px; margin-top:12px; }
body:not(.page-home) .property-grid .property-card>div>p:not(.eyebrow) { font-size:15px; color:var(--muted); }
body:not(.page-home) .property-grid .property-card strong { margin-top:8px; padding-top:15px; font-size:28px; font-weight:400; }
body:not(.page-home) .property-grid .property-card .line-link { margin-top:16px; }
body:not(.page-home) .property-grid .property-card:nth-child(even) { grid-template-columns:1fr 1.45fr; }
body:not(.page-home) .property-grid .property-card:nth-child(even)>img { grid-column:2; grid-row:1; }
body:not(.page-home) .property-grid .property-card:nth-child(even)>div { grid-column:1; grid-row:1; padding:35px 55px 35px 0; }
body:not(.page-home) .property-grid .property-card:nth-child(even) .lease-ribbon { left:auto; right:-68.6px; transform:rotate(45deg); }
body:not(.page-home) .v2-review-grid { grid-template-columns:1.2fr 1fr 1fr; gap:45px; }
body:not(.page-home) .v2-review-grid article { border-top:1px solid #b5a079; padding-top:32px; }
body:not(.page-home) .v2-review-grid article>p:not(.eyebrow) { font-family:Jost,Noto,Arial,sans-serif; font-size:23px; font-weight:300; line-height:1.65; }
body:not(.page-home) .v2-review-grid article:first-child>p:not(.eyebrow) { font-size:28px; }
body:not(.page-home) .v2-review-grid footer { font-size:14px; }
body:not(.page-home) .v2-review-grid footer span { color:var(--muted); font-size:12px; }
body:not(.page-home) .v2-editor-note { background:#dedad2; border-color:#b5a079; color:var(--muted); padding:20px 24px; font-size:12px; }
body:not(.page-home) .v2-blog-grid>a { border-color:var(--line); }
body:not(.page-home) .article-number { color:#9b875f; font-weight:300; }
body:not(.page-home) :is(.v2-blog-grid p:not(.eyebrow),.v2-article section p) { color:var(--muted); }
body:not(.page-home) .v2-article { max-width:900px; padding-block:100px; }
body:not(.page-home) .v2-article h1 { font-size:clamp(48px,5vw,74px); font-weight:300; }
body:not(.page-home) .v2-article footer { border-color:var(--line); }
/* The consultation room: dark introduction, clear warm-grey form. */
.page-contact .consultation { padding-block:95px 110px; gap:9%; }
.page-contact .consultation-intro { color:#e9e6df; }
.page-contact .consultation h1 { font-size:clamp(50px,5.2vw,76px); font-weight:300; line-height:1.1; letter-spacing:-.03em; }
.page-contact .consultation .page-lead { color:#b9b7b2; font-size:18px; }
.page-contact .consultation-form-panel { background:#e9e6df; border-top:2px solid #b5a079; padding:40px; color:#10151b; }
.page-contact .consultation-form-panel h2 { font-size:34px; font-weight:400; }
.page-contact .form-heading { font-size:10px; letter-spacing:.06em; }
.page-contact .contact-person>div { background:#242d37; }
.page-contact .contact-person p { color:#b9b7b2; font-size:12px; }
.page-contact .contact-person strong { color:#e9e6df; font-size:21px; font-weight:400; }
.page-contact .contact-phone { font-size:34px; font-weight:300; border-color:#b5a07955; }
.page-contact .contact-expectation { border-color:#b5a07955; }
.page-contact .contact-expectation .eyebrow { color:#b5a079; }
.page-contact .contact-expectation>p:last-child { color:#b9b7b2; font-size:15px; }
.page-contact .field label { font-size:13px; font-weight:400; }
.page-contact .field label small { font-size:12px; }
.page-contact :is(.field input,.field textarea) { background:#f4f2ed; border-color:#bdb5a7; min-height:50px; font-size:16px; }
.page-contact .field textarea { min-height:135px; }
.page-contact .field select { border-color:#bdb5a7; min-height:50px; font-size:16px; }
.page-contact :is(.field input:focus,.field textarea:focus) { border-color:#84704e; }
.page-contact :is(.field input::placeholder,.field textarea::placeholder) { color:#716d64; }
.page-contact :is(.optional-details,.intent-choices label) { border-color:#bdb5a7; }
.page-contact .optional-details summary { font-size:14px; font-weight:400; }
.page-contact .intent-choices input { accent-color:#84704e; }
.page-contact .intent-choices label:has(input:checked) { background:#10151b; border-color:#10151b; color:#e9e6df; }
.page-contact .intent-choices label:focus-within { outline-color:#84704e; }
.page-contact .enquiry-context { background:#dedad2; border-color:#b5a079; }
.page-contact .property-return { color:var(--ink); }
.page-contact .consent { font-size:13px; }
.page-contact .form-privacy { font-size:11px!important; }
.page-contact :is(.enquiry-complete>p:not(.eyebrow),.enquiry-complete dt) { color:var(--muted); }
.page-contact .enquiry-complete dl { border-color:#bdb5a7; }
.page-contact #enquiry-status:not(:empty) { background:#f4f2ed; border-color:#bdb5a7; }
.page-contact #enquiry-status.success { color:#10151b; border-color:#84704e; }
.page-contact #enquiry-status.error { color:#853d2b; border-color:#a56b51; }
/* Property microsites: full-width dark masthead and generous photography. */
.property-page { background:#e9e6df; color:#10151b; overflow-x:clip; }
.property-page .property-header { border-color:#b5a07940; background:#10151b; color:#e9e6df; box-shadow:0 0 0 100vmax #10151b; clip-path:inset(0 -100vmax); }
.property-page .property-header .language { border-color:#b5a07955; }
.property-page .property-intro { position:relative; isolation:isolate; padding-block:78px 65px; color:#e9e6df; }
.property-page .property-intro::before { content:''; position:absolute; inset:0 calc((100% - 100vw)/2); z-index:-1; background:#10151b; }
.property-page .property-intro .eyebrow { color:#b5a079; }
.property-page .property-intro h1 { font-size:clamp(50px,5.7vw,84px); line-height:1.08; font-weight:300; letter-spacing:-.035em; }
.property-page .property-intro h1 span { font-weight:400; font-size:.38em; color:#b9b7b2; letter-spacing:0; }
.property-page .property-price>strong { font-size:42px; font-weight:300; }
.property-page .property-price>span { color:#b9b7b2; font-size:14px; }
.property-page .property-price .button { background:#b5a079; color:#10151b; border-color:#b5a079; }
.property-page .property-hero { gap:14px; margin-top:35px; }
.property-page .property-hero figure { background:#10151b; }
.property-page .property-hero figure figcaption { background:linear-gradient(transparent,#10151bd9); }
.property-page .property-caption { color:var(--muted); font-size:13px; padding-block:16px; }
.property-page .property-facts { border-color:var(--line); padding-block:50px; }
.property-page .property-facts strong { font-size:42px; font-weight:300; }
.property-page .property-facts span { font-size:14px; }
.property-page .property-story { padding-block:110px; gap:10%; }
.property-page .property-story h2 { font-size:clamp(40px,4vw,60px); font-weight:300; }
.property-page .property-story p { font-size:18px; color:var(--muted); }
.property-page :is(.property-specs,.property-specs>div) { border-color:var(--line); }
.property-page .property-specs>div { font-size:14px; }
.property-page .property-specs dt { color:var(--muted); }
.property-page .property-gallery { padding-bottom:110px; }
.property-page .property-gallery h2 { font-size:52px; font-weight:300; }
.property-page .gallery-grid { gap:38px 24px; }
.property-page .gallery-grid img { background:#dedad2; }
.property-page .gallery-grid figcaption { font-size:13px; }
.property-page .property-contact { background:#10151b; color:#e9e6df; padding-block:100px; }
.property-page .property-contact h2 { font-size:clamp(42px,4.2vw,62px); font-weight:300; }
.property-page .property-contact p { color:#b9b7b2; }
.property-page .property-contact .eyebrow { color:#b5a079; }
.property-page .property-agent img { background:#1b222b; filter:saturate(.7); }
.property-page .property-footer>p { color:var(--muted); }
.property-page .photo-dialog { background:#10151b; }
.property-page .photo-dialog::backdrop { background:#10151bed; }
.property-page .photo-dialog button { background:#242d37; }
.property-page .share-dialog { box-shadow:0 24px 100px #10151b33; }
.property-page .share-dialog::backdrop { background:#10151b99; }
@media (max-width:1100px) {
  body:not(.page-home) .v2-service-hero { gap:6%; }
  body:not(.page-home) .v2-service-portrait { height:340px; }
  body:not(.page-home) .v2-benefit-grid { gap:30px; }
  body:not(.page-home) .about-opening .portrait-stage { height:520px; }
  body:not(.page-home) .property-grid .property-card>img { min-height:330px; }
  body:not(.page-home) .property-grid .property-card>div { padding-left:35px; }
  body:not(.page-home) .property-grid .property-card:nth-child(even)>div { padding-right:35px; }
  body:not(.page-home) .v2-review-grid { gap:28px; }
  .page-contact .consultation { gap:6%; }
  .page-contact .consultation-form-panel { padding:30px; }
}
@media (max-width:760px) {
  body:not(.page-home) .page-intro { padding-block:62px 56px; }
  body:not(.page-home) .page-intro h1 { font-size:clamp(43px,10.5vw,64px); line-height:1.1; }
  body:not(.page-home) .page-lead { font-size:17px; }
  body:not(.page-home) .v2-section { padding-block:65px; }
  body:not(.page-home) .v2-no-top { padding-top:50px; }
  body:not(.page-home) .v2-service-hero { display:block; padding-block:55px 60px; }
  body:not(.page-home) .v2-service-hero h1 { font-size:clamp(44px,10.5vw,62px); margin-block:24px 28px; }
  body:not(.page-home) .v2-service-hero>div>p:not(.eyebrow) { font-size:17px; }
  body:not(.page-home) .v2-service-aside { display:grid; grid-template-columns:.9fr 1.1fr; gap:22px; border-left:0; border-top:1px solid #b5a07955; padding:28px 0 0; margin-top:40px; }
  body:not(.page-home) .v2-service-portrait { height:230px; }
  body:not(.page-home) .v2-service-portrait img { height:115%; padding-top:15px; }
  body:not(.page-home) .v2-service-aside>div:last-child { padding:0; align-self:center; }
  body:not(.page-home) .v2-service-aside strong { font-size:21px; }
  body:not(.page-home) .v2-service-aside p:not(.eyebrow) { font-size:11px; }
  body:not(.page-home) :is(.v2-benefits,.v2-faq) { padding-block:60px; }
  body:not(.page-home) .v2-section-heading { margin-bottom:34px; }
  body:not(.page-home) .v2-section-heading h2 { font-size:38px; }
  body:not(.page-home) .v2-benefit-grid h3 { font-size:28px; }
  body:not(.page-home) .v2-steps li { grid-template-columns:28px 1fr; gap:12px 18px; padding-block:30px; }
  body:not(.page-home) .v2-steps h3 { font-size:26px; }
  body:not(.page-home) .v2-steps p { grid-column:2; }
  body:not(.page-home) .v2-case { padding-block:55px 65px; }
  body:not(.page-home) .v2-case-copy h2 { font-size:40px; }
  body:not(.page-home) .case-actions>span { padding-inline:12px; }
  body:not(.page-home) .case-result strong { font-size:31px; }
  body:not(.page-home) .v2-moving-callout { padding-block:60px; }
  body:not(.page-home) .v2-faq h2 { font-size:38px; }
  body:not(.page-home) :is(.v2-buying-note,.v2-close,.closing) { padding-block:65px; }
  body:not(.page-home) :is(.v2-buying-note,.v2-close,.closing) h2 { font-size:40px; }
  body:not(.page-home) .about-opening { padding-block:55px; }
  body:not(.page-home) .about-opening h1 { font-size:46px; }
  body:not(.page-home) .about-opening .portrait-stage { height:470px; }
  body:not(.page-home) .biography { padding-block:65px; }
  body:not(.page-home) .about-facts strong { font-size:24px; }
  body:not(.page-home) blockquote { font-size:27px; }
  body:not(.page-home) .situation-panels article { padding:34px 26px; }
  body:not(.page-home) .situation-panels h3 { font-size:34px; }
  body:not(.page-home) .case-banner { padding-block:42px; }
  body:not(.page-home) .case-banner span { font-size:10.5vw; }
  body:not(.page-home) .story-layout aside h2 { font-size:36px; }
  body:not(.page-home) .story h3 { font-size:28px; }
  body:not(.page-home) .v2-review-grid { display:block; }
  body:not(.page-home) .v2-review-grid article { margin-bottom:42px; }
  body:not(.page-home) .v2-review-grid article>p:not(.eyebrow), body:not(.page-home) .v2-review-grid article:first-child>p:not(.eyebrow) { font-size:24px; }
  body:not(.page-home) .v2-article { padding-block:60px; }
  .page-listings .property-index { padding-block:38px 65px; }
  body:not(.page-home) .property-grid { gap:45px; }
  body:not(.page-home) .property-grid .property-card, body:not(.page-home) .property-grid .property-card:nth-child(even) { display:flex; flex-direction:column; }
  body:not(.page-home) .property-grid .property-card>img { min-height:0; height:auto; aspect-ratio:4/3; }
  body:not(.page-home) .property-grid .property-card>div, body:not(.page-home) .property-grid .property-card:nth-child(even)>div { padding:28px 0 25px; border-top:0; }
  body:not(.page-home) .property-grid .property-card h3 { font-size:31px; }
  .page-contact .consultation { padding-block:55px 65px; gap:45px; }
  .page-contact .consultation h1 { font-size:44px; }
  .page-contact .consultation .page-lead { font-size:17px; }
  .page-contact .consultation-form-panel { margin-inline:0; padding:30px 23px; }
  .page-contact .consultation-form-panel h2 { font-size:31px; }
  .page-contact .consultation .contact-person { display:flex; }
  .page-contact .consultation .contact-expectation { display:block; }
  .page-contact .consultation .contact-phone { font-size:31px; }
  .page-contact .consultation .text-contact { font-size:14px; }
  .page-contact .optional-details .field-row { grid-template-columns:1fr; gap:0; }
  .property-page .property-intro { padding-block:50px 40px; }
  .property-page .property-intro h1 { font-size:clamp(39px,9.5vw,58px); }
  .property-page .property-price>strong { font-size:32px; }
  .property-page .property-hero { margin-top:24px; }
  .property-page .property-facts { padding-block:34px; }
  .property-page .property-facts strong { font-size:35px; }
  .property-page .property-facts span { font-size:13px; }
  .property-page .property-story { padding-block:65px; }
  .property-page .property-story p { font-size:17px; }
  .property-page :is(.property-story h2,.property-gallery h2) { font-size:38px; }
  .property-page .property-gallery { padding-bottom:65px; }
  .property-page .gallery-grid { gap:28px 14px; }
  .property-page .gallery-grid figcaption { font-size:11px; }
  .property-page .property-contact { padding-block:65px; }
  .property-page .property-contact h2 { font-size:39px; }
  html[lang^=zh] body:not(.page-home) :is(.page-intro h1,.v2-service-hero h1,.about-opening h1,.consultation h1) { font-size:40px; font-weight:400; line-height:1.3; }
}
@media (max-width:380px) {
  .page-contact .consultation h1 { font-size:39px; }
  .page-contact .consultation-form-panel { padding:26px 18px; }
  body:not(.page-home) .v2-service-aside { gap:17px; }
  body:not(.page-home) .v2-service-portrait { height:205px; }
  body:not(.page-home) .v2-service-aside strong { font-size:19px; }
  .property-page .property-price>.button { padding-inline:14px; font-size:12px; }
}
