@charset "UTF-8";
/* Gallery-only presentation; common header/footer styles remain unchanged. */
.photo-page.subpage-design{padding-top:var(--header)}
.photo-page.subpage-design .subpage-title h1+p{max-width:none}
.photo-page.subpage-design .photo-feature{display:block;width:auto;max-width:100%;max-height:430px;height:auto;object-fit:contain;margin:26px auto 0;border:6px solid #fff;border-radius:20px;box-shadow:0 7px 0 #124c700a}
.photo-page.subpage-design .photo-content h2{font-size:clamp(24px,2.25vw,32px);line-height:1.55}
.photo-page.subpage-design .photo-help{font-size:14px;line-height:1.85;color:#526d82;margin:10px 0 22px}
.photo-page.subpage-design .photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;list-style:none;margin:0;padding:0}
.photo-page.subpage-design .photo-item{min-width:0}
.photo-page.subpage-design .photo-open{position:relative;display:block;aspect-ratio:3/4;border:1px solid #dce9e9;border-radius:18px;background:#e9f8fb;overflow:hidden;box-shadow:0 4px 0 #124c7008;transition:border-color .2s,box-shadow .2s}
.photo-page.subpage-design .photo-open img{display:block;width:100%;height:100%;object-fit:contain}
.photo-page.subpage-design .photo-open:hover{border-color:#84c6d5;box-shadow:0 5px 16px #17547d18}
.photo-page.subpage-design .photo-enlarge{position:absolute;right:8px;bottom:8px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#fff;color:#124c70;font-size:20px;box-shadow:0 2px 8px #1234}
.photo-page.subpage-design .photo-cta{margin-top:48px;padding:30px;background:#e9f8fb;border:1px solid #dce9e9;border-radius:24px;text-align:center}
.photo-page.subpage-design .photo-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:22px}
.photo-page.subpage-design .photo-actions .button{font-size:15px}
.photo-page.subpage-design .photo-related{margin-top:36px}
.photo-page.subpage-design .photo-related h2{font-size:23px}
.photo-page.subpage-design .photo-related .selected-guide-list{grid-template-columns:repeat(3,minmax(0,1fr))}
.photo-page+.photo-lightbox+.site-footer{margin-top:0}
.photo-lightbox{padding:0;border:0;border-radius:16px;width:min(1100px,94vw);max-width:94vw;max-height:94dvh;overflow:auto;background:#fff;color:var(--ink)}.photo-lightbox::backdrop{background:#031c32dc}.photo-dialog-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid #dceaf4}.photo-dialog-bar h2{font-family:var(--rounded);font-size:20px}.photo-lightbox button{min-height:44px;min-width:44px;padding:9px 16px;border:1px solid #bddbed;border-radius:24px;background:#eaf7ff;color:var(--navy);font-weight:700}.photo-lightbox button:disabled{opacity:.45}
.photo-view{margin:0;padding:12px 18px 0;text-align:center}.photo-view img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(94dvh - 205px);object-fit:contain;margin:auto}.photo-view figcaption{font-size:14px;line-height:1.6;margin-top:10px;overflow-wrap:anywhere}.photo-controls{display:flex;justify-content:center;align-items:center;gap:22px;padding:14px 18px}.photo-controls p{font-size:14px;min-width:58px;text-align:center}.photo-lightbox #photo-error{padding:20px;text-align:center}.photo-lightbox #photo-error a{display:block;text-decoration:underline;padding:10px}

/* Keep vertical scrolling and pinch zoom native; only single-finger horizontal swipes navigate. */
.photo-lightbox .photo-view{touch-action:pan-y pinch-zoom}
.photo-lightbox button:focus-visible{outline:3px solid #ef8000;outline-offset:3px}
@media(max-width:1000px){.photo-page.subpage-design .photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}
@media(max-width:600px){
.photo-page.subpage-design .photo-feature{margin-top:20px;border-radius:16px}
.photo-page.subpage-design .photo-help{font-size:13px}
.photo-page.subpage-design .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.photo-page.subpage-design .photo-open{border-radius:12px}
.photo-page.subpage-design .photo-enlarge{width:24px;height:24px;font-size:17px;right:5px;bottom:5px}
.photo-page.subpage-design .photo-cta{padding:24px 18px;margin-top:36px}
.photo-page.subpage-design .photo-actions{flex-direction:column}
.photo-page.subpage-design .photo-actions .button{padding:12px;font-size:14px;gap:8px}
.photo-page.subpage-design .photo-related .selected-guide-list{grid-template-columns:1fr}
.photo-dialog-bar{padding:10px 12px}.photo-dialog-bar h2{font-size:17px}.photo-view{padding:10px 10px 0}.photo-view figcaption{font-size:13px}.photo-controls{gap:8px;padding:12px 10px}.photo-controls button{font-size:13px;padding:9px 12px}.photo-view img{max-height:calc(94dvh - 220px)}}
@media(prefers-reduced-motion:reduce){.photo-page.subpage-design .photo-open{transition:none}}
