/* rebuild preview additions (scoped .rb-) */
[id]{scroll-margin-top:90px}
.rb-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(16px,2vw,24px);list-style:none;padding:0;margin:28px 0 8px}
@media (min-width:641px){.rb-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:980px}}
.rb-card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:30px 26px 24px;box-shadow:var(--shadow)}
.rb-card .rb-letter{position:absolute;top:20px;right:24px;font-family:var(--display);font-size:26px;font-weight:600;color:var(--brass-t);line-height:1}
.prose .rb-card h3,.rb-card h3{font-family:var(--display);font-weight:600;font-size:28px;line-height:1.12;margin:0 40px 10px 0;color:var(--ink);text-transform:none;letter-spacing:0}
.prose .rb-card p,.rb-card p{color:var(--soft);font-size:17.5px;line-height:1.6;margin:0}
.rb-band{background:var(--green);color:#fff;border-radius:var(--r);padding:clamp(26px,4vw,44px);margin:34px 0}
.rb-band p,.prose .rb-band p{color:#F4EFE4;font-size:clamp(20px,1.7vw,24px);line-height:1.55;margin:0}
.rb-band .rb-kicker{font-family:var(--sans);font-size:13.5px;letter-spacing:.16em;text-transform:uppercase;color:#E3CFA5;margin-bottom:14px}
.rb-proof{list-style:none;padding:0;margin:18px 0 8px;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media (min-width:900px){.rb-proof{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rb-proof li{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--brass);border-radius:var(--rb);padding:18px 22px;box-shadow:var(--shadow)}
.rb-proof strong{display:block;font-family:var(--display);font-size:26px;font-weight:600;color:var(--ink);line-height:1.15;margin-bottom:4px}
.prose .rb-proof p{margin:0 0 .4em;font-size:18px;color:var(--soft)}
.rb-proof a{color:var(--green)}
.rb-credit{display:block;font-family:var(--sans);font-size:13px;color:var(--soft);margin-top:6px}
.meet-grid{grid-template-columns:1fr}
.meet-copy{max-width:46em}
/* reviews: class chosen automatically by card count (1 = rb-one, 2 = rb-two) */
.reviews.rb-one,.prose .reviews.rb-one{grid-template-columns:minmax(0,760px);margin-inline:auto;justify-content:center}
.reviews.rb-one blockquote p{font-size:clamp(20px,2vw,26px)}
.reviews.rb-two,.prose .reviews.rb-two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px}
@media (max-width:640px){.reviews.rb-two,.prose .reviews.rb-two{grid-template-columns:minmax(0,1fr)}}
/* about: one readable column at all widths */
.about{grid-template-columns:minmax(0,720px)}
/* tap targets */
.site-footer a{display:inline-block;padding-block:10px;min-height:44px}
.site-footer .f-list a{display:inline-flex;align-items:center}
.crumbs a{display:inline-block;padding-block:12px}
/* recut 5: photos (each new photo on exactly one page; 16:9 WebP, width/height set, lazy except hero) */
.rb-photo{margin:0 0 clamp(24px,3vw,40px);max-width:100%}
.rb-photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:var(--r);background:var(--paper2)}
.rb-photo .rb-credit{margin-top:8px}
.prose .rb-photo{margin-top:0}
.rb-photo.rb-narrow{max-width:860px}
.rb-banner{max-width:980px;margin-left:0}
@media (min-width:641px){.rb-banner img{aspect-ratio:21/9}}
.thumb.rb-169{aspect-ratio:16/9}
.grid.rb-hobby2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}
@media (max-width:600px){.grid.rb-hobby2{grid-template-columns:minmax(0,1fr)}}
.card .rb-credit{display:block;font-family:var(--sans);font-size:13.5px;color:var(--soft);margin-top:6px}
/* home hero: dark left overlay for text contrast (measured, see PREVIEW-NOTES) */
/* Graphic's gradients; alpha nudged in the text region only where the measured contrast was < 4.5:1 (desktop 45% stop .55 -> .72 plus a 60% stop of .55; mobile 55% stop .6 -> .68, 100% stop .15 -> .3) */
.hero-media::after{background:linear-gradient(90deg,rgba(10,20,16,.82) 0%,rgba(10,20,16,.72) 45%,rgba(10,20,16,.55) 60%,rgba(10,20,16,.08) 75%)}
@media (max-width:640px){.hero-media::after{background:linear-gradient(180deg,rgba(10,20,16,.85) 0%,rgba(10,20,16,.68) 55%,rgba(10,20,16,.3) 100%)}.hero-media img{object-position:60% 75%}}
/* tap nits */
a.label.link-u{display:inline-block;padding-block:11px}
@media (max-width:800px){.brand{min-height:44px}}
