/* Steinreinigung Richter – genuine project image archive, green Richter styling.
   Standalone /referenzen and /referenzen/* only. Static images, no sliders. */
:root{--sr-ref-green:#65a30d;--sr-ref-green-deep:#4d7d09;--sr-ref-navy:#0b2e40;--sr-ref-muted:#536978;--sr-ref-border:#dae4e7}
main.sp-reference-page .sr-archive{padding:54px 24px 74px;background:#f7faf8;color:var(--sr-ref-navy)}
main.sp-reference-page .sr-archive-shell{max-width:1490px;margin:0 auto;display:grid;grid-template-columns:minmax(230px,270px) minmax(0,1fr);gap:36px;align-items:start}
main.sp-reference-page .sr-archive-intro{position:sticky;top:106px;padding:11px 3px 0 0}
main.sp-reference-page .sr-archive-intro h2{font-family:Nunito,Arial,sans-serif;font-weight:900;font-size:clamp(28px,2.55vw,37px);line-height:1.15;color:var(--sr-ref-navy);letter-spacing:-.027em;margin:0 0 18px}
main.sp-reference-page .sr-archive-intro h2 span{color:var(--sr-ref-green-deep)}
main.sp-reference-page .sr-archive-intro p{font-size:14px;line-height:1.75;color:#486171;margin:0 0 14px}
main.sp-reference-page .sr-archive-intro .sr-archive-rule{display:block;width:44px;height:3px;background:var(--sr-ref-green);margin:0 0 22px;border-radius:2px}
main.sp-reference-page .sr-archive-intro .sr-archive-description{font-size:12px;border-top:1px solid #dae6db;padding-top:16px;color:#60727d}
main.sp-reference-page .sr-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
main.sp-reference-page .sr-project-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--sr-ref-border);background:#fff;border-radius:11px;overflow:hidden;box-shadow:0 3px 11px rgba(8,46,52,.045);transition:box-shadow .2s,border-color .2s}
main.sp-reference-page .sr-project-card:hover{box-shadow:0 8px 23px rgba(8,46,52,.09);border-color:#b7d0bb}
main.sp-reference-page .sr-project-photo{display:grid;grid-template-columns:1fr 1fr;gap:2px;aspect-ratio:1.76;background:#e6eeec;overflow:hidden}
main.sp-reference-page .sr-project-photo.is-gallery{grid-template-columns:1fr}
main.sp-reference-page .sr-project-photo picture,main.sp-reference-page .sr-project-photo img{display:block;width:100%;height:100%;min-width:0;min-height:0}
main.sp-reference-page .sr-project-photo img{object-fit:cover;object-position:center}
main.sp-reference-page .sr-project-photo-panel{position:relative;overflow:hidden;min-width:0;min-height:0}
main.sp-reference-page .sr-project-photo-label{position:absolute;z-index:1;left:9px;bottom:9px;padding:5px 8px;background:rgba(8,35,43,.85);color:#fff;border-radius:5px;font-size:10px;font-weight:800}
main.sp-reference-page .sr-project-photo-panel:last-child .sr-project-photo-label{background:var(--sr-ref-green-deep)}
main.sp-reference-page .sr-project-card-body{display:flex;flex:1;flex-direction:column;padding:17px 17px 18px}
main.sp-reference-page .sr-project-card h3{font:900 17px/1.28 Nunito,Arial,sans-serif;color:var(--sr-ref-navy);margin:0 0 9px;letter-spacing:-.01em}
main.sp-reference-page .sr-project-card p{font:500 12.5px/1.65 'Nunito Sans',Nunito,Arial,sans-serif;color:#516571;margin:0 0 13px}
main.sp-reference-page .sr-project-tag{font:800 10.5px/1.35 Nunito,Arial,sans-serif;color:var(--sr-ref-green-deep);margin:0 0 7px}
main.sp-reference-page .sr-project-link{display:inline-flex;align-items:center;justify-content:center;align-self:start;min-height:36px;margin-top:auto;padding:7px 13px;border:1px solid var(--sr-ref-green);border-radius:6px;color:var(--sr-ref-green-deep);background:#fff;text-decoration:none!important;font:800 12px/1.3 Nunito,Arial,sans-serif;transition:background .2s,color .2s}
main.sp-reference-page .sr-project-link:hover,main.sp-reference-page .sr-project-link:focus-visible{background:var(--sr-ref-green);color:#fff}
main.sp-reference-page .sr-archive-qualifier{font:500 12px/1.7 'Nunito Sans',Arial,sans-serif;color:#596b73;max-width:1020px;margin:24px auto 0;padding:0 5px}
main.sp-reference-page .sr-archive-qualifier strong{color:#2b4c38}
/* Detail pages */
main.sp-reference-page .sr-detail-header{padding:34px 24px 30px;background:#f4f8f5;border-bottom:1px solid #e1e9e4}
main.sp-reference-page .sr-detail-content{max-width:1140px;margin:0 auto}
main.sp-reference-page .sr-breadcrumb{font:700 12px/1.4 Nunito,Arial,sans-serif;margin:0 0 23px;color:#597064}
main.sp-reference-page .sr-breadcrumb a{color:var(--sr-ref-green-deep);text-decoration:none}
main.sp-reference-page .sr-breadcrumb span{margin:0 8px;color:#93a59a}
main.sp-reference-page .sr-detail-title{font:900 clamp(27px,3.2vw,39px)/1.16 Nunito,Arial,sans-serif;letter-spacing:-.022em;color:var(--sr-ref-navy);max-width:820px;margin:0 0 14px}
main.sp-reference-page .sr-detail-lede{font:500 15px/1.7 'Nunito Sans',Arial,sans-serif;color:#475f69;max-width:850px;margin:0}
main.sp-reference-page .sr-detail-main{padding:35px 24px 74px;background:#fff}
main.sp-reference-page .sr-detail-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin:0 0 34px}
main.sp-reference-page .sr-detail-gallery.is-many{grid-template-columns:repeat(3,minmax(0,1fr))}
main.sp-reference-page .sr-detail-figure{margin:0;border:1px solid #e0e7e4;border-radius:9px;overflow:hidden;background:#f7f9f6}
main.sp-reference-page .sr-detail-figure img{display:block;width:100%;height:clamp(170px,22vw,300px);object-fit:cover}
main.sp-reference-page .sr-detail-figure figcaption{font:700 12px/1.55 Nunito,Arial,sans-serif;color:#4a616e;padding:10px 13px}
main.sp-reference-page .sr-detail-copy{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(210px,.65fr);gap:35px;align-items:start}
main.sp-reference-page .sr-detail-copy h2{font:900 23px/1.3 Nunito,Arial,sans-serif;color:var(--sr-ref-navy);margin:0 0 12px}
main.sp-reference-page .sr-detail-copy p{font:500 14px/1.82 'Nunito Sans',Arial,sans-serif;color:#465b67;margin:0 0 15px}
main.sp-reference-page .sr-detail-side{border:1px solid #dae5da;border-left:4px solid var(--sr-ref-green);border-radius:7px;padding:18px 19px;background:#f9fbf8}
main.sp-reference-page .sr-detail-side h3{font:900 16px/1.3 Nunito,Arial,sans-serif;color:var(--sr-ref-navy);margin:0 0 12px}
main.sp-reference-page .sr-detail-side p{font-size:12.5px;line-height:1.65}
main.sp-reference-page .sr-detail-next{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}
main.sp-reference-page .sr-detail-next a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 16px;border-radius:6px;font:800 12.5px/1.3 Nunito,Arial,sans-serif;text-decoration:none;background:var(--sr-ref-green);color:#fff}
main.sp-reference-page .sr-detail-next a.sr-secondary{border:1px solid #aacb8a;background:#fff;color:var(--sr-ref-green-deep)}
main.sp-reference-page .sr-detail-next a:hover{filter:brightness(.95)}
@media(max-width:1250px){
 main.sp-reference-page .sr-archive-shell{grid-template-columns:220px minmax(0,1fr);gap:20px}
 main.sp-reference-page .sr-project-grid{gap:12px}
 main.sp-reference-page .sr-project-card-body{padding:15px}
 main.sp-reference-page .sr-archive{padding:45px 20px 60px}
}
@media(max-width:970px){
 main.sp-reference-page .sr-archive-shell{grid-template-columns:minmax(0,1fr)}
 main.sp-reference-page .sr-archive-intro{position:static;max-width:760px;padding:0}
 main.sp-reference-page .sr-archive-intro h2{font-size:30px;max-width:580px}
 main.sp-reference-page .sr-archive-intro p{max-width:730px}
 main.sp-reference-page .sr-project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
 main.sp-reference-page .sr-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 main.sp-reference-page .sr-detail-gallery.is-many{grid-template-columns:repeat(2,minmax(0,1fr))}
 main.sp-reference-page .sr-detail-copy{grid-template-columns:1fr;gap:20px}
}
@media(max-width:510px){
 main.sp-reference-page .sr-archive{padding:30px 16px 45px}
 main.sp-reference-page .sr-archive-intro h2{font-size:27px}
 main.sp-reference-page .sr-project-grid{grid-template-columns:1fr;gap:15px}
 main.sp-reference-page .sr-project-photo{aspect-ratio:1.95}
 main.sp-reference-page .sr-project-card h3{font-size:18px}
 main.sp-reference-page .sr-detail-header{padding:25px 16px 25px}
 main.sp-reference-page .sr-detail-main{padding:27px 16px 50px}
 main.sp-reference-page .sr-detail-gallery,
 main.sp-reference-page .sr-detail-gallery.is-many{grid-template-columns:1fr;gap:12px}
 main.sp-reference-page .sr-detail-figure img{height:220px}
 main.sp-reference-page .sr-breadcrumb{font-size:11px}
}
