/* Existing r2m-service-directory--photos rules remain the card foundation. */
.r2m-service-directory--projects .r2m-service-directory-item h3{margin-bottom:0;text-align:center}
.r2m-service-directory--projects .pd-project-card-link{display:block;color:inherit;text-decoration:none}
.r2m-service-directory--projects .pd-project-card-link:hover h3{color:var(--r2m-color-primary-hover);text-decoration:underline}
.r2m-service-directory--projects .pd-project-card-link:focus-visible{outline:2px solid var(--r2m-color-primary);outline-offset:4px}
body.single-r2m_project #page{max-width:none}
body.single-r2m_project .site-content,body.single-r2m_project .site-main{margin:0;padding:0}
body.single-r2m_project .pd-project-page{width:100%}
.pd-project-page,.pd-project-page *{box-sizing:border-box}
.pd-project-top{background:var(--r2m-color-surface)}
.pd-project-inner{width:100%;max-width:1526px;margin-inline:auto;padding-inline:var(--r2m-content-pad-x)}
.pd-project-title{margin:0 0 var(--r2m-space-8);color:var(--r2m-color-black);font-family:Montserrat,Helvetica,Arial,sans-serif;font-size:clamp(2rem,3.7vw,4.5rem);line-height:1.15;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.pd-project-intro{display:grid;grid-template-columns:minmax(0,3fr) minmax(260px,1fr);gap:var(--r2m-space-6);align-items:start}
.pd-project-gallery,.pd-project-overview{min-width:0}
.pd-project-main-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--r2m-space-3)}
.pd-project-main-images[data-count="1"]{grid-template-columns:1fr}
.pd-project-additional{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--r2m-space-6);margin-top:var(--r2m-space-4)}
.pd-project-additional[data-count="1"]{grid-template-columns:1fr}
.pd-project-additional[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.pd-project-figure{min-width:0;margin:0}
.pd-project-frame{position:relative;width:100%;aspect-ratio:3/2;overflow:hidden;border:3px solid var(--r2m-color-primary);background:var(--r2m-color-gray-100)}
.pd-project-main-images[data-count="1"] .pd-project-frame{aspect-ratio:2/1}
.pd-project-frame img{position:absolute;inset:0;display:block;width:100%;max-width:none;height:100%;margin:0;object-fit:contain}
.pd-project-frame--cover img{object-fit:cover}
.pd-project-figure figcaption{margin-top:var(--r2m-space-2);font-size:.95rem;color:var(--r2m-color-text-muted)}
.pd-project-overview h2{margin:0 0 var(--r2m-space-2);color:var(--r2m-color-primary);font-size:clamp(1.4rem,2vw,2rem);line-height:1.25}
.pd-project-overview p{font-size:clamp(1.1rem,1.4vw,1.5rem);line-height:1.5}
.pd-project-details{background:var(--r2m-color-charcoal-600);color:var(--r2m-color-white)}
.pd-project-details h2{margin:0 0 var(--r2m-space-8);color:inherit;font-size:clamp(2rem,3vw,3.5rem);line-height:1.2}
.pd-project-details-copy p,.pd-project-details-copy ul,.pd-project-details-copy ol,.pd-project-details-copy h3,.pd-project-details-copy h4{color:inherit}
.pd-project-details-copy p{font-size:clamp(1.1rem,1.3vw,1.35rem);line-height:1.65;margin-bottom:var(--r2m-space-6)}
.pd-project-details-copy a{color:inherit;text-decoration:underline}
@media(max-width:900px){.pd-project-intro{grid-template-columns:1fr}.pd-project-overview{margin-top:var(--r2m-space-4)}.pd-project-additional{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.pd-project-main-images,.pd-project-additional,.pd-project-additional[data-count="2"]{grid-template-columns:1fr}.pd-project-title{letter-spacing:.04em}.pd-project-main-images[data-count="1"] .pd-project-frame{aspect-ratio:3/2}}
/* Project grid separators only; preserve photo-frame borders. */
#r2m-projects.r2m-service-directory--projects .r2m-service-directory__inner,
#r2m-projects.r2m-service-directory--projects .r2m-service-directory-grid,
#r2m-projects.r2m-service-directory--projects .r2m-service-directory-item,
#r2m-projects.r2m-service-directory--projects .pd-project-card-link,
#r2m-projects.r2m-service-directory--projects h2 {
 border: 0 !important;
 box-shadow: none !important;
 background-image: none !important;
}
#r2m-projects.r2m-service-directory--projects .r2m-service-directory-grid::before,
#r2m-projects.r2m-service-directory--projects .r2m-service-directory-grid::after {
 content: none !important;
 display: none !important;
}
/* GP already opens #page and #content; plugin templates provide only #primary. */
body.single-r2m_project .pd-project-content,
body.post-type-archive-r2m_project .pd-project-content{width:100%;float:none}
body.post-type-archive-r2m_project #page{max-width:none}
body.post-type-archive-r2m_project .site-content,
body.post-type-archive-r2m_project .site-main{margin:0;padding:0}
.pd-project-archive-title{max-width:none;margin:0 0 var(--r2m-space-8);color:var(--r2m-color-black);font-size:clamp(2rem,3.8vw,4rem);font-weight:700;line-height:1.12}
