.rec-section.wrap{width:min(100% - 2rem,var(--max));margin-inline:auto}
.rec-section>h2{max-width:820px}
.rec-section-intro{max-width:760px;color:var(--muted);font-size:1.05rem}
.rec-list{display:grid;gap:var(--s3);margin-block-start:var(--s5)}
.rec-card{display:grid;gap:var(--s3);padding:var(--s3);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 10px 30px rgba(9,29,55,.05)}
.rec-person{display:grid;grid-template-columns:84px minmax(0,1fr);grid-template-rows:auto auto;gap:.25rem var(--s2);align-content:start}
.rec-image{grid-row:1/span 2;width:84px;height:84px;display:grid;place-items:center;overflow:hidden;border-radius:16px;background:var(--surface-2)}
.rec-image img{width:100%;height:100%;object-fit:contain}
.rec-person h3{align-self:end;margin:0}
.rec-person>p{align-self:start;margin:0;color:var(--muted);font-size:.84rem;line-height:1.45}
.rec-copy blockquote{margin:0;font-size:clamp(1rem,1.5vw,1.12rem);line-height:1.7}
.rec-copy blockquote p{margin-block-end:1em}
.rec-copy blockquote p:last-child{margin-block-end:0}
.rec-letter{display:grid;gap:.5rem;width:min(100%,240px);margin-block-start:var(--s3);color:var(--navy-2);font-size:.82rem;font-weight:800;text-decoration:none}
.rec-letter img{width:100%;height:auto;border:1px solid var(--line);border-radius:12px}
.recommendation-more{padding-block-start:0}
.recommendation-more .shell{display:flex;justify-content:flex-end}
.recommendation-more .text-link{font-size:1.05rem}
.recommendations-hero-grid{display:grid;gap:var(--s4);align-items:center}
.recommendations-hero-grid>*{min-width:0}
.recommendations-hero-grid h1{overflow-wrap:anywhere;font-size:clamp(2rem,5.5vw,5rem)}
.testimonial-hero-photo{max-width:100%;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);box-shadow:var(--shadow)}
.testimonial-hero-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.testimonial-section .rec-list{max-width:920px;margin-inline:auto}
.testimonial-card{position:relative;padding-inline-start:clamp(var(--s4),7vw,var(--s6))}
.quote-mark{position:absolute;inset-block-start:var(--s2);inset-inline-start:var(--s3);color:var(--accent);font-family:Georgia,serif;font-size:4rem;line-height:1}
.testimonial-card .rec-copy blockquote{font-size:clamp(1rem,1.7vw,1.16rem)}
@media (min-width:800px){
  .rec-card:not(.testimonial-card){grid-template-columns:minmax(210px,280px) minmax(0,1fr);padding:var(--s4)}
  .rec-person{display:block}
  .rec-image{width:100%;height:auto;aspect-ratio:4/3;margin-block-end:var(--s3)}
  .rec-person h3{margin-block-end:.35rem}
  .recommendations-hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)}
}
@media (max-width:520px){.recommendations-hero-grid h1{font-size:2rem}}
