.facilities{padding:110px clamp(20px,8vw,130px);background:#f5fbfc}
.facilities-copy{display:grid;grid-template-columns:1.05fr .95fr;column-gap:10vw;align-items:end;margin-bottom:52px}
.facilities-copy .eyebrow{grid-column:1/-1}
.facilities-copy h2,.testimonial-heading h2{font-size:clamp(38px,4.8vw,68px);letter-spacing:-.035em;margin:0}
.facilities-copy>p:not(.eyebrow){font-size:19px;color:#58727a;margin-bottom:12px}
.facilities-copy .text-link{grid-column:2;font-weight:700}
.facility-gallery{display:grid;grid-template-columns:1.05fr .95fr .95fr;grid-template-rows:300px 300px;gap:16px}
.facility-photo{position:relative;overflow:hidden;border-radius:22px;margin:0;background:#dff6fb}
.facility-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.facility-photo:hover img{transform:scale(1.025)}
.facility-photo figcaption{position:absolute;left:16px;bottom:16px;background:rgba(255,255,255,.92);padding:7px 12px;border-radius:999px;font-weight:700;font-size:13px;color:var(--navy)}
.facility-main{grid-row:1/3}.facility-main img{object-position:center 38%}
.facility-interior{grid-column:2}.facility-interior img{object-position:center 44%}
.facility-court-wide{grid-column:3}.facility-court-tall{grid-column:2/4}.facility-court-tall img{object-position:center 66%}
.facility-safety{margin-top:34px;padding:30px 34px;border-radius:22px;background:var(--navy);color:#fff;display:grid;grid-template-columns:.9fr 1.1fr;gap:18px 7vw;align-items:end}
.facility-safety .eyebrow{color:var(--yellow);margin-bottom:13px}
.facility-safety h3{font-size:clamp(25px,2.6vw,38px);margin:0;max-width:620px}
.facility-safety>p{margin:0;color:#d9ebee;font-size:17px}
.facility-safety ul{grid-column:1/-1;list-style:none;padding:22px 0 0;margin:4px 0 0;border-top:1px solid rgba(255,255,255,.18);display:flex;flex-wrap:wrap;gap:10px}
.facility-safety li{padding:8px 14px;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:#fff;font-size:14px;font-weight:700}

.testimonials{padding:110px clamp(20px,8vw,130px);background:#fff}
.testimonial-heading{max-width:850px;margin-bottom:50px}
.demo-notice{display:inline-block;background:#fff8d2;border:1px solid #eed567;border-radius:10px;padding:10px 14px;margin:24px 0 0;color:#665411;font-size:14px;font-weight:600}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.testimonial-grid blockquote{margin:0;padding:32px;border:1px solid var(--line);border-radius:22px;background:#f9fcfd;display:flex;min-height:320px;flex-direction:column}
.testimonial-grid blockquote:nth-child(2){background:var(--cream)}
.testimonial-grid blockquote:nth-child(3){background:var(--sky)}
.testimonial-grid blockquote>p{font:400 23px/1.45 var(--font-primary);margin:0}
.testimonial-grid blockquote>footer{margin-top:auto;padding:28px 0 0;display:block;color:var(--navy)}
.testimonial-grid blockquote>footer strong,.testimonial-grid blockquote>footer span{display:block}
.testimonial-grid blockquote>footer span{font-size:13px;color:#6c8187;margin-top:3px}

@media(max-width:980px){
  .facilities-copy{grid-template-columns:1fr;gap:20px}.facilities-copy .text-link{grid-column:1}
  .facility-gallery{grid-template-columns:1fr 1fr;grid-template-rows:360px 260px 260px}
  .facility-main{grid-column:1;grid-row:1/3}.facility-interior{grid-column:2}.facility-court-wide{grid-column:2}.facility-court-tall{grid-column:1/3}
  .facility-safety{grid-template-columns:1fr;gap:20px}.facility-safety ul{grid-column:1}
  .testimonial-grid{grid-template-columns:1fr}
  .testimonial-grid blockquote{min-height:0}
}
@media(max-width:620px){
  .facilities,.testimonials{padding-top:76px;padding-bottom:76px}
  .facility-gallery{display:grid;grid-template-columns:1fr;grid-template-rows:440px 280px 220px 280px}
  .facility-main,.facility-interior,.facility-court-wide,.facility-court-tall{grid-column:1;grid-row:auto}
  .facility-main img{object-position:center 35%}
  .facility-safety{padding:26px}.facility-safety ul{padding-top:18px}
  .testimonial-grid blockquote{padding:26px}
  .testimonial-grid blockquote>p{font-size:21px}
}
