/* One confident title weight throughout the site. */
.hero h1,.statement,.section-heading h2,.local-intro h2,.approach h2,.studio h2,.faq h2,.contact h2,.project-detail-title,.inquiry-dialog h2,.project-info h3,.approach-steps h3,.sector-detail h3{font-family:Manrope,Arial,sans-serif;font-weight:700}
h1 em,h2 em,h3 em{font-family:inherit;font-weight:inherit;letter-spacing:inherit;font-style:normal}
.portfolio-stack{padding-top:40px;padding-bottom:55px;scroll-margin-top:12px}
.stack-intro{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:14px 28px;max-width:1140px;margin-inline:auto}
.stack-intro p{font-size:.875rem;color:var(--muted);line-height:1.6;margin-top:10px}
.stack-motion{border-color:var(--line);color:var(--ink);background:none;padding:11px 16px;white-space:nowrap;font-size:.75rem}
.stack-motion:hover{background:#efefeb}
.stack-list{position:relative;display:flex;flex-direction:column;gap:18svh;list-style:none;margin:0 auto;max-width:1140px;padding:0 0 16svh;isolation:isolate}
.stack-card{position:relative;height:auto;z-index:calc(1 + var(--card-index));margin:0;perspective:1600px}
.stack-ready .stack-card{position:sticky;top:var(--sticky-top,30px)}
.project-detail-card{display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden;min-height:550px;border-radius:18px;background:var(--paper);border:1px solid #deded8;box-shadow:0 18px 55px #15151016;transform-origin:50% 0;will-change:transform}
.project-detail-media{position:relative;min-width:0;min-height:550px;background:#deded8}
.project-detail-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.project-detail-media--cathedral video{object-position:75% center}
.project-detail-media--dons{background:#ebe8de}
.project-detail-media--dons img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:clamp(18px,2.6vw,36px)}
.project-detail-content{min-width:0;padding:clamp(32px,3.6vw,52px) clamp(28px,3.2vw,46px);align-self:center}
.project-detail-content .eyebrow{display:block;line-height:1.7;color:#65655f;font-size:.75rem}
.project-detail-title{font-size:clamp(2rem,3.4vw,3.1rem);line-height:1.12;letter-spacing:-.055em;margin:22px 0;overflow-wrap:break-word}
.project-detail-content>p{font-size:1rem;line-height:1.8;color:var(--muted)}
.project-detail-content ul{margin:0;padding:26px 0;list-style:none}
.project-detail-content li{border-top:1px solid var(--line);padding:13px 0;font-size:.875rem;line-height:1.6}
.project-detail-content li:last-child{padding-bottom:0}
.project-detail-content .button{white-space:normal;gap:24px;max-width:100%;line-height:1.5}
.project-detail-content .button-dot{flex:none}
.project-link-note{display:block;margin-top:15px;font-size:.75rem;line-height:1.6;color:var(--muted)}
@media(max-width:1000px) and (min-width:761px){
 .project-detail-content{padding:30px 25px}
 .project-detail-title{font-size:2.2rem}
 .project-detail-content .button{gap:16px;padding-inline:20px;font-size:.8rem}
}
@media(max-width:760px){
 .portfolio-stack{padding-top:20px;padding-bottom:35px}
 .stack-intro{gap:18px;padding-block:12px 22px;align-items:flex-end}
 .stack-intro .eyebrow{font-size:.63rem}
 .stack-intro p{font-size:.75rem;max-width:175px;margin-top:8px}
 .stack-motion{font-size:.65rem;padding:10px 12px;gap:7px}
 .stack-list{gap:14svh;padding-bottom:13svh}
 .project-detail-card{grid-template-columns:1fr;min-height:0;border-radius:12px}
 .project-detail-media{min-height:0;height:auto;aspect-ratio:16/11}
 .project-detail-content{padding:28px 24px 32px}
 .project-detail-title{font-size:clamp(1.875rem,8.3vw,2.7rem);line-height:1.12;margin:18px 0}
 .project-detail-content .eyebrow{font-size:.6875rem}
 .project-detail-content>p{font-size:1rem;line-height:1.75}
 .project-detail-content ul{padding-block:22px}
 .project-detail-content li{font-size:.875rem;padding-block:12px}
 .project-detail-content .button{font-size:.8rem;padding:16px 21px;gap:18px;min-height:54px}
 .project-link-note{font-size:.75rem}
}
@media(prefers-reduced-motion:reduce),(max-height:560px){
 .stack-list{gap:30px;padding-bottom:0}
 .stack-ready .stack-card{position:relative;top:auto;perspective:none}
 .project-detail-card{transform:none!important;filter:none!important;will-change:auto}
}
