.contact-placeholder{display:none}
.contact-details{margin-top:3rem;border-top:1px solid var(--line)}
.contact-details>a,.contact-details>div{display:grid;gap:.1rem;padding:1rem 0;border-bottom:1px solid var(--line);text-decoration:none}
.contact-details span{font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}
.contact-details strong{font-size:1rem;overflow-wrap:anywhere}
.contact-details a:hover strong{color:var(--gold)}
.honeypot{position:absolute;left:-9999px;width:1px;height:1px}
.social-section{padding:3rem clamp(1.2rem,7vw,7rem);background:var(--cream);display:grid;grid-template-columns:1fr 3fr;gap:2rem}
.social-links{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid rgba(19,41,31,.2)}
.social-links>a,.social-links>span{min-height:84px;padding:1rem 1.25rem;border-right:1px solid rgba(19,41,31,.2);display:flex;align-items:center;justify-content:space-between;font-weight:700;text-decoration:none}
.social-links a:hover{background:var(--green);color:var(--cream)}
.social-pending{color:var(--muted);flex-direction:column;align-items:flex-start!important;justify-content:center!important}
.social-pending small{font-weight:500}
footer a{color:inherit}
.form-status{display:none;margin:0;padding:.9rem 1rem;border-left:3px solid var(--gold);font-weight:600}
.form-status:not(:empty){display:block}
.form-status.is-sending{background:var(--cream);color:var(--muted)}
.form-status.is-success{background:#e5f2e8;color:#174d28;border-color:#398553}
.form-status.is-error{background:#f8e7e3;color:#76291d;border-color:#b64b39}
.form-status a{font-weight:800}
#estimate-submit:disabled{opacity:.7;cursor:wait}
.hero-photo{margin:0;position:relative;align-self:stretch;min-height:410px;overflow:hidden;border:1px solid rgba(245,240,227,.2)}
.hero-photo img{width:100%;height:100%;object-fit:cover;display:block}
.hero-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:1rem 1.25rem;background:linear-gradient(transparent,rgba(8,20,14,.9));display:grid;padding-top:4rem}
.hero-photo figcaption span{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;color:#d5dbd7}
.hero-photo figcaption strong{font:700 1.2rem "Manrope",sans-serif;color:var(--cream)}
.work-section{padding:clamp(5rem,9vw,9rem) clamp(1.2rem,7vw,7rem);background:#0c1b14;color:var(--cream)}
.work-heading{display:grid;grid-template-columns:2fr 1fr;gap:3rem;align-items:end;margin-bottom:3rem}
.work-heading>p{color:#bfc9c2;max-width:390px}
.project-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:220px;gap:1rem}
.project-grid figure{margin:0;position:relative;overflow:hidden;background:var(--green-2)}
.project-grid img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .45s ease}
.project-grid figure:hover img{transform:scale(1.025)}
.project-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:2.7rem 1rem .8rem;background:linear-gradient(transparent,rgba(4,12,8,.8));font-weight:700}
.project-wide{grid-column:span 6}
.project-tall{grid-column:span 3;grid-row:span 2}
@media(max-width:850px){.social-section{grid-template-columns:1fr}.social-links{grid-template-columns:1fr;border-top:1px solid rgba(19,41,31,.2)}.social-links>a,.social-links>span{border-bottom:1px solid rgba(19,41,31,.2)}}
@media(max-width:850px){.hero-photo{min-height:360px}.work-heading{grid-template-columns:1fr}.project-wide{grid-column:span 6}.project-tall{grid-column:span 6}.project-grid{grid-auto-rows:260px}}
@media(max-width:560px){.project-grid{display:grid;grid-template-columns:1fr;grid-auto-rows:260px}.project-grid figure{grid-column:1;grid-row:auto}.project-grid .project-tall{height:360px}}
