/* 首页旅行入口与地方风味；沿用全站青绿、沙金与宣纸配色。 */
.home-start, .home-flavors { padding: clamp(2.5rem, 5vw, 4.5rem) 0; }
.home-start__head { margin-bottom: 1.4rem; }
.home-start__head h2 { margin: 0 0 .5rem; color: var(--primary); font-size: clamp(1.35rem, 2.4vw, 1.8rem); }
.home-start__head p { margin: 0; color: var(--gray-600); }
.home-start__grid, .home-flavors__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.1rem; }
.home-start__grid > a { display: flex; flex-direction: column; padding: 1.4rem; border: 1px solid rgba(25, 59, 56, .16); border-radius: 12px; background: rgba(255, 253, 247, .75); color: var(--primary); text-decoration: none; }
.home-start__grid span, .home-flavor span { font-size: .73rem; letter-spacing: .05em; color: #785b2d; }
.home-start__grid h3 { margin: .8rem 0 .6rem; font-size: 1rem; }
.home-start__grid p, .home-flavor p { margin: 0 0 1rem; font-size: .85rem; line-height: 1.8; color: var(--gray-600); }
.home-start__grid b, .home-flavor b { margin-top: auto; font-size: .8rem; color: var(--primary); }
.home-start__grid > a:hover, .home-flavor:hover { border-color: var(--accent); box-shadow: 0 6px 20px rgba(25, 59, 56, .08); }
.home-start__grid > a:focus-visible, .home-flavor:focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; }
.home-flavor { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid rgba(25, 59, 56, .16); border-radius: 12px; background: rgba(255, 253, 247, .8); text-decoration: none; }
.home-flavor > img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.home-flavor > div { display: flex; flex: 1; flex-direction: column; padding: 1.2rem; }
.home-flavor h3 { margin: .5rem 0 .6rem; color: var(--primary); font-size: 1rem; line-height: 1.6; }
body.home-page main > section.home-start, body.home-page main > section.home-flavors { scroll-margin-top: 70px; }
@media (max-width: 1000px) {
    .home-start__grid, .home-flavors__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px) {
    .home-start__grid { grid-template-columns: 1fr; gap: .7rem; }
    .home-start__grid > a { padding: 1.1rem; }
    .home-start__grid h3 { margin-top: .5rem; }
    .home-flavors__grid { gap: .7rem; }
    .home-flavor > div { padding: .85rem; }
    .home-flavor h3 { font-size: .9rem; }
    .home-flavor p { font-size: .8rem; }
}
