html { box-sizing: border-box; }

*, *::after, *::before { box-sizing: inherit; }

/* Font Family Declarations */
/* Font Sizing Handler */
/* Typography Styles */
/* Centered element - Parent container should be position: relative; */
/* Force element to fill it's parent container */
/* This mixin can be used to set the object-fit: @include object-fit(contain); or object-fit and object-position: @include object-fit(cover, top); */
.block-pandora-eguide-promo .button { background-size: cover; background: url("/themes/custom/tnvacation/img/btn_white.png") center repeat-x transparent; background-size: cover; color: #B84B1B !important; font-family: 'Freight-Sans', arial, sans-serif; font-weight: 700; -webkit-transition: all 0.3s linear; -moz-transition: all 0.3s linear; transition: all 0.3s linear; box-sizing: border-box; display: inline-block; font-size: 12px; letter-spacing: 3px; margin-bottom: 1em; min-height: 44px; padding: 14px 24px 11px; position: relative; text-align: center; text-decoration: none; text-transform: uppercase; }

.block-pandora-eguide-promo .button::before { background-image: url("/themes/custom/tnvacation/img/btn_white_left.png"); }

.block-pandora-eguide-promo .button::after { background-image: url("/themes/custom/tnvacation/img/btn_white_right.png"); }

.block-pandora-eguide-promo .button:hover { color: #1C5064 !important; }

.block-pandora-eguide-promo .button::before, .block-pandora-eguide-promo .button::after { -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%); transform: translateY(-50%); background-position: top left; background-repeat: repeat-y; background-size: 100% 100%; content: ''; height: calc(100% - 2px); left: 0; margin-left: -2px; position: absolute; top: 50%; width: 4px; }

.block-pandora-eguide-promo .button::after { left: auto; right: -3px; }

.block-pandora-eguide-promo .button:nth-child(1) { margin-left: 0; margin-right: 0; }

/* Promo blocks used throughout the site. These blocks may be added by Acquia Lift/Personalization. */
@media only screen and (min-width: 1024px) { .block-email-guide-promo { display: flex; align-items: center; height: 100%; background-color: #A71B1A; }
  .block-email-guide-promo .block-email-sign-up, .block-email-guide-promo .block-guide-promo { flex: 1 1 50%; } }

.email-planner-block::after { clear: both; content: ""; display: block; }

.block-email-planning-promo::after { clear: both; content: ""; display: block; }

.block-email-sign-up { background: url("/themes/custom/tnvacation/img/texture_darken.png") 0 50% #A71B1A; background-size: cover; color: #FFFFFF; height: 192px; padding: 40px; position: relative; }

.block-email-sign-up .content { -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%); transform: translateY(-50%); margin: 0 auto; max-width: 650px; position: relative; top: 50%; width: 100%; }

.block-email-sign-up .content::after { clear: both; content: ""; display: block; }

.block-email-sign-up .content .info { text-align: center; }

.block-email-sign-up .content .cta { text-align: center; }

.block-email-sign-up .content .cta .button { margin-top: 8px; }

.block-email-sign-up .content h2 .reset { font-family: 'Freight-Sans', arial, sans-serif; font-weight: 500; font-family: 'Freight-Sans', arial, sans-serif; font-weight: 500; letter-spacing: 0; text-transform: none; letter-spacing: 0; text-transform: none; font-size: 26px; font-size: 1.625rem; display: block; }

@media only screen and (min-width: 640px) and (max-width: 1199px) { .block-email-sign-up .content .info { float: left; padding: 0 14px; text-align: right; width: 50%; }
  .block-email-sign-up .content .cta { float: left; padding: 0 14px; text-align: left; width: 50%; }
  .block-email-sign-up .content .cta .button { margin-top: 8px; } }

@media only screen and (min-width: 1248px) { .block-email-planning-promo .block-email-sign-up, .block-email-guide-promo .block-email-sign-up { float: left; width: 50%; }
  .block-email-planning-promo .block-email-sign-up .content, .block-email-guide-promo .block-email-sign-up .content { float: right; }
  .block-email-planning-promo .block-email-sign-up .content .info, .block-email-guide-promo .block-email-sign-up .content .info { text-align: right; }
  .block-email-planning-promo .block-email-sign-up .content .cta, .block-email-guide-promo .block-email-sign-up .content .cta { text-align: right; } }

@media only screen and (min-width: 1400px) { .block-email-planning-promo .block-email-sign-up .content .info, .block-email-guide-promo .block-email-sign-up .content .info { float: left; padding: 0 14px; width: 50%; }
  .block-email-planning-promo .block-email-sign-up .content .cta, .block-email-guide-promo .block-email-sign-up .content .cta { float: left; padding: 0 14px; text-align: left; width: 50%; }
  .block-email-planning-promo .block-email-sign-up .content .cta .button, .block-email-guide-promo .block-email-sign-up .content .cta .button { margin-top: 8px; } }

#block-guidepromo-2 { background: #87598C; }

#block-guidepromo-2 .button { color: #348D90 !important; }

.block-guide-promo { color: #FFFFFF; min-height: 240px; overflow: hidden; padding: 40px 24px; position: relative; }

.block-guide-promo:not(.block-email-guide-promo) { background: #87598C; }

.block-email-guide-promo .block-guide-promo { background: url("/themes/custom/tnvacation/img/texture_darken.png") center #1C5064 repeat; }

.block-guide-promo .block-guide-promo-wrap { max-width: 1200px; margin-left: auto; margin-right: auto; position: relative; }

.block-guide-promo .block-guide-promo-wrap::after { clear: both; content: ""; display: block; }

@media only screen and (max-width: 1247px) { .block-guide-promo .block-guide-promo-wrap { padding-left: 24px; padding-right: 24px; } }

.block-guide-promo .button { background-size: cover; background: url("/themes/custom/tnvacation/img/btn_white.png") center repeat-x transparent; background-size: cover; color: #B84B1B !important; }

.block-guide-promo .button::before { background-image: url("/themes/custom/tnvacation/img/btn_white_left.png"); }

.block-guide-promo .button::after { background-image: url("/themes/custom/tnvacation/img/btn_white_right.png"); }

.block-guide-promo .button:hover { color: #1C5064 !important; }

@media only screen and (min-width: 768px) { .block-guide-promo :not(.block-email-guide-promo) .image { left: auto; position: absolute; right: 100px; top: -25px; width: 280px; }
  .block-guide-promo :not(.block-email-guide-promo) .content { margin-right: 500px; max-width: 480px; }
  .block-guide-promo :not(.block-email-guide-promo) .content .block-title { font-size: 32px; font-size: 2rem; }
  .block-email-guide-promo .block-guide-promo .image { -webkit-transform: translateY(-50%) rotate(-5deg); -moz-transform: translateY(-50%) rotate(-5deg); -ms-transform: translateY(-50%) rotate(-5deg); -o-transform: translateY(-50%) rotate(-5deg); transform: translateY(-50%) rotate(-5deg); left: 50px; position: absolute; right: auto; top: 50%; width: 185px; }
  .block-email-guide-promo .block-guide-promo .content { margin-left: 270px; padding-right: 3rem; }
  .block-email-guide-promo .block-guide-promo .content .block-title { font-size: 24px; font-size: 1.5rem; } }

.retire-tn .block-guide-promo { background-size: 100%; }

.block-pandora-eguide-promo { background: url("/themes/custom/tnvacation/img/texture_darken.png") center #1C5064 repeat; color: #FFFFFF; overflow: hidden; position: relative; }

.block-pandora-eguide-promo .block-inner { max-width: 1200px; margin-left: auto; margin-right: auto; }

.block-pandora-eguide-promo .button { background-size: cover; background: url("/themes/custom/tnvacation/img/btn_black.png") center repeat-x transparent; background-size: cover; color: #FFFFFF !important; }

.block-pandora-eguide-promo .button::before { background-image: url("/themes/custom/tnvacation/img/btn_black_left.png"); }

.block-pandora-eguide-promo .button::after { background-image: url("/themes/custom/tnvacation/img/btn_black_right.png"); }

.block-pandora-eguide-promo .button:hover { color: #1C5064 !important; }

.block-pandora-eguide-promo .promo-section { padding: 1rem; }

.block-pandora-eguide-promo .promo-section.guide { margin: 0 auto; max-width: 600px; padding-bottom: 0; }

.block-pandora-eguide-promo .promo-section.guide > div { display: inline-block; vertical-align: middle; }

.block-pandora-eguide-promo .promo-section.guide .content { margin-left: 4%; padding-top: 7%; width: 58%; }

.block-pandora-eguide-promo .promo-section.guide .image { width: 37%; }

.block-pandora-eguide-promo .promo-section.pandora { position: relative; }

.block-pandora-eguide-promo .promo-section.pandora::after { background: url("/themes/custom/tnvacation/img/texture_darken.png") center #333333 repeat; content: ''; display: block; height: 100%; left: 0; position: absolute; top: 0; width: 100%; }

.block-pandora-eguide-promo .promo-section.pandora > div { margin: 0 auto; max-width: 600px; position: relative; z-index: 1; }

.block-pandora-eguide-promo .promo-section.pandora .image { margin-bottom: .5em; }

@media only screen and (min-width: 1024px) { .block-pandora-eguide-promo .promo-section { display: inline-block; vertical-align: bottom; width: 49%; z-index: 1; }
  .block-pandora-eguide-promo .promo-section.guide { margin-left: 1%; }
  .block-pandora-eguide-promo .promo-section.pandora { position: inherit; }
  .block-pandora-eguide-promo .promo-section.pandora::after { width: 50%; } }

.block-trip-planner { background: url("../img/texture_darken.png") 0 -100% #1C5064 no-repeat; background-size: cover; color: #FFFFFF; position: relative; padding: 40px; }

.block-trip-planner .image { display: inline-block; margin-bottom: -40px; position: relative; }

.block-trip-planner .image:before { background: url("../img/arrow.png") center no-repeat; content: ''; display: block; height: 34px; left: calc(100% - 20px); position: absolute; top: 4px; width: 94px; }

@media only screen and (min-width: 580px) { .block-trip-planner { height: 192px; }
  .block-trip-planner .content { -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%); transform: translateY(-50%); margin: 0 auto; max-width: 650px; position: relative; top: 50%; width: 100%; }
  .block-trip-planner .content .info { margin-left: 280px; }
  .block-trip-planner .content .info h2 { margin-top: 8px; }
  .block-trip-planner .image { bottom: 0; left: calc(50% - 360px); margin-bottom: 0; position: absolute; } }

@media only screen and (min-width: 1248px) { .block-email-planning-promo .block-trip-planner, .block-email-guide-promo .block-trip-planner { float: left; width: 50%; }
  .block-email-planning-promo .block-trip-planner .content, .block-email-guide-promo .block-trip-planner .content { float: left; }
  .block-email-planning-promo .block-trip-planner .image, .block-email-guide-promo .block-trip-planner .image { left: 0; } }

.block-start-planning { padding: 10vh 24px; position: relative; text-align: center; z-index: 1; }

.block-start-planning .headline { font-family: 'Hand-Mocha-Mattari', arial, sans-serif; font-style: normal; font-weight: normal; font-size: 36px; font-size: 2.25rem; margin-top: 7vh; margin-bottom: 16px; }

@media only screen and (max-width: 767px) { .block-start-planning .headline { display: none; } }

.block-start-planning .logo { margin-bottom: 15vh; }

@media only screen and (max-width: 767px) { .block-start-planning .logo { display: none; } }

.block-start-planning .logo img { margin: 0 auto; }

.block-start-planning .block-title { font-size: 30px; font-size: 1.875rem; position: relative; margin-bottom: 30px; padding-bottom: 16px; line-height: 1.2; }

.block-start-planning .block-title::after { background: url("/themes/custom/tnvacation/img/hr-small.png") no-repeat center; content: ''; display: block; height: 7px; position: absolute; width: 30px; top: 100%; left: 50%; transform: translateX(-50%); }

.block-start-planning .custom-select { display: inline-block; margin: 0 0 16px; max-width: 350px; width: 100%; }

.block-start-planning .custom-select .custom-select-options .form-item { background-color: #FFFFFF; margin-top: 8px; }

.block-start-planning .custom-select .custom-select-options .form-submit { display: none; }

@media only screen and (min-width: 700px) { .block-start-planning .custom-select { margin-left: 24px; margin-right: 24px; } }

.block-start-planning .custom-select .custom-select-label { text-align: center; }

.block-pandora-promo { background: url("../img/texture_darken.png") center #201E1B repeat; color: #FFFFFF; min-height: 240px; overflow: hidden; padding: 40px 24px; position: relative; }

.block-pandora-promo .image { margin: 0 auto; max-width: 500px; text-align: center; width: 100%; }

.block-pandora-promo .image img { display: inline-block; margin: 24px 16px; vertical-align: middle; }

.block-pandora-promo .block-guide-promo-wrap { max-width: 1200px; margin-left: auto; margin-right: auto; position: relative; }

.block-pandora-promo .block-guide-promo-wrap::after { clear: both; content: ""; display: block; }

@media only screen and (max-width: 1247px) { .block-pandora-promo .block-guide-promo-wrap { padding-left: 24px; padding-right: 24px; } }

.block-pandora-promo .button { background-size: cover; background: url("/themes/custom/tnvacation/img/btn_black.png") center repeat-x transparent; background-size: cover; color: #FFFFFF !important; }

.block-pandora-promo .button::before { background-image: url("/themes/custom/tnvacation/img/btn_black_left.png"); }

.block-pandora-promo .button::after { background-image: url("/themes/custom/tnvacation/img/btn_black_right.png"); }

.block-pandora-promo .button:hover { color: #1C5064 !important; }

@media only screen and (min-width: 1024px) { .block-pandora-promo .image { -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%); transform: translateY(-50%); left: auto; position: absolute; right: 100px; top: 50%; }
  .block-pandora-promo .content { margin-right: 500px; max-width: 480px; }
  .block-pandora-promo .content .block-title { font-size: 32px; font-size: 2rem; } }

/*# sourceMappingURL=../../maps/libraries/block/tnv-promo.css.map */
