/* Inherit the top page's .section and .sec_headline spacing and typography. */
.home-design-preview{background:#fff}
.home-design-preview>.container{width:calc(100% - 40px);max-width:1100px}
.home-design-preview .sec_headline::after{content:'Works'}
.home-content-intro{max-width:42em;margin:0 auto 40px;text-align:center;font-size:1.6rem;line-height:1.8}
.home-design-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 16px;list-style:none;margin:0;padding:0}
.home-design-grid>li{min-width:0}
.home-design-grid a{display:block;height:100%;border:3px solid #fff;color:#333;text-decoration:none;transition:border-color .3s}
.home-design-grid a:hover{border-color:#f45941}
.home-design-grid a:focus-visible{outline:3px solid #f45941;outline-offset:3px}
.home-design-photo{position:relative;overflow:hidden;aspect-ratio:4/3;background:#f5f5f5}
.home-design-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:opacity .3s}
.home-design-grid a:hover img{opacity:.7}
.home-design-grid h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;min-height:3em;margin:16px 10px 12px;text-align:center;font-size:1.8rem;font-weight:700;line-height:1.5}
.home-design-photo>span{position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:#fff;background:#0009;font-size:2rem;line-height:1}
.home-design-preview a.home-design-more{display:block;width:600px;max-width:100%;margin:60px auto 0;padding:28px 0;font-size:2.4rem;text-align:center}
.home-photo-dialog{padding:14px;border:0;width:min(1100px,94vw);max-width:94vw;max-height:94vh;background:#fff;color:#333}
.home-photo-dialog::backdrop{background:#000c}
.home-photo-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px}
.home-photo-toolbar p{min-width:0;font-size:1.5rem;line-height:1.5;overflow-wrap:anywhere;margin:0}
.home-photo-toolbar button{font:inherit;font-size:1.4rem;white-space:nowrap;min-height:44px;padding:8px 14px;border:1px solid #bbb;background:#fff;cursor:pointer;flex-shrink:0}
.home-photo-dialog>img{display:block;width:100%;height:auto;max-height:80vh;object-fit:contain}
@media(max-width:767px){
 .home-content-intro{font-size:1.4rem;margin-bottom:24px;line-height:1.8}
 .home-design-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}
 .home-design-grid h3{margin:10px 4px 8px;font-size:1.4rem;line-height:1.5;min-height:3em}
 .home-design-photo>span{right:6px;bottom:6px;width:26px;height:26px;font-size:1.8rem}
 .home-design-preview a.home-design-more{width:229px;margin-top:20px;padding:16px 0;font-size:1.3rem}
 .home-photo-dialog{width:calc(100vw - 32px);max-width:none;max-height:calc(100dvh - 32px);padding:12px}
 .home-photo-toolbar{gap:12px}
 .home-photo-toolbar p{font-size:1.2rem}
 .home-photo-dialog>img{max-height:calc(100dvh - 128px)}
}
@media(max-width:379px){.home-design-preview>.container{width:calc(100% - 32px)}}
@media(prefers-reduced-motion:reduce){.home-design-grid a,.home-design-photo img{transition:none}}
