/* Gallery styles are isolated from the prescription forms. */
.gallery-hero-link { margin-top:1.8rem; }
.gallery-heading { display:flex; align-items:end; justify-content:space-between; gap:2rem; margin-bottom:2.4rem; }
.gallery-eyebrow { display:block; color:var(--red); font-size:.75rem; font-weight:600; text-transform:uppercase; letter-spacing:.12em; margin-bottom:.7rem; }
.gallery-heading h2, .gallery-instagram h2 { font-size:clamp(1.8rem,3.6vw,2.8rem); }
.gallery-heading p { max-width:340px; font-size:.95rem; }
.gallery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2.5rem 1.4rem; }
.gallery-card { min-width:0; margin:0; }
.gallery-card a { display:block; background:var(--paper-2); overflow:hidden; }
.gallery-card img { width:100%; aspect-ratio:3/2; object-fit:contain; transition:transform .25s; }
.gallery-card a:hover img { transform:scale(1.025); }
.gallery-card a:focus-visible { outline:3px solid var(--red); outline-offset:4px; }
.gallery-card figcaption { padding:1rem 0 0; }
.gallery-card figcaption span { font-size:.72rem; letter-spacing:.07em; text-transform:uppercase; color:var(--muted); }
.gallery-card h2 { font-size:1.08rem; margin-top:.35rem; line-height:1.4; }
.gallery-instagram { background:var(--paper-2); scroll-margin-top:120px; }
.gallery-instagram-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(2rem,5vw,5rem); align-items:center; }
.gallery-instagram-copy p { max-width:410px; margin-top:1.3rem; }
.gallery-profile-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.gallery-profile-card { background:white; border:1px solid var(--hair); padding:clamp(2rem,4vw,3.5rem); text-align:center; }
.gallery-profile-card svg { color:var(--red); margin:0 auto 1.2rem; }
.gallery-profile-card h3 { font-size:1.4rem; }
.gallery-profile-card p { margin:.8rem 0 1.5rem; }
.gallery-profile-card a { font-size:.95rem; font-weight:600; text-decoration:underline; text-underline-offset:5px; overflow-wrap:anywhere; }
.gallery-profile-card a:hover { color:var(--red); }
@media(max-width:900px) { .gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .gallery-instagram-layout { grid-template-columns:1fr; } .gallery-instagram-copy { text-align:center; } .gallery-instagram-copy p { margin-inline:auto; } }
@media(max-width:560px) { .gallery-heading { display:block; } .gallery-heading p { margin-top:1rem; } .gallery-grid { grid-template-columns:1fr; gap:2rem; } .gallery-profile-cards { grid-template-columns:1fr; } }
