/* Patient stories follow the personal site's charcoal, cream and paper palette. */
.experiences-hero{background:var(--charcoal);color:var(--on-charcoal);padding:32px 0 64px}
.experiences-hero .breadcrumb{font-size:.875rem;line-height:1.6;margin-bottom:36px;color:var(--on-charcoal-muted)}
.experiences-hero .breadcrumb a{color:var(--on-charcoal);text-decoration:underline;text-underline-offset:4px}
.experiences-hero .eyebrow{color:#D3B58E;margin-bottom:20px}
.experiences-hero h1{font-size:clamp(2.5rem,4.5vw,4.2rem);line-height:1.12;letter-spacing:-.03em;margin:0 0 24px;color:var(--on-charcoal)}
.experiences-hero p{max-width:660px;font-size:1.125rem;line-height:1.75;margin:0;color:var(--on-charcoal-muted)}
.experiences-stories{padding:64px 0;background:var(--paper)}
.experiences-stories .wrap{max-width:1080px}
.experience-story{display:grid;grid-template-columns:240px minmax(0,1fr);gap:56px;align-items:start;margin:0;padding:40px 0;border-top:1px solid var(--line)}
.experience-story:first-child{padding-top:0;border-top:0}
.experience-story blockquote{grid-column:2;grid-row:1;font-family:var(--serif);font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.5;letter-spacing:-.015em;margin:0;color:var(--text)}
.experience-story figcaption{grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:flex-start;gap:20px;min-width:0}
.experience-story figcaption strong{display:block;font-size:1.0625rem;font-weight:600;line-height:1.5}
.experience-story .jg-review-portrait{width:80px;height:80px;flex-basis:80px}
.experience-source{border-top:1px solid var(--line);padding-top:24px;color:var(--muted);font-size:.875rem;line-height:1.7}
.experience-source p{margin:0}
.experience-source p+p{margin-top:6px}
.experience-source a{color:var(--text);text-decoration:underline;text-underline-offset:4px}
.experiences-google{padding:56px 0;background:var(--cream);border-block:1px solid var(--line)}
.experiences-google-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.experiences-google .eyebrow{color:#796044;margin-bottom:16px}
.experiences-google h2{font-size:clamp(2rem,3vw,2.8rem);line-height:1.2;color:var(--text);margin:0}
.experiences-google p{font-size:1rem;line-height:1.75;color:var(--muted);max-width:540px;margin:0 0 24px}
.jg-experiences .btn-primary{background:var(--charcoal);border-color:var(--charcoal);color:var(--on-charcoal)}
.jg-experiences .btn-primary:hover{background:#414238;border-color:#414238;color:var(--on-charcoal)}
.experiences-next{padding:64px 0;background:var(--paper)}
.experiences-next-inner{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center}
.experiences-next h2{font-size:clamp(2rem,3vw,2.6rem);line-height:1.2;margin:0 0 16px;color:var(--text)}
.experiences-next p{font-size:1rem;line-height:1.75;max-width:620px;margin:0;color:var(--muted)}
.experiences-next-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.experiences-next-actions .text-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 0;font-size:.9375rem;line-height:1.5;text-align:center;text-decoration:underline;text-underline-offset:5px;color:var(--text)}
@media(max-width:980px){
  .experience-story{grid-template-columns:200px minmax(0,1fr);gap:36px}
  .experiences-google-grid{gap:36px}
  .experiences-next-inner{grid-template-columns:minmax(0,1fr);gap:28px}
  .experiences-next-actions{align-items:flex-start}
}
@media(max-width:760px){
  .experiences-hero{padding:24px 0 44px}
  .experiences-hero .breadcrumb{margin-bottom:28px}
  .experiences-hero h1{font-size:clamp(2.25rem,8vw,3.2rem);margin-bottom:20px}
  .experiences-hero p{font-size:1.0625rem}
  .experiences-stories{padding:40px 0}
  .experience-story{display:flex;flex-direction:column;gap:24px;padding:32px 0}
  .experience-story blockquote{font-size:1.5rem;line-height:1.5}
  .experience-story figcaption{flex-direction:row;align-items:center;gap:16px}
  .experience-story .jg-review-portrait{width:64px;height:64px;flex-basis:64px}
  .experience-source{padding-top:20px}
  .experiences-google,.experiences-next{padding:44px 0}
  .experiences-google-grid{grid-template-columns:minmax(0,1fr);gap:24px}
  .experiences-google .btn,.experiences-next-actions .btn{width:100%}
  .experiences-next-actions{align-items:stretch}
}

/* Additional testimonials use the supplied portraits without altering the originals. */
.experience-additional{border-top:1px solid var(--line);padding-top:48px;margin-bottom:32px}
.experience-additional h2{font-size:clamp(2rem,3vw,2.6rem);line-height:1.2;margin:0 0 32px;color:var(--text)}
.experience-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.experience-review{display:flex;flex-direction:column;align-items:flex-start;min-width:0;margin:0;padding:32px;background:var(--cream);border-radius:4px}
.experience-rating{font-size:1.125rem;line-height:1.5;letter-spacing:.12em;color:#796044;margin-bottom:20px}
.experience-review blockquote,.experience-rating-only{font-family:var(--serif);font-size:1.1875rem;line-height:1.65;margin:0 0 28px;color:var(--text);overflow-wrap:break-word}
.experience-review figcaption{display:flex;align-items:center;gap:16px;margin-top:auto;min-width:0;width:100%}
.experience-review figcaption>span:last-child{min-width:0}
.experience-review figcaption strong{display:block;font-size:1rem;line-height:1.5;font-weight:600;overflow-wrap:break-word}
.experience-review .jg-review-role{overflow-wrap:break-word}
.experience-review .jg-review-portrait{width:64px;height:64px;flex-basis:64px;background:#fff;box-shadow:none}
.experience-portrait-sam-briggs img{width:242.857143%;left:-77.272727%;top:-22.077922%;}
.experience-portrait-blake-maislin img{width:258.441558%;left:-88.311688%;top:-44.805195%;}
.experience-portrait-matt-weidemer img{width:224.025974%;left:-70.129870%;top:-23.376623%;}
.experience-portrait-tim-mcmahon img{width:208.441558%;left:-53.246753%;top:-12.337662%;}
.experience-portrait-amy-brenner img{width:249.350649%;left:-86.363636%;top:-26.623377%;}
.experience-portrait-chase-brown img{width:217.532468%;left:-58.441558%;top:-21.428571%;}
@media(max-width:760px){
  .experience-additional{padding-top:32px;margin-bottom:28px}
  .experience-additional h2{font-size:2rem;margin-bottom:24px}
  .experience-review-grid{grid-template-columns:minmax(0,1fr);gap:20px}
  .experience-review{padding:28px 24px}
  .experience-review blockquote,.experience-rating-only{font-size:1.125rem;line-height:1.7;margin-bottom:24px}
  .experience-review figcaption{gap:14px}
  .experience-review .jg-review-portrait{width:60px;height:60px;flex-basis:60px}
}
