/* Every homepage photo fills the same portrait frame without letterboxing. */
.tile-gallery{width:100%;max-width:none;margin:0;padding:0 36px 28px}
.tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.photo-tile{position:relative;display:flex;flex-direction:column;min-width:0;background:var(--tile-paper);color:var(--tile-ink);text-decoration:none;font-family:var(--brand-support-font,Georgia,serif)}
.tile-photo{display:block;aspect-ratio:3/4;min-width:0;background:#ddc0aa}
.tile-photo img{display:block;width:100%;height:100%;aspect-ratio:3/4;object-fit:cover}
.tile-caption{display:grid;place-items:center;flex:1;min-height:92px;padding:16px 20px;background:var(--tile-paper);color:var(--tile-ink);font-size:clamp(18px,2vw,28px);line-height:1.2;text-align:center;text-wrap:balance}
.photo-tile:focus-visible{outline:3px solid var(--tile-ink);outline-offset:5px;z-index:1}
@media(hover:hover) and (pointer:fine){
 .tile-caption{position:absolute;inset:0;min-height:0;padding:30px;opacity:0;transition:opacity .22s ease}
 .photo-tile:hover .tile-caption,.photo-tile:focus-visible .tile-caption{opacity:1}
 .photo-tile:focus-visible .tile-caption{transition:none}
 /* Keep both keyboard focus-in and focus-out instant while Tab moves on. */
 html:has(:focus-visible) .photo-tile .tile-caption{transition:none}
}
@media(min-width:1001px){
 .tile-caption{padding:16px 12px;font-size:clamp(16px,1.5vw,20px)}
}
@media(max-width:1000px){.tile-gallery{padding-inline:24px}.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .tile-gallery{padding:0 16px 24px}
 .tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .tile-caption{padding:12px;font-size:17px}
}
@media(prefers-reduced-motion:reduce){.tile-caption{transition:none}}
.about-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,84px);align-items:center;max-width:1220px;margin:0 auto;padding:56px 36px 72px}
.about-photo{margin:0;min-width:0}
.about-photo img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain}
.about-copy{min-width:0;font-family:var(--brand-support-font,Georgia,serif)}
.about-copy h1{font-size:clamp(38px,4.5vw,64px);font-weight:400;line-height:1.15;margin:0 0 24px}
.about-copy p{max-width:37ch;font-size:21px;line-height:1.5}
.about-story{margin-top:28px}
.about-story h2{margin:0 0 16px;font-size:26px;font-weight:400;line-height:1.2}
.about-story p+p{margin-top:18px}
.about-links{display:flex;align-items:flex-start;flex-direction:column;gap:24px;margin-top:30px}
.about-links>a:last-child{font-size:17px}
@media(max-width:700px){.about-content{grid-template-columns:minmax(0,1fr);gap:30px;padding:30px 20px 48px}.about-photo{max-width:440px;width:100%;margin:0 auto}.about-copy h1{font-size:40px}.about-copy p{font-size:19px}.about-links .flower-inquiry-button{margin-top:0}}
