/* Homepage refinements. This file is loaded only by index.html. */
body[data-page="home"]{font-size:17px;--muted:#465046;--gold:#6d5b3b}
.home-page p{font-size:17px;line-height:1.75}
.home-page .eyebrow{font-size:13px;line-height:1.5}
.home-page .hero-copy>.eyebrow{margin-bottom:28px}
.home-page .trust-hero h1{font-size:clamp(38px,4.2vw,60px);line-height:1.13;max-width:650px;text-wrap:balance}
.home-page .trust-hero .lead{font-size:17px;max-width:570px}
.home-page .evidence-caption{justify-content:flex-end;font-size:14px}
.pending-field{display:inline-block;max-width:100%;padding:3px 7px;background:#fff1bf;color:#473e21;border-radius:3px;font-family:inherit;font-weight:500;line-height:1.5;box-decoration-break:clone;overflow-wrap:anywhere}
.home-trust-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:24px 0;border-block:1px solid var(--line);gap:20px}
.home-trust-stats>div{display:flex;flex-direction:column;gap:10px;padding:0 20px;border-right:1px solid var(--line);min-width:0}
.home-trust-stats>div:first-child{padding-left:0}.home-trust-stats>div:last-child{border:0}
.home-trust-stats strong{font-size:22px;line-height:1.4}.home-trust-stats>div>span{font-size:15px;color:#35493d}
.home-page .home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 28px}
.home-page .home-project{min-width:0}.home-page .home-project p{font-size:17px}
.home-page .home-project .project-location{font-size:13px;line-height:2;color:#35493d;max-width:none;margin-bottom:12px}
.home-page .home-project-media{aspect-ratio:4/3}.project-photo-wrap{position:relative}
.image-pending{position:absolute;inset:auto 16px 16px;max-width:calc(100% - 32px);font-size:14px}
.home-page .home-project-media img{object-fit:cover}
.home-inspection{position:relative;height:440px;margin:12px 0 28px;background:#26372f;overflow:hidden}
.home-inspection>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 65%}
.home-inspection>div{position:absolute;inset:0;display:flex;align-items:flex-end;padding:36px;background:linear-gradient(transparent 20%,rgba(10,25,18,.7))}
.home-inspection p{max-width:820px;background:rgba(23,43,31,.88);padding:16px 22px;color:white;font-family:Georgia,"Times New Roman",serif;font-size:clamp(25px,3.4vw,42px);line-height:1.25;margin:0;text-wrap:balance}
html:lang(zh-CN) .home-inspection p{font-family:"Microsoft YaHei",sans-serif;line-height:1.5}
.home-page .trust-steps{gap:32px 24px}
.home-page .trust-steps li:before{font-size:34px;font-weight:750;color:#263f30;line-height:1;margin-bottom:20px;font-variant-numeric:tabular-nums}
.home-page .trust-steps h3{font-size:24px}
.home-page .trust-steps p{font-size:16px;color:#35493d;line-height:1.8}
.home-page .trust-steps .step-time{font-size:14px;color:#263f30;margin:16px 0 0}
.home-page .trust-steps .design-credit{font-size:15px}
.home-page .home-people{grid-template-columns:1.05fr 1.3fr .85fr;gap:30px;align-items:start;padding:42px 32px}
.home-page .home-people h2{font-size:clamp(30px,3vw,40px)}
.home-page .home-people p{font-size:16px;color:#f0f3ed}.home-page .home-people .eyebrow{font-size:13px;color:#e0d4b5}
.home-page .team-pending{height:330px;width:100%;min-width:0;background:#e9e5da}
.home-page .team-pending img{width:100%;height:100%;object-fit:cover}
.home-page .team-pending .image-pending{padding:0;background:none;color:inherit;bottom:14px;left:12px;right:12px;max-width:none}
.home-page .home-materials .support-grid p{font-size:17px;color:#35493d;line-height:1.8}
.home-support-photo{position:relative;aspect-ratio:4/3;margin:0 0 24px;background:#e9e5da;overflow:hidden}
.home-support-photo img{width:100%;height:100%;display:block;object-fit:cover}
.home-support-photo figcaption{position:absolute;inset:auto 12px 12px;font-size:14px}
.home-page .text-link{font-size:15px}
body[data-page="home"] .footer-grid{grid-template-columns:1fr .7fr 1.5fr}
.home-footer-details{display:grid;gap:18px;grid-column:1/-1;border-top:1px solid var(--line);padding-top:26px;grid-template-columns:1fr 1fr}
.home-footer-details>div{min-width:0}.home-footer-details strong{display:block;font-size:16px;margin-bottom:8px}
.home-footer-details p{font-size:16px;line-height:1.8;margin-bottom:6px;color:#35493d}
.home-footer-details .time-note{font-size:14px;color:#35493d}
@media(max-width:1000px){.home-page .home-people{grid-template-columns:1fr 1fr}.home-people>div:first-child{grid-column:1/-1}.home-page .team-pending{height:300px}.home-trust-stats strong{font-size:18px}}
@media(max-width:620px){
 body[data-page="home"]{font-size:16px}.home-page p{font-size:16px}
 .home-page .trust-hero h1{font-size:38px;line-height:1.15}.home-page .hero-copy>.eyebrow{margin-bottom:26px}
 .home-page .trust-hero .lead{font-size:16px}.home-page .evidence-caption{align-items:flex-end}
 .home-trust-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px;padding:24px 0}
 .home-trust-stats>div{padding:0;gap:7px;border:0}.home-trust-stats strong{font-size:18px}.home-trust-stats>div>span{font-size:14px}
 .home-page .home-project-grid{grid-template-columns:1fr;gap:32px}.home-page .home-project p{font-size:16px}
 .home-page .home-project .project-location{font-size:13px}.home-page .home-project h3{font-size:27px}
 .home-inspection{height:310px;margin:0 0 20px}.home-inspection>div{padding:16px}.home-inspection p{font-size:26px;padding:14px 16px}
 .home-page .trust-steps li{padding-left:52px}.home-page .trust-steps li:before{font-size:32px;top:18px}
 .home-page .trust-steps h3{font-size:23px}.home-page .trust-steps p{font-size:16px}.home-page .trust-steps .step-time{font-size:14px}
 .home-page .home-people{grid-template-columns:1fr;padding:28px 22px;gap:24px}.home-people>div:first-child{grid-column:auto}
 .home-page .team-pending{height:auto;aspect-ratio:4/3}.home-page .home-people p{font-size:16px}
 .home-page .home-materials .support-grid p{font-size:16px}.home-support-photo{margin-top:6px}
 body[data-page="home"] .footer-grid{grid-template-columns:1fr 1fr}.home-footer-details{grid-template-columns:1fr}
 body[data-page="home"] .whatsapp-float{min-height:42px;padding:0 11px;gap:7px;font-size:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s}
 body[data-page="home"] .whatsapp-float svg{width:20px;height:20px}
 body[data-page="home"].show-mobile-chat .whatsapp-float{opacity:1;visibility:visible;pointer-events:auto;transform:none}
}
@media(prefers-reduced-motion:reduce){body[data-page="home"] .whatsapp-float{transition:none}}

@media(max-width:620px){.home-trust-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.home-trust-stats>div>span{font-size:13px}.home-trust-stats strong{font-size:24px}}

/* AI illustration labels remain visible in every language and preview mode. */
.ai-image-label{position:absolute;left:12px;bottom:12px;display:inline-block;padding:6px 10px;background:#f7f6f2;color:#26372f;border:1px solid #c5c5b8;font-size:12px;line-height:1.4;max-width:calc(100% - 24px)}
.home-support-photo figcaption{position:absolute;inset:0;pointer-events:none}.home-support-photo .ai-image-label{bottom:12px}

/* Six-card homepage collection */
.home-page .home-project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}
.home-page .home-project .project-type{font-size:14px;line-height:1.6;color:#35493d;margin:0 0 12px}
.home-page .home-project h3{font-size:26px}.home-business-hours{grid-column:1/-1}
@media(max-width:900px){.home-page .home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.home-page .home-project-grid{grid-template-columns:1fr}.home-page .home-project h3{font-size:26px}}

/* Selected reference photography; team photo removed. */
.home-page .home-people{grid-template-columns:1fr 1.4fr}.home-page .home-people>div:first-child{grid-column:auto}
.home-reference-photo{display:block;border:0;padding:0;width:100%;text-align:left;background:transparent;cursor:zoom-in}
.home-reference-photo:focus-visible{outline:2px solid var(--forest);outline-offset:5px}
.home-reference-photo img{object-position:center 58%}.reference-label{position:absolute;bottom:12px;left:12px;background:#f7f6f2;color:#26372f;border:1px solid #c5c5b8;font-size:12px;line-height:1.4;padding:6px 10px;pointer-events:none}
.lightbox .reference-label{position:static;align-self:center;margin-top:8px}
.lightbox .lightbox-close,.lightbox .lightbox-arrow{z-index:3}
.lightbox .lightbox-close{background:#26372f;border-radius:50%}
@media(max-width:620px){.home-page .home-people{grid-template-columns:1fr}}
