.floristry-section{scroll-margin-top:30px;padding-top:35px}
.floristry-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(30px,6vw,80px);align-items:start}
.floristry-copy p{max-width:470px;font-size:16px;color:var(--muted)}
.floristry-gallery{min-width:0;max-width:640px;width:100%;justify-self:center}
.floristry-photos{touch-action:pan-y pinch-zoom}
.floristry-photos a{display:block;width:100%;aspect-ratio:1;max-width:100%;margin-inline:auto;overflow:hidden}
.floristry-photos img{display:block;width:100%;height:100%;max-width:100%;max-height:none;object-fit:cover;margin-inline:auto}
.floristry-photos figcaption{text-align:center;font-size:13px;color:var(--muted);padding-top:14px}
.floristry-controls{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:16px}
.floristry-controls button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--ink);font-size:22px;line-height:1}
.floristry-controls button:hover{background:var(--surface)}
.floristry-counter{font-size:13px;color:var(--muted);min-width:48px;text-align:center;font-variant-numeric:tabular-nums}
.floristry-hint{text-align:center;font-size:12px;color:var(--muted);margin:12px 0 0}
@media(max-width:800px){.floristry-layout{grid-template-columns:minmax(0,1fr);gap:24px}.floristry-copy p{max-width:650px}}
@media(max-width:600px){.floristry-copy p{font-size:15px}}
.floristry-full-viewer{position:fixed;inset:0;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:calc(60px + env(safe-area-inset-top,0px)) 0 calc(24px + env(safe-area-inset-bottom,0px));border:0;background:var(--paper);color:var(--ink);overflow:auto;overscroll-behavior:contain}
.floristry-full-viewer::backdrop{background:var(--paper)}
.floristry-full-viewer img{display:block;width:100%;max-width:none;height:auto;aspect-ratio:1;object-fit:cover;margin:0}
.floristry-full-close{position:fixed;top:calc(8px + env(safe-area-inset-top,0px));right:12px;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--ink);font-size:30px;line-height:1;z-index:1}
