XML 79 R94.htm IDEA: XBRL DOCUMENT v2.4.1.9
Pension and Postretirement Benefits - Summary of funded status of the plans (Details) (USD $)
In Thousands, unless otherwise specified
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Funded Plans      
Change in benefit obligation:      
Benefit obligation at beginning of year $ 13,435us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
$ 15,348us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
 
Service cost 0us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
0us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
 
Interest cost 644us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
608us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
 
Recognized net actuarial loss 2,700us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
(1,530)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
 
Plan amendments 0us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
0us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
 
Benefits paid (767)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
(991)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
 
Benefit obligation at end of year 16,012us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
13,435us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
 
Change in plan assets:      
Fair value of plan assets at beginning of year 10,872us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
10,624us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
 
Actual return on plan assets 364us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
580us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
 
Company contributions 729us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
659us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
 
Benefits paid (767)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
(991)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
 
Fair value of plan assets at end of year 11,198us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
10,872us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
 
Funded status at end of year (4,814)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
(2,563)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
 
Unfunded Pension Plans      
Change in benefit obligation:      
Benefit obligation at beginning of year 10,536us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
11,570us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
 
Service cost 87us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
66us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
 
Interest cost 435us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
422us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
 
Recognized net actuarial loss 649us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
(856)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
 
Plan amendments 0us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
0us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
 
Benefits paid (580)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
(666)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
 
Benefit obligation at end of year 11,127us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
10,536us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
 
Change in plan assets:      
Fair value of plan assets at beginning of year 0us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
0us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
 
Actual return on plan assets 0us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
0us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
 
Company contributions 580us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
666us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
 
Benefits paid (580)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
(666)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
 
Fair value of plan assets at end of year 0us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
0us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
 
Funded status at end of year (11,127)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
(10,536)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
 
Postretirement Benefit Plans      
Change in benefit obligation:      
Benefit obligation at beginning of year 16,919us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
18,701us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Service cost 129us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
156us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Interest cost 640us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
663us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Recognized net actuarial loss 1,011us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(1,631)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Plan amendments (1,283)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(40)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Benefits paid (1,181)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(930)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Benefit obligation at end of year 16,235us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
16,919us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Change in plan assets:      
Fair value of plan assets at beginning of year 520us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
1,397us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Actual return on plan assets (34)us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(135)us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Company contributions 695us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
188us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Benefits paid (1,181)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(930)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Fair value of plan assets at end of year 0us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
520us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Funded status at end of year (16,235)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(16,399)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
US Postretirement Benefit Plans      
Change in benefit obligation:      
Service cost 129us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_UnitedStatesPostretirementBenefitPlansOfUSEntityDefinedBenefitMember
156us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_UnitedStatesPostretirementBenefitPlansOfUSEntityDefinedBenefitMember
146us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_UnitedStatesPostretirementBenefitPlansOfUSEntityDefinedBenefitMember
Interest cost 640us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_UnitedStatesPostretirementBenefitPlansOfUSEntityDefinedBenefitMember
663us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_UnitedStatesPostretirementBenefitPlansOfUSEntityDefinedBenefitMember
814us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_UnitedStatesPostretirementBenefitPlansOfUSEntityDefinedBenefitMember
Recognized net actuarial loss 166us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_UnitedStatesPostretirementBenefitPlansOfUSEntityDefinedBenefitMember
518us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_UnitedStatesPostretirementBenefitPlansOfUSEntityDefinedBenefitMember
547us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_UnitedStatesPostretirementBenefitPlansOfUSEntityDefinedBenefitMember
Change in plan assets:      
Fair value of plan assets at beginning of year 520us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_UnitedStatesPostretirementBenefitPlansOfUSEntityDefinedBenefitMember
   
Fair value of plan assets at end of year   520us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_UnitedStatesPostretirementBenefitPlansOfUSEntityDefinedBenefitMember
 
Foreign Pension Plans      
Change in benefit obligation:      
Service cost 413us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
534us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
491us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
Interest cost 631us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
702us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
737us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
Recognized net actuarial loss 145us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
248us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
201us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
Change in plan assets:      
Fair value of plan assets at beginning of year 11,560us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
   
Fair value of plan assets at end of year 11,747us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
11,560us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Foreign Pension Plans | Funded Plans      
Change in benefit obligation:      
Benefit obligation at beginning of year 11,460us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
15,387us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Service cost 413us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
534us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Interest cost 507us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
582us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Recognized net actuarial loss (1,042)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
473us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Benefits paid (344)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
(3,644)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Translation adjustment (1,062)us-gaap_DefinedBenefitPlanForeignCurrencyExchangeRateChangesBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
(926)us-gaap_DefinedBenefitPlanForeignCurrencyExchangeRateChangesBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Benefit obligation at end of year 12,016us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
11,460us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Change in plan assets:      
Fair value of plan assets at beginning of year 11,560us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
12,997us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Actual return on plan assets 983us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
1,148us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Company contributions 604us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
1,892us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Benefits paid (344)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
(3,644)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Translation adjustment (1,056)us-gaap_DefinedBenefitPlanForeignCurrencyExchangeRateChangesPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
(833)us-gaap_DefinedBenefitPlanForeignCurrencyExchangeRateChangesPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Fair value of plan assets at end of year 11,747us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
11,560us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Funded status at end of year (269)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
100us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_FundedPlanMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Foreign Pension Plans | Unfunded Pension Plans      
Change in benefit obligation:      
Benefit obligation at beginning of year 2,911us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
3,032us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Service cost 0us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
0us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Interest cost 124us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
120us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Recognized net actuarial loss (234)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
(44)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Benefits paid (211)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
(219)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Translation adjustment (302)us-gaap_DefinedBenefitPlanForeignCurrencyExchangeRateChangesBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
(66)us-gaap_DefinedBenefitPlanForeignCurrencyExchangeRateChangesBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Benefit obligation at end of year 2,756us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
2,911us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Change in plan assets:      
Fair value of plan assets at beginning of year 0us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
0us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Actual return on plan assets    0us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Company contributions 211us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
219us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Benefits paid (211)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
(219)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Translation adjustment    0us-gaap_DefinedBenefitPlanForeignCurrencyExchangeRateChangesPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Fair value of plan assets at end of year 0us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
0us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
 
Funded status at end of year $ (2,756)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember
$ (2,911)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlanByPlanAssetCategoriesAxis
= vvi_UnfundedPensionPlansDefinedBenefitMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_ForeignPensionPlansDefinedBenefitMember