.fp-gallery{max-width:1200px;margin:64px auto;padding:0 48px;color:#171717;font-family:Inter,Arial,PingFang SC,PingFang TC,sans-serif;line-height:1.8;box-sizing:border-box}.fp-gallery *{box-sizing:border-box}.fp-gallery h2{font:400 clamp(28px,3vw,40px)/1.25 "Playfair Display",Playfair,Georgia,"Songti SC",serif;margin:0 0 18px}.fp-intro{max-width:720px;font-size:15px;color:#666;margin:0 0 30px}.fp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.fp-card{margin:0;min-width:0}.fp-link{display:block;width:100%;background:#fff;border:1px solid #ddd;padding:22px;cursor:zoom-in;color:inherit;text-decoration:none;transition:border-color .2s}.fp-link:hover{border-color:#7a6b54}.fp-link:focus-visible,.fp-dialog a:focus-visible,.fp-dialog button:focus-visible{outline:3px solid #756249;outline-offset:4px}.fp-link img{display:block;width:100%;height:360px;object-fit:contain}.fp-card figcaption{padding-top:15px;font-size:14px;color:#171717;line-height:1.7}.fp-card figcaption span{display:block;font-size:11px;letter-spacing:.08em;color:#666;margin-top:6px}.fp-note{font-size:11px;line-height:1.8;color:#777;margin:28px 0 0}.fp-dialog{position:fixed;top:0;right:0;bottom:0;left:0;margin:auto;width:min(1120px,96vw);height:min(950px,94dvh);max-width:96vw;max-height:94dvh;border:1px solid #ddd;background:#fff;padding:20px;color:#171717}.fp-dialog::backdrop{background:#000000c7}.fp-dialog[open]{display:flex;flex-direction:column}.fp-dialog header{display:flex;gap:20px;justify-content:space-between;align-items:center;font-size:14px}.fp-dialog button{border:1px solid #bbb;background:#fff;padding:10px 16px;cursor:pointer;font:inherit;min-height:44px}.fp-dialog img{display:block;width:100%;height:0;flex:1;min-height:0;object-fit:contain;margin:15px 0}.fp-dialog a{font:13px/1.8 Arial,sans-serif;color:inherit;text-underline-offset:4px}.m-shell>.fp-gallery{padding:0}@media(max-width:700px){.fp-gallery{padding:0 22px;margin:44px auto}.fp-grid{grid-template-columns:1fr;gap:28px}.fp-link{padding:15px}.fp-link img{height:340px}.fp-dialog{padding:12px}.fp-dialog header{font-size:12px}.fp-dialog button{padding:8px 12px}}
