

/* featured review */
.feature{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);border-radius:48px;overflow:hidden;background:var(--deep);color:var(--cream)}
.f-img{position:relative;background:var(--red);min-height:480px;display:flex;align-items:flex-end;justify-content:center}
.f-img svg{position:absolute;inset:0;width:100%;height:100%}
.f-img img{position:relative;height:92%;width:auto}
.f-c{padding:clamp(40px,5vw,72px);display:flex;flex-direction:column;justify-content:center;gap:24px}
.qmark{font-family:var(--display);font-size:120px;line-height:.6;color:var(--red)}
.f-quote{font-family:var(--display);text-transform:uppercase;font-size:clamp(30px,3.4vw,48px);line-height:1.05;margin:0}
.who{display:flex;align-items:center;gap:14px;font-size:18px;font-weight:600;color:#ffd6bd}
.who b{display:block;font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:22px;color:var(--cream)}
.who-av{flex:none;width:52px;height:52px;border-radius:50%;background:var(--cream);color:var(--red);display:grid;place-items:center}
.who-av svg{width:26px;height:26px}
/* review grid */
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:56px}
.rc{background:var(--white);border-radius:32px;padding:16px 16px 28px;display:flex;flex-direction:column;gap:18px;box-shadow:0 6px 24px rgba(17,17,17,.07);transition:transform 300ms var(--ease)}
.rc:hover{transform:translateY(-8px) rotate(-1deg)}
.rc:nth-child(even):hover{transform:translateY(-8px) rotate(1deg)}
.rc-img{border-radius:22px;aspect-ratio:16/10;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;background:var(--red)}
.rc-img.sand{background:var(--sand)}.rc-img.deep{background:var(--deep)}
.rc-img img{height:88%;width:auto}
.rc-img img.wide{height:auto;width:84%;margin-bottom:6%}
.rc blockquote{font-family:var(--display);text-transform:uppercase;font-size:24px;line-height:1.1;margin:0 8px}
.rc .who{color:var(--muted);margin:0 8px;font-size:16px}
.rc .who b{color:var(--deep);font-size:19px}
/* leave a review */
.leave{position:relative;background:var(--red);border-radius:48px;padding:96px clamp(24px,4vw,64px);color:var(--cream);text-align:center;overflow:hidden}
.leave .h2{color:var(--cream);font-size:clamp(50px,7vw,104px)}
.leave .lead{color:#fff0e6}
.btns{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:12px}
.leave img{position:absolute;bottom:-4%}
.lv1{left:3%;width:220px}.lv2{right:3%;width:170px}
/* gallery */
.gal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:240px;gap:20px;margin-top:56px}
.tile{position:relative;border-radius:28px;overflow:hidden;display:flex;align-items:flex-end;justify-content:center;transition:transform 400ms var(--ease)}
.tile:hover{transform:rotate(-2deg) scale(1.02)}
.tile img{height:90%;width:auto;max-width:none;transition:transform 400ms var(--ease)}
.tile img.wide{height:auto;width:88%;max-width:100%;margin-bottom:5%}
.tile:hover img{transform:translateY(-8px)}
.t-r{background:var(--red)}.t-d{background:var(--deep)}.t-s{background:var(--sand)}
.tall{grid-row:span 2}
.span2{grid-column:span 2}
.gal-cta{display:flex;justify-content:center;margin-top:48px}
@media (max-width: 1024px){
.feature{grid-template-columns:minmax(0,1fr)}
.f-img{min-height:340px}
.grid,.gal{grid-template-columns:repeat(2,minmax(0,1fr))}
.leave img{display:none}
}
@media (max-width: 810px){
.feature,.leave{border-radius:32px}
.grid{grid-template-columns:minmax(0,1fr)}
.gal{grid-auto-rows:180px;gap:14px}
.tile{border-radius:20px}
}
