.home{max-width:1100px;margin:0 auto;padding:calc(var(--safe-top) + var(--sp-5)) calc(var(--safe-right) + var(--sp-4)) calc(var(--safe-bottom) + var(--sp-6)) calc(var(--safe-left) + var(--sp-4))}.home__header{margin-bottom:var(--sp-5)}.home__title{font-size:var(--fs-2xl);line-height:1.2}.home__subtitle{margin-top:var(--sp-1);color:var(--c-text-dim);font-size:var(--fs-sm)}.trip-list{display:grid;gap:var(--sp-4);grid-template-columns:1fr;list-style:none;margin:0;padding:0}@media(min-width:620px){.trip-list{grid-template-columns:repeat(2,1fr)}}@media(min-width:960px){.trip-list{grid-template-columns:repeat(3,1fr)}}.trip-card{position:relative;display:flex;flex-direction:column;overflow:hidden;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);box-shadow:var(--c-shadow-card)}.trip-card__media{position:relative;aspect-ratio:16 / 9;background:var(--c-media-bg);overflow:hidden}.trip-card__media img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-med) var(--ease)}.trip-card:hover .trip-card__media img{transform:scale(1.03)}.trip-card__body{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-4)}.trip-card__title{font-size:var(--fs-lg);font-weight:700;line-height:1.25}.trip-card__link:after{content:"";position:absolute;inset:0}.trip-card__link{text-decoration:none}.trip-card__link:focus-visible{outline:none}.trip-card:has(.trip-card__link:focus-visible){outline:3px solid var(--c-focus);outline-offset:2px}.trip-card__date{color:var(--c-text-dim);font-size:var(--fs-sm)}.trip-card__stats{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) 0;color:var(--c-text-dim);font-size:var(--fs-sm);margin-top:var(--sp-1)}.trip-card__stat{display:inline-flex;align-items:center;gap:var(--sp-1);white-space:nowrap}.trip-card__stat+.trip-card__stat:before{content:"·";display:inline-block;margin:0 var(--sp-2);color:var(--c-border);font-weight:700}.trip-card__countries{color:var(--c-text-dim);font-size:var(--fs-xs);letter-spacing:.02em;margin-top:auto;padding-top:var(--sp-2);border-top:1px solid var(--c-border)}.trip-card__media--empty{display:grid;place-items:center;color:var(--c-text-dim);font-size:var(--fs-sm)}
