/* A quieter material palette, with original photography carrying the colour. */
:root{--paper:#f7f5ef;--ink:#283a33;--muted:#59645e;--line:#d2d3c9;--pale:#eeeee5;--forest:#243e33;--clay:#783c3e;--oxide:#783c3e;--acid:#e5e7da}
body{background:var(--paper)}
.page-epc{--oxide:#783c3e}
.site-header{background:var(--paper)}
.site-header .site-nav>a:not(.nav-contact){font-weight:550}
.site-nav>a[aria-current]{color:var(--oxide)}
.site-header .nav-contact{border-color:var(--line)}
.site-header .nav-contact:hover{border-color:var(--forest)}
h1,h2,h3{ text-wrap:balance }
.serif,.gallery-intro h1,.hero h1,.hero-rcc h1,.page-steel .hero h1,.epc-hero h1{letter-spacing:-.035em}
a{text-underline-offset:.25em}
input,textarea{caret-color:var(--oxide)}
::selection{background:#e1ded3;color:#283a33}
.epc-hero{padding-block:clamp(36px,4.7vw,68px) 48px;align-items:start}
.epc-hero-photo{padding-top:5px}
.epc-hero-photo .construction-photo img{aspect-ratio:4/3;object-fit:cover;object-position:50% 48%}
.epc-hero-photo-link{margin-top:16px}
.project-feature{padding-bottom:44px;scroll-margin-top:calc(var(--header-height) + 20px)}
.featured-project-photo>a{display:block;background:var(--pale)}
.featured-project-photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;max-height:620px;object-fit:cover;object-position:50% 47%}
.featured-project-photo figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;line-height:1.6;padding-top:12px;color:var(--muted)}
.featured-project-photo figcaption a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;color:var(--ink)}
@media(max-width:600px){.project-feature{padding-bottom:28px}.featured-project-photo img{aspect-ratio:4/3}.featured-project-photo figcaption{flex-wrap:wrap;gap:0 12px;font-size:12px}}
.epc-section-heading,.site-photo-heading{gap:clamp(24px,5vw,72px)}
.overview-route h3{margin-top:18px;margin-bottom:13px}
.overview-route figcaption{font-size:12px}
.epc-stage-tabs button[aria-selected=true]{background:#edece3}
.model-controls,.peb-study,.page-rcc .hero-visual,.hero-visual{background:var(--pale)}
.model-controls{border-color:var(--line)}
.model-viewport{background:transparent}
.project-collection{border-block:1px solid var(--line);background:#efeee6}
.archive-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 18px}
.archive-photo{min-width:0}
.archive-photo>a{display:block;overflow:hidden;background:#e3e4da}
.archive-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform 240ms ease}
.archive-photo>a:hover img{transform:scale(1.025)}
.archive-photo figcaption{padding-top:10px;font-size:12px;line-height:1.55;display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.archive-photo figcaption span{font-weight:550}
.archive-photo figcaption a{color:var(--muted);min-height:36px;display:inline-flex;align-items:center;text-decoration:underline}
.collection-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--line);margin-top:28px;padding-top:18px}
.collection-footer p{font-size:14px;color:var(--muted)}
.gallery-photo figcaption{font-size:13px;line-height:1.6;gap:8px 16px}
.gallery-photo figcaption a{min-height:36px;display:inline-flex;align-items:center}
.project-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 22px}
.project-gallery .gallery-photo figcaption{flex-direction:column;align-items:flex-start}
.site-footer{background:#efeee6}
.reading-header,.gallery-intro{padding-top:48px}
.gallery-intro h1{margin-top:0}
.reading-body p{color:var(--ink)}
@media(min-width:801px){.epc-hero-photo .construction-photo img{min-height:400px}.epc-hero-note{margin-top:20px;padding-top:18px}}
@media(max-width:1100px){.archive-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}.archive-photo figcaption{font-size:12px}.archive-photo figcaption a{min-height:44px}.collection-footer{align-items:start;flex-direction:column;gap:8px}.project-gallery{grid-template-columns:1fr}.gallery-photo figcaption{flex-direction:row!important;align-items:baseline!important}.epc-hero{padding-top:32px}.epc-hero-photo .construction-photo img{aspect-ratio:4/3}.reading-header,.gallery-intro{padding-top:32px}}
@media(max-width:600px){
 .epc-hero{display:flex;flex-direction:column;gap:0}
 .epc-hero-copy{display:contents}
 .epc-hero h1{order:0}.epc-lead{order:1;margin-top:22px}
 .epc-hero-photo{order:2;margin-top:24px;width:100%;padding-top:0}
 .epc-hero-photo-link{margin-top:10px}
 .epc-intro{order:3;margin-top:22px}.epc-actions{order:4;width:100%;margin-top:22px}
 .epc-hero-note{order:5;margin-top:22px;padding-top:16px}
}
@media(prefers-reduced-motion:reduce){.archive-photo img{transition:none}}
.reduced-motion .archive-photo img{transition:none}
/* Approved Works division lockup, 2026-10-27; preserve the complete artwork and clear space. */
:root{--header-height:96px}
.site-header .brand.works-logo,.site-footer .brand.works-logo{display:inline-flex;flex:0 0 auto;gap:0;min-height:44px}
.site-header .brand.works-logo img,.site-footer .brand.works-logo img{display:block;width:220px;max-width:100%;height:auto;transform:none}
@media(max-width:600px){:root{--header-height:86px}.site-header .header-row{gap:12px}.site-header .brand.works-logo img,.site-footer .brand.works-logo img{width:200px}}
@media(max-width:380px){.site-header .brand.works-logo img,.site-footer .brand.works-logo img{width:180px}}
/* Verified parent-company identity and original certificate documents. */
.footer-directory{grid-template-columns:1.4fr 1fr 1.1fr 1fr}
.footer-directory>div{min-width:0}
.footer-directory .footer-legal{max-width:34ch;line-height:1.65;margin-top:17px}
.footer-legal strong{display:block;color:var(--ink);font-weight:600;margin-top:5px}
.footer-contact{display:flex;flex-direction:column;align-items:flex-start;margin-top:15px}
.footer-contact a{display:inline-flex;align-items:center;min-height:36px;font-size:13px;text-decoration:underline}
.footer-identity address,.contact-office address{font-style:normal;font-size:12px;color:var(--muted);line-height:1.75;margin-top:10px}
.footer-credentials{display:grid;grid-template-columns:1fr 2fr;gap:48px;padding:28px 0 30px;border-top:1px solid var(--line);scroll-margin-top:calc(var(--header-height) + 18px)}
.footer-credentials h2{font:600 13px/1.5 var(--sans);margin:0 0 13px;color:var(--ink)}
.footer-credentials p{font-size:12px;line-height:1.75;color:var(--muted)}
.footer-credentials .credential-title{font-size:18px;line-height:1.5;color:var(--ink);font-weight:550;margin-bottom:5px}
.credential-title>span{margin-inline:5px;color:var(--muted)}
.footer-credentials a{display:inline-flex;align-items:center;gap:6px;min-height:44px;text-decoration:underline;font-size:13px;line-height:1.5}
.footer-credentials a:hover,.footer-contact a:hover{color:var(--oxide)}
.footer-pec>a>span,.certificate-format{font-size:10px;font-weight:400;color:var(--muted)}
.footer-credentials .footer-secp{margin-top:5px}
.iso-certificates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;list-style:none;padding:0;margin:0}
.iso-certificates li{min-width:0}
.iso-certificates a{font-weight:600;font-size:15px;white-space:nowrap}
.iso-certificates li>span{display:block;color:var(--muted);font-size:12px;line-height:1.65;max-width:25ch}
.footer-credentials .credential-note{margin-top:17px;max-width:78ch}
.contact-office{border-block:1px solid var(--line);padding:20px 0;margin:22px 0}
.contact-office h3{font-size:14px;margin-top:18px}
.contact-office address{font-size:14px}
.contact-office>a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;text-decoration:underline}
.contact-office>a:last-child{margin-top:8px}
.privacy-operator{max-width:70ch;font-size:15px;line-height:1.75;margin-top:18px;color:var(--muted)}
@media(max-width:1100px){.footer-directory{grid-template-columns:1.2fr 1fr 1fr}.footer-credentials{gap:32px;grid-template-columns:1fr 1.8fr}.iso-certificates{gap:14px}.iso-certificates a{font-size:13px}}
@media(max-width:800px){.footer-credentials{grid-template-columns:1fr;gap:24px}.footer-directory{grid-template-columns:1fr 1fr}.footer-directory>div:last-child{grid-column:auto}}
@media(max-width:600px){.footer-directory .footer-legal{max-width:37ch}.footer-contact a{min-height:44px}.footer-credentials{padding:24px 0}.iso-certificates{grid-template-columns:1fr;gap:12px}.iso-certificates li{display:grid;grid-template-columns:145px 1fr;gap:12px;align-items:center}.iso-certificates a{font-size:13px}.footer-credentials .credential-note{margin-top:20px}}
@media(max-width:360px){.iso-certificates li{grid-template-columns:1fr;gap:0}.iso-certificates li>span{max-width:none}}
