/* Scoped editorial refresh: homepage and case index only. Existing brand and workflows retained. */
body { background:#f6f3ed; color:#262824; }
.site-header { border-radius:0; box-shadow:none; background:rgba(250,248,244,.97); }
.edit-kicker { font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.14em; color:#696557; margin:0 0 20px; }
.edit-hero { padding:140px 0 0; }
.edit-hero-copy { max-width:1180px; margin:0 auto; padding:24px 24px 52px; display:grid; grid-template-columns:1.3fr 1fr; column-gap:85px; align-items:start; }
.edit-hero-copy .edit-kicker { grid-column:1/-1; }
.edit-hero h1 { white-space:pre-line; font-family:Georgia,'Times New Roman',serif; font-size:clamp(42px,5.2vw,74px); font-weight:400; line-height:1.05; letter-spacing:-.035em; grid-row:2/5; margin:0; }
.edit-hero-copy > p:not(.edit-kicker):not(.edit-note) { font-size:17px; line-height:1.75; margin:0 0 25px; max-width:440px; }
.edit-hero .button { justify-self:start; border-radius:0; padding:15px 26px; }
.edit-note { font-size:12px; color:#66675e; margin:14px 0 0; }
.edit-hero-image { margin:0 auto; max-width:1440px; }
.edit-hero-image img { width:100%; height:auto; max-height:600px; object-fit:cover; }
.edit-hero-image figcaption { padding:13px 24px; font-size:11px; color:#5d5d53; border-bottom:1px solid #d6d1c6; }
.edit-hero-image figcaption a { text-decoration:underline; margin-left:10px; }
.edit-projects { max-width:1180px; margin:auto; padding:100px 24px; }
.edit-section-heading { display:flex; align-items:end; justify-content:space-between; gap:28px; margin-bottom:38px; }
.edit-section-heading h2,.edit-lead h2,.editorial-home .home-process-section h2 { font-family:Georgia,'Times New Roman',serif; font-weight:400; font-size:clamp(30px,3.3vw,46px); line-height:1.15; margin:0; }
.edit-project-grid { display:grid; grid-template-columns:1fr 1fr; gap:38px; }
.edit-project { display:block; }
.edit-project figure { margin:0 0 26px; }
.edit-project img { height:390px; object-fit:cover; }
.edit-project:first-child img { object-position:center 48%; }
.edit-project figcaption { padding:12px 0; border-bottom:1px solid #d6d1c6; font-size:11px; color:#615f55; }
.edit-project h3 { font-family:Georgia,'Times New Roman',serif; font-weight:400; font-size:30px; line-height:1.2; margin:0 0 17px; }
.edit-project .edit-kicker { margin-bottom:12px; }
.edit-project:hover h3 { text-decoration:underline; text-underline-offset:5px; }
.edit-lead { max-width:1132px; margin:0 auto 80px; padding:44px 0; border-top:1px solid #d6d1c6; border-bottom:1px solid #d6d1c6; display:grid; grid-template-columns:180px 1fr; gap:60px; align-items:center; }
.edit-lead > img { width:180px; height:225px; object-fit:cover; object-position:top; }
.edit-lead > div { max-width:690px; }
.edit-lead p:not(.edit-kicker) { max-width:620px; color:#5d6057; }
.edit-lead .text-link { display:inline-block; margin-right:24px; }
.editorial-home .home-process-section { padding-top:0; padding-bottom:75px; }
.editorial-home .step-card { background:transparent; border:0; border-top:1px solid #c9c5bb; box-shadow:none; border-radius:0; padding:25px 0; }
.editorial-home .home-decision-links { border-top:1px solid #d6d1c6; margin-top:30px; }
.edit-resources { max-width:1132px; margin:0 auto 65px; border-top:1px solid #d6d1c6; border-bottom:1px solid #d6d1c6; }
.edit-resources > summary { cursor:pointer; padding:25px 8px; font-size:17px; }
.edit-resources .section { padding-left:24px; padding-right:24px; }
.edit-case-header { max-width:1180px; margin:auto; padding:160px 24px 10px; }
.edit-case-header h1 { font-family:Georgia,'Times New Roman',serif; font-size:clamp(42px,5vw,70px); font-weight:400; line-height:1.1; letter-spacing:-.03em; margin:0 0 24px; }
.edit-case-header > p:not(.edit-kicker) { max-width:580px; color:#5d6057; font-size:17px; }
.editorial-cases .edit-projects { padding-top:60px; }
a:focus-visible, summary:focus-visible { outline:3px solid #796b4c; outline-offset:5px; }
@media(max-width:700px) {
 .edit-hero { padding-top:100px; }
 .edit-hero-copy { display:block; padding:24px 22px 34px; }
 .edit-hero h1 { margin-bottom:24px; font-size:44px; }
 .edit-hero-copy > p:not(.edit-kicker):not(.edit-note) { font-size:15px; }
 .edit-hero-image img { min-height:260px; object-fit:cover; object-position:30% center; }
 .edit-hero-image figcaption { padding:12px 22px; font-size:10px; }
 .edit-projects { padding:58px 22px; }
 .edit-section-heading { display:block; margin-bottom:28px; }
 .edit-section-heading > a { display:inline-block; margin-top:20px; }
 .edit-project-grid { grid-template-columns:1fr; gap:42px; }
 .edit-project img { height:auto; max-height:390px; object-fit:cover; }
 .edit-project:first-child img { height:370px; }
 .edit-project h3 { font-size:28px; }
 .edit-lead { margin:0 22px 55px; padding:30px 0; grid-template-columns:1fr; gap:25px; }
 .edit-lead > img { width:110px; height:140px; }
 .edit-resources { margin:0 22px 50px; }
 .edit-resources > summary { font-size:15px; }
 .edit-case-header { padding:130px 22px 0; }
 .editorial-cases .edit-projects { padding-top:42px; }
}
@media(prefers-reduced-motion:reduce) { html {scroll-behavior:auto} }
.edit-case-header .breadcrumb { margin-bottom:25px; color:#696557; }
.edit-hero .button.button-primary { border-radius:0 !important; box-shadow:none !important; }
.edit-projects .text-link,.edit-lead .text-link,.edit-case-header .text-link { color:#343b30; text-decoration:underline; text-underline-offset:5px; }

/* Astra review: service clarity and evidence stay visible within the editorial layout. */
.edit-hero-copy { grid-template-columns:1.2fr 1fr; gap:76px; padding-bottom:48px; align-items:center; }
.edit-hero-copy .edit-kicker { line-height:1.6; }
.edit-hero h1 { font-size:clamp(44px,5.1vw,72px); line-height:1.07; }
.edit-hero-intro { padding-top:28px; }
.edit-hero-intro > p:first-child { max-width:450px; margin:0 0 28px; font-size:17px; line-height:1.8; color:#4f534b; }
.edit-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px 22px; }
.edit-hero-actions .text-link { font-size:13px; }
.edit-hero-image { padding:0 24px; }
.edit-hero-image img { max-height:570px; }
.edit-hero-image figcaption { display:block; line-height:1.65; padding:14px 0; font-size:12px; }
.edit-hero-image figcaption a { white-space:nowrap; }
.edit-scope,.edit-policy,.edit-inquiry { max-width:1132px; margin:0 auto; }
.edit-scope { padding:88px 0 0; scroll-margin-top:105px; }
.edit-scope-intro { display:grid; grid-template-columns:1.2fr 1fr; gap:76px; margin-bottom:44px; }
.edit-scope h2,.edit-policy h2,.edit-inquiry h2 { font-family:Georgia,'Times New Roman',serif; font-weight:400; font-size:clamp(30px,3.3vw,46px); line-height:1.17; letter-spacing:-.02em; margin:0; }
.edit-scope h2 { white-space:pre-line; }
.edit-scope-intro > div:last-child p { color:#51564c; font-size:15px; line-height:1.8; margin:0 0 15px; }
.edit-scope-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; }
.edit-scope-item { border-top:1px solid #aba795; padding:22px 0 0; display:flex; flex-direction:column; }
.edit-scope-label { display:flex; gap:12px; align-items:baseline; margin-bottom:20px; }
.edit-scope-label span { font-family:Georgia,'Times New Roman',serif; font-size:18px; color:#77715e; }
.edit-scope-label p { margin:0; font-size:12px; font-weight:650; letter-spacing:.02em; }
.edit-scope-item h3 { font-family:Georgia,'Times New Roman',serif; font-size:25px; line-height:1.25; font-weight:400; margin:0 0 18px; }
.edit-scope-item > p { font-size:13px; line-height:1.75; color:#53574f; margin:0 0 15px; }
.edit-scope-item p.edit-output { color:#343d30; font-weight:600; }
.edit-scope-item p.edit-boundary { padding-top:15px; border-top:1px solid #ddd8ce; color:#656558; font-size:12px; }
.edit-scope-item > .text-link { font-size:12px; margin-top:auto; padding-top:4px; }
.edit-projects { padding-top:94px; padding-bottom:82px; }
.edit-project-summary { font-size:15px; color:#555a51; line-height:1.75; max-width:510px; margin:0 0 22px; }
.edit-project figure { margin-bottom:22px; }
.edit-project figcaption { font-size:12px; line-height:1.65; }
.edit-project > .text-link { font-size:13px; }
.edit-policy { background:#eae7de; padding:42px 40px; margin-bottom:72px; }
.edit-policy .edit-section-heading { margin-bottom:32px; align-items:center; }
.edit-policy h2 { font-size:clamp(28px,2.8vw,38px); }
.edit-policy .edit-kicker { margin-bottom:12px; }
.edit-policy .text-link { font-size:12px; flex-shrink:0; }
.edit-policy-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:34px; }
.edit-policy-grid article { border-top:1px solid #bdb9aa; padding-top:18px; }
.edit-policy-grid h3 { font-size:16px; font-weight:600; margin:0 0 10px; }
.edit-policy-grid p { font-size:13px; line-height:1.8; margin:0; color:#54594f; }
.edit-lead { grid-template-columns:150px 1fr; gap:48px; margin-bottom:65px; padding:0 0 48px; border-top:0; }
.edit-lead > img { width:150px; height:187px; }
.edit-lead h2 { font-size:clamp(28px,3vw,40px); }
.edit-lead .edit-kicker { margin-bottom:14px; }
.edit-lead p:not(.edit-kicker) { font-size:15px; line-height:1.8; }
.edit-lead .text-link { font-size:13px; }
.editorial-home .home-process-section,.editorial-home .search-intent-section { width:calc(100% - 48px); max-width:1132px; }
.editorial-home .home-process-section { padding-bottom:44px; }
.editorial-home .section-kicker { color:#696557; font-size:11px; letter-spacing:.12em; text-transform:uppercase; }
.editorial-home .home-process-section .section-lead { font-size:15px; line-height:1.8; max-width:660px; }
.editorial-home .process-steps { gap:28px; }
.editorial-home .step-card h3 { font-size:18px; line-height:1.35; }
.editorial-home .step-card p { font-size:13px; line-height:1.8; }
.editorial-home .home-decision-links { grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 30px; border:0; }
.editorial-home .home-decision-links a { padding:20px 0; background:transparent; border:0; border-top:1px solid #d6d1c6; box-shadow:none; border-radius:0; }
.editorial-home .home-decision-links a:hover { transform:none; border-top-color:#6c765e; }
.editorial-home .home-decision-links strong { color:#30382c; font-size:14px; }
.editorial-home .home-decision-links span { font-size:12px; line-height:1.75; }
.editorial-home .search-intent-section { padding:28px 0 62px; border-top:1px solid #d6d1c6; }
.editorial-home .search-intent-section h2 { font-family:Georgia,'Times New Roman',serif; font-size:32px; line-height:1.25; font-weight:400; max-width:700px; }
.editorial-home .search-intent-section .section-heading { margin-bottom:20px; }
.editorial-home .search-intent-grid { margin-top:0; }
.edit-inquiry { display:grid; grid-template-columns:1.35fr 1fr; gap:80px; align-items:center; padding:46px 0; border-top:1px solid #aaa694; border-bottom:1px solid #aaa694; margin-bottom:48px; }
.edit-inquiry .edit-kicker { margin-bottom:16px; }
.edit-inquiry h2 { font-size:38px; }
.edit-inquiry p:not(.edit-kicker) { font-size:15px; line-height:1.8; color:#53584e; margin:20px 0 0; }
.edit-inquiry-actions { display:flex; flex-direction:column; align-items:flex-start; gap:15px; }
.edit-inquiry .button { border-radius:0; box-shadow:none; }
.edit-inquiry-actions > span { font-size:12px; color:#626557; }
.edit-inquiry-actions .text-link { font-size:13px; }
.edit-scope .text-link,.edit-policy .text-link,.edit-inquiry .text-link,.edit-hero-actions .text-link { color:#343d30; text-decoration:underline; text-underline-offset:5px; text-decoration-thickness:1px; }
.edit-resources > summary { line-height:1.5; }
.editorial-cases #case-facts > .section { width:100%; padding:20px 8px 40px; }
.editorial-cases #case-facts .section-heading h2 { font-family:Georgia,'Times New Roman',serif; font-size:36px; line-height:1.2; font-weight:400; }
.editorial-cases #case-facts .section-lead { font-size:15px; }
@media(max-width:1190px) {
 .edit-scope,.edit-policy,.edit-inquiry,.edit-lead { margin-left:24px; margin-right:24px; }
 .edit-scope-grid { gap:22px; }
 .edit-hero-copy,.edit-scope-intro { gap:42px; }
}
@media(max-width:950px) {
 .edit-scope-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:38px 34px; }
 .edit-scope-item h3 { min-height:0; }
 .edit-scope-item > p { font-size:14px; }
 .edit-scope-intro { grid-template-columns:1fr 1fr; gap:34px; }
 .edit-policy .edit-section-heading { display:block; }
 .edit-policy .edit-section-heading > a { display:inline-block; margin-top:20px; }
 .edit-inquiry { gap:38px; }
}
@media(max-width:700px) {
 .edit-hero-copy { padding:24px 22px 32px; }
 .edit-hero h1 { font-size:44px; margin-bottom:0; }
 .edit-hero .edit-kicker { font-size:10px; max-width:330px; margin-bottom:19px; }
 .edit-hero-intro { padding-top:25px; }
 .edit-hero-intro > p:first-child { font-size:15px; line-height:1.8; margin-bottom:24px; }
 .edit-hero-actions { display:flex; flex-direction:column; align-items:stretch; gap:17px; }
 .edit-hero-actions .button { width:100%; text-align:center; }
 .edit-hero-actions .text-link { align-self:flex-start; }
 .edit-note { margin-top:18px; }
 .edit-hero-image { padding:0; }
 .edit-hero-image figcaption { padding:13px 22px; font-size:11px; }
 .edit-scope,.edit-policy,.edit-inquiry { margin-left:22px; margin-right:22px; }
 .edit-scope { padding-top:54px; scroll-margin-top:100px; }
 .edit-scope-intro { grid-template-columns:1fr; gap:24px; margin-bottom:28px; }
 .edit-scope-intro .edit-kicker { margin-bottom:16px; }
 .edit-scope h2 { font-size:32px; }
 .edit-scope-intro > div:last-child p { font-size:14px; }
 .edit-scope-grid { grid-template-columns:1fr; gap:30px; }
 .edit-scope-label { margin-bottom:16px; }
 .edit-scope-item h3 { font-size:26px; max-width:340px; margin-bottom:14px; }
 .edit-scope-item p.edit-boundary { font-size:12px; }
 .edit-scope-item > .text-link { font-size:13px; }
 .edit-projects { padding-top:62px; padding-bottom:54px; }
 .edit-project-summary { font-size:14px; }
 .edit-project figcaption { font-size:11px; }
 .edit-policy { padding:28px 24px; margin-bottom:52px; }
 .edit-policy-grid { grid-template-columns:1fr; gap:24px; }
 .edit-policy-grid p { font-size:14px; }
 .edit-lead { margin-left:22px; margin-right:22px; margin-bottom:45px; gap:24px; padding-bottom:34px; }
 .edit-lead > img { width:110px; height:140px; }
 .edit-lead h2 { font-size:30px; }
 .edit-lead .text-link { margin:8px 20px 0 0; }
 .editorial-home .home-process-section,.editorial-home .search-intent-section { width:calc(100% - 44px); }
 .editorial-home .home-decision-links { grid-template-columns:1fr; gap:0; }
 .editorial-home .home-decision-links a { padding:18px 0; }
 .editorial-home .home-decision-links span { font-size:13px; }
 .editorial-home .search-intent-section h2 { font-size:29px; }
 .editorial-home .search-intent-section { padding-bottom:38px; }
 .edit-inquiry { grid-template-columns:1fr; gap:26px; padding:34px 0; }
 .edit-inquiry h2 { font-size:32px; }
 .edit-inquiry p:not(.edit-kicker) { font-size:14px; }
 .edit-inquiry-actions { align-items:stretch; }
 .edit-inquiry-actions .button { text-align:center; }
 .edit-inquiry-actions .text-link { align-self:flex-start; }
 .editorial-cases #case-facts .section-heading h2 { font-size:30px; }
}

/* Final residential sequence: photographed installation + a clearly labelled text archive. */
.editorial-home .text-link,.editorial-cases .text-link,.edit-case-header .text-link { color:#343d30 !important; text-decoration:underline !important; text-underline-offset:5px; text-decoration-thickness:1px; }
.editorial-home .text-link::after,.editorial-cases .text-link::after,.edit-case-header .text-link::after { content:none; }
.edit-hero h1 { font-size:clamp(43px,4.55vw,65px); }
.edit-hero-actions { gap:18px 25px; }
#selected-projects { scroll-margin-top:105px; }
.editorial-home > .edit-projects { padding-top:72px; padding-bottom:78px; }
.editorial-home > .edit-scope { padding-top:0; padding-bottom:82px; }
.edit-scope-cover { height:390px; padding:34px 36px; display:flex; flex-direction:column; justify-content:space-between; background:#e7e2d6; color:#454a3a; }
.edit-scope-cover .edit-kicker { font-size:10px; margin-bottom:0; }
.edit-scope-cover-categories { display:flex; flex-direction:column; gap:8px; }
.edit-scope-cover-categories span { font-family:Georgia,'Times New Roman',serif; font-size:clamp(28px,3vw,42px); line-height:1.14; letter-spacing:-.02em; }
.edit-scope-cover-categories span + span { padding-top:9px; border-top:1px solid #c8c2b2; }
.edit-scope-cover > p:last-child { font-size:12px; margin:0; max-width:260px; color:#666858; }
.edit-record-caption { padding:12px 0; margin:0 0 22px; border-bottom:1px solid #d6d1c6; font-size:12px; line-height:1.65; color:#615f55; }
.edit-policy .edit-section-heading { align-items:flex-end; }
.edit-policy-intro { max-width:660px; font-size:14px; line-height:1.8; color:#54594f; margin:20px 0 0; }
.edit-faq { max-width:1132px; margin:0 auto 68px; display:grid; grid-template-columns:1fr 1.6fr; gap:70px; }
.edit-faq h2 { font-family:Georgia,'Times New Roman',serif; font-size:38px; line-height:1.15; font-weight:400; margin:0; }
.edit-faq article { border-top:1px solid #d2cdbf; padding:20px 0 24px; }
.edit-faq h3 { font-size:16px; font-weight:600; line-height:1.6; margin:0 0 12px; }
.edit-faq article p { font-size:14px; line-height:1.8; color:#54594f; margin:0; }
.editorial-home .edit-resources .home-process-section { padding-top:30px; }
.nav-cta { border-radius:0; }
@media(max-width:1190px) { .edit-faq { margin-left:24px; margin-right:24px; } }
@media(max-width:950px) {
 .edit-scope-cover { padding:28px; }
 .edit-scope-cover-categories span { font-size:31px; }
 .edit-faq { gap:35px; }
}
@media(max-width:700px) {
 .edit-hero h1 { font-size:43px; }
 html[lang="zh-CN"] .editorial-home .edit-hero h1 { font-size:clamp(30px,8.8vw,36px); line-height:1.18; }
 html[lang="zh-CN"] .editorial-home h2,html[lang="zh-CN"] .editorial-cases h2 { text-wrap:balance; }
 .editorial-home > .edit-projects { padding-top:48px; padding-bottom:56px; }
 .editorial-home > .edit-scope { padding-bottom:56px; }
 .edit-scope-cover { height:auto; min-height:320px; padding:28px; gap:34px; }
 .edit-scope-cover-categories span { font-size:33px; }
 .edit-record-caption { font-size:11px; }
 .edit-policy h2 { font-size:30px; }
 .edit-faq { grid-template-columns:1fr; gap:26px; margin:0 22px 42px; }
 .edit-faq .edit-kicker { margin-bottom:15px; }
 .edit-faq h2 { font-size:32px; }
 .edit-faq article:last-child { padding-bottom:0; }
}
