.tour-card{display:flex;flex-direction:column;overflow:hidden;border-radius:1rem;border-width:1px;border-color:hsl(var(--border));background-color:hsl(var(--card));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media(min-width:801px){.tour-card{flex-direction:row}}@media(min-width:1101px){.tour-card--active{border-color:hsl(var(--primary)/.6);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--primary)/.3)}}.tour-card .tour-card__media{position:relative;margin:1rem 1rem 0;aspect-ratio:16/9;flex-shrink:0;align-self:stretch;overflow:hidden;border-radius:.75rem;background-color:hsl(var(--muted))}@media(min-width:801px){.tour-card .tour-card__media{margin-bottom:1rem;margin-right:0;aspect-ratio:1/1;width:40%;max-width:220px;align-self:flex-start}}.tour-card .tour-card__media .base-image{position:absolute;inset:0;height:100%;width:100%}.tour-card .tour-card__media-link{position:absolute;inset:0;display:block}.tour-card .tour-card__body{display:flex;min-width:0;flex:1 1 0%;flex-direction:column;gap:.5rem;padding:1rem}.tour-card .tour-card__home{display:flex;align-items:center;gap:.5rem}.tour-card .tour-card__home-rule{height:.75rem;width:.125rem;background-color:hsl(var(--primary))}.tour-card .tour-card__home-name{font-size:.75rem;line-height:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:hsl(var(--primary))}.tour-card .tour-card__title{font-size:1rem;line-height:1.5rem;font-weight:700;line-height:1.25;color:hsl(var(--foreground))}.tour-card .tour-card__title-link{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media(hover:hover){.tour-card .tour-card__title-link:hover{color:hsl(var(--primary))}}.tour-card .tour-card__description{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;white-space:pre-line;font-size:.875rem;line-height:1.25rem;line-height:1.625;color:hsl(var(--muted-foreground))}.tour-card .tour-card__more{align-self:flex-start;font-size:.875rem;line-height:1.25rem;font-weight:600;color:hsl(var(--primary))}@media(hover:hover)and (pointer:fine){.tour-card .tour-card__more:hover{text-decoration-line:underline}}.tour-card .tour-card__actions{margin-top:auto;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:.5rem}.tour-card .tour-card__actions-primary{display:flex;min-width:0;flex:1 1 0%;flex-direction:column;gap:.5rem}.tour-card .tour-card__actions-primary>*{width:100%}@media(min-width:801px){.tour-card .tour-card__actions-primary{flex-direction:row;flex-wrap:nowrap;align-items:center}.tour-card .tour-card__actions-primary>*{width:auto}}.tour-card .tour-card__favorite{flex-shrink:0;color:hsl(var(--muted-foreground))}.tour-card .tour-card__favorite--active{border-color:hsl(var(--primary)/.6);color:hsl(var(--primary))}.tour-card .tour-card__favorite-overlay{position:absolute;right:.5rem;top:.5rem;z-index:10}@media(min-width:801px){.tour-card .tour-card__favorite-overlay{display:none}}.tour-card .tour-card__favorite--has-overlay{display:none}@media(min-width:801px){.tour-card .tour-card__favorite--has-overlay{display:inline-flex}}.tour-card .tour-card__route-btn{color:hsl(var(--foreground))}@media(min-width:1101px){.tour-card .tour-card__route-btn{display:none}.tour-card--route-visible .tour-card__route-btn{display:inline-flex}}.tour-map-dialog{gap:.75rem;overflow:hidden;border-radius:1rem}.tour-map-dialog .tour-map-dialog__title{min-width:0;padding-right:2rem;font-size:1rem;line-height:1.5rem;line-height:1.375}.tour-map-dialog .tour-map-dialog__map-wrapper{position:relative;width:100%;padding-bottom:100%}.tour-map-dialog .tour-map-dialog__map{position:absolute;inset:0;width:100%;height:100%;min-width:0;overflow:hidden;border-radius:.75rem}
