<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">/* Minification failed. Returning unminified contents.
(2115,22): run-time error CSS1039: Token not allowed after unary operator: '-Hover-btn-background-hover'
(2118,28): run-time error CSS1039: Token not allowed after unary operator: '-Disabled-btn-stroke-disabled'
(2119,22): run-time error CSS1039: Token not allowed after unary operator: '-Disabled-btn-background-disabled'
(7162,17): run-time error CSS1039: Token not allowed after unary operator: '-system-error-dark'
(11550,23): run-time error CSS1039: Token not allowed after unary operator: '-border-radius'
(11551,26): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-100'
(11600,15): run-time error CSS1039: Token not allowed after unary operator: '-Default-btn-txt'
(11664,20): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-100'
(11829,22): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-100'
(11831,25): run-time error CSS1039: Token not allowed after unary operator: '-border-radius'
(11883,20): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-100'
(13335,28): run-time error CSS1039: Token not allowed after unary operator: '-Default-btn-stroke'
(13405,18): run-time error CSS1039: Token not allowed after unary operator: '-item-number'
(13405,48): run-time error CSS1039: Token not allowed after unary operator: '-Core-Tertiary-200'
(13423,27): run-time error CSS1039: Token not allowed after unary operator: '-border-radius'
(13423,53): run-time error CSS1039: Token not allowed after unary operator: '-border-radius'
(13447,27): run-time error CSS1039: Token not allowed after unary operator: '-Font-Family-Body'
(13448,21): run-time error CSS1039: Token not allowed after unary operator: '-Semantic-Content-content_primary'
(13525,17): run-time error CSS1039: Token not allowed after unary operator: '-Semantic-Content-content_primary'
(16193,26): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-100'
(16421,17): run-time error CSS1039: Token not allowed after unary operator: '-Semantic-Elements-Text-heading_primary'
(16426,22): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-100'
(16511,21): run-time error CSS1039: Token not allowed after unary operator: '-Semantic-Elements-Text-heading_secondary'
(16512,25): run-time error CSS1039: Token not allowed after unary operator: '-Font-Size-Body-Body-XS'
(16531,21): run-time error CSS1039: Token not allowed after unary operator: '-Semantic-Elements-Text-heading_secondary'
(16532,25): run-time error CSS1039: Token not allowed after unary operator: '-Font-Size-Body-Body-XS'
(16888,19): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-700'
(16894,19): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-700'
(18186,25): run-time error CSS1039: Token not allowed after unary operator: '-Font-Family-Body'
(18276,23): run-time error CSS1039: Token not allowed after unary operator: '-border-radius'
(18287,25): run-time error CSS1039: Token not allowed after unary operator: '-border-radius'
(18303,20): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-100'
(18385,17): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(18386,23): run-time error CSS1039: Token not allowed after unary operator: '-Font-Family-Body'
(18419,17): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-700'
(18580,18): run-time error CSS1039: Token not allowed after unary operator: '-item-number'
(18652,15): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-700'
(18655,17): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-700'
(18693,19): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-600'
(20579,19): run-time error CSS1039: Token not allowed after unary operator: '-Font-Size-Body-M'
(20595,21): run-time error CSS1039: Token not allowed after unary operator: '-Font-Line-Height-XL'
(20736,17): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-500'
(20738,23): run-time error CSS1039: Token not allowed after unary operator: '-Font-Family-Body'
(20744,17): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-700'
(20746,23): run-time error CSS1039: Token not allowed after unary operator: '-Font-Family-Body'
(20882,17): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(20883,23): run-time error CSS1039: Token not allowed after unary operator: '-Font-Family-Body'
(20899,35): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-100'
(20979,23): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-600'
(20980,29): run-time error CSS1039: Token not allowed after unary operator: '-Font-Family-Body'
(20997,21): run-time error CSS1039: Token not allowed after unary operator: '-Buttons-Secondary-Button-secondary-btn'
(21004,21): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-600'
(21005,27): run-time error CSS1039: Token not allowed after unary operator: '-Font-Family-Body'
(21016,23): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-600'
(21019,17): run-time error CSS1039: Token not allowed after unary operator: '-Default-btn-txt'
(21068,30): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(21072,21): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(21117,22): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(21139,17): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(21146,17): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(21165,15): run-time error CSS1039: Token not allowed after unary operator: '-component-padding'
(21193,28): run-time error CSS1039: Token not allowed after unary operator: '-Default-btn-stroke'
(21194,22): run-time error CSS1039: Token not allowed after unary operator: '-Default-btn-background'
(21208,15): run-time error CSS1039: Token not allowed after unary operator: '-component-padding'
(21211,19): run-time error CSS1039: Token not allowed after unary operator: '-Default-btn-txt'
(21212,25): run-time error CSS1039: Token not allowed after unary operator: '-Font-Family-Body'
(21213,23): run-time error CSS1039: Token not allowed after unary operator: '-Font-Size-Body-M'
(21216,25): run-time error CSS1039: Token not allowed after unary operator: '-Font-Line-Height-XL'
(21218,18): run-time error CSS1039: Token not allowed after unary operator: '-Default-btn-stroke'
(21245,30): run-time error CSS1030: Expected identifier, found '.'
(21245,58): run-time error CSS1031: Expected selector, found ')'
(21245,58): run-time error CSS1025: Expected comma or open brace, found ')'
(21249,40): run-time error CSS1030: Expected identifier, found '.'
(21249,64): run-time error CSS1031: Expected selector, found ')'
(21249,64): run-time error CSS1025: Expected comma or open brace, found ')'
(22055,15): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-400'
(22068,20): run-time error CSS1039: Token not allowed after unary operator: '-system-error-light'
(22076,20): run-time error CSS1039: Token not allowed after unary operator: '-Secondary-secondary-100'
(22100,17): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(22119,17): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(22139,19): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(22238,17): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-400'
(22242,22): run-time error CSS1039: Token not allowed after unary operator: '-Secondary-secondary-100'
(22403,22): run-time error CSS1039: Token not allowed after unary operator: '-Secondary-secondary-100'
(22413,22): run-time error CSS1039: Token not allowed after unary operator: '-Secondary-secondary-100'
(22502,17): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(22516,17): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(22555,19): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-700'
(22563,19): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-400'
(24477,22): run-time error CSS1039: Token not allowed after unary operator: '-Hover-btn-background-hover'
(25113,23): run-time error CSS1039: Token not allowed after unary operator: '-border-radius'
(25114,20): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-white'
(25129,17): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(25139,17): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-500'
(25140,21): run-time error CSS1039: Token not allowed after unary operator: '-Font-Size-Body-M'
(25144,22): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-white'
(25178,21): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-600'
(25184,21): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-600'
(25185,25): run-time error CSS1039: Token not allowed after unary operator: '-Font-Size-Body-M'
(25188,27): run-time error CSS1039: Token not allowed after unary operator: '-Font-Line-Height-XL'
(25191,21): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(25192,25): run-time error CSS1039: Token not allowed after unary operator: '-Font-Size-Body-M'
(25195,27): run-time error CSS1039: Token not allowed after unary operator: '-Font-Line-Height-XL'
(25226,32): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-500'
(25227,21): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-500'
(25237,23): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-white'
(25238,28): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-500'
(25267,19): run-time error CSS1039: Token not allowed after unary operator: '-Default-btn-txt'
(25289,25): run-time error CSS1039: Token not allowed after unary operator: '-Font-Line-Height-XL'
(25290,24): run-time error CSS1039: Token not allowed after unary operator: '-Disabled-btn-background-disabled'
(25314,28): run-time error CSS1039: Token not allowed after unary operator: '-system-error-dark'
(25315,22): run-time error CSS1039: Token not allowed after unary operator: '-system-error-light'
(25318,19): run-time error CSS1039: Token not allowed after unary operator: '-system-error-dark'
(25558,22): run-time error CSS1039: Token not allowed after unary operator: '-Hover-btn-background-hover'
(25584,30): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-100'
(25938,15): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-500'
(25972,15): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-700'
(25973,19): run-time error CSS1039: Token not allowed after unary operator: '-Font-Size-Body-M'
(25976,21): run-time error CSS1039: Token not allowed after unary operator: '-Font-Line-Height-XL'
(25978,17): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-500'
(26054,26): run-time error CSS1039: Token not allowed after unary operator: '-Primary-primary-700'
(26055,20): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-white'
(26058,17): run-time error CSS1039: Token not allowed after unary operator: '-Default-btn-txt'
(26264,19): run-time error CSS1039: Token not allowed after unary operator: '-Default-btn-txt'
(26535,24): run-time error CSS1039: Token not allowed after unary operator: '-Hover-btn-background-hover'
(26580,22): run-time error CSS1039: Token not allowed after unary operator: '-Hover-btn-background-hover'
(26727,26): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-100'
(26763,23): run-time error CSS1039: Token not allowed after unary operator: '-Font-Family-Body'
(26764,17): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-700'
(27068,26): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-100'
(27296,17): run-time error CSS1039: Token not allowed after unary operator: '-Semantic-Elements-Text-heading_primary'
(27301,22): run-time error CSS1039: Token not allowed after unary operator: '-Greyscale-greyscale-100'
(27386,21): run-time error CSS1039: Token not allowed after unary operator: '-Semantic-Elements-Text-heading_secondary'
(27387,25): run-time error CSS1039: Token not allowed after unary operator: '-Font-Size-Body-Body-XS'
(27406,21): run-time error CSS1039: Token not allowed after unary operator: '-Semantic-Elements-Text-heading_secondary'
(27407,25): run-time error CSS1039: Token not allowed after unary operator: '-Font-Size-Body-Body-XS'
(28475,22): run-time error CSS1039: Token not allowed after unary operator: '-Hover-btn-background-hover'
(28708,25): run-time error CSS1039: Token not allowed after unary operator: '-item-number'
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove default margin.
 */
body {
  margin: 0; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

nav {
  overflow: hidden; }

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox &lt; 22.
 */
[hidden],
template {
  display: none; }

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0; }

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0; }

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto; }

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal; }

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 2 */ }

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto; }

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold; }

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

a {
  text-decoration: none; }

html {
  line-height: 1.5;
  font-family: "Roboto", Arial, sans-serif;
  font-weight: normal;
  color: #393939; }
  @media only screen and (min-width: 0) {
    html {
      font-size: 16px; } }
  @media only screen and (min-width: 992px) {
    html {
      font-size: 16px; } }
  @media only screen and (min-width: 1380px) {
    html {
      font-size: 16px; } }

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  line-height: 1.1; }

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  font-weight: inherit; }

h1 {
  font-size: 3rem;
  line-height: 110%;
  margin: 0; }

h2 {
  font-size: 1.375rem;
  line-height: 110%;
  margin: 0; }

h3 {
  font-size: 1.125rem;
  line-height: 110%;
  margin: 0; }

h4 {
  font-size: 1rem;
  line-height: 110%;
  margin: 0; }

h5 {
  font-size: 1rem;
  line-height: 110%;
  margin: 0; }

h6 {
  font-size: 0.875rem;
  line-height: 110%;
  margin: 0; }

em {
  font-style: italic; }

small {
  font-size: 75%; }

.light, .page-footer .footer-copyright {
  font-weight: 300; }

.thin {
  font-weight: 200; }

.bold {
  font-weight: bold; }

.flow-text {
  font-weight: 300; }
  @media only screen and (min-width: 360px) {
    .flow-text {
      font-size: 1.2rem; } }
  @media only screen and (min-width: 399px) {
    .flow-text {
      font-size: 1.224rem; } }
  @media only screen and (min-width: 438px) {
    .flow-text {
      font-size: 1.248rem; } }
  @media only screen and (min-width: 477px) {
    .flow-text {
      font-size: 1.272rem; } }
  @media only screen and (min-width: 516px) {
    .flow-text {
      font-size: 1.296rem; } }
  @media only screen and (min-width: 555px) {
    .flow-text {
      font-size: 1.32rem; } }
  @media only screen and (min-width: 594px) {
    .flow-text {
      font-size: 1.344rem; } }
  @media only screen and (min-width: 633px) {
    .flow-text {
      font-size: 1.368rem; } }
  @media only screen and (min-width: 672px) {
    .flow-text {
      font-size: 1.392rem; } }
  @media only screen and (min-width: 711px) {
    .flow-text {
      font-size: 1.416rem; } }
  @media only screen and (min-width: 750px) {
    .flow-text {
      font-size: 1.44rem; } }
  @media only screen and (min-width: 789px) {
    .flow-text {
      font-size: 1.464rem; } }
  @media only screen and (min-width: 828px) {
    .flow-text {
      font-size: 1.488rem; } }
  @media only screen and (min-width: 867px) {
    .flow-text {
      font-size: 1.512rem; } }
  @media only screen and (min-width: 906px) {
    .flow-text {
      font-size: 1.536rem; } }
  @media only screen and (min-width: 945px) {
    .flow-text {
      font-size: 1.56rem; } }
  @media only screen and (min-width: 984px) {
    .flow-text {
      font-size: 1.584rem; } }
  @media only screen and (min-width: 1023px) {
    .flow-text {
      font-size: 1.608rem; } }
  @media only screen and (min-width: 1062px) {
    .flow-text {
      font-size: 1.632rem; } }
  @media only screen and (min-width: 1101px) {
    .flow-text {
      font-size: 1.656rem; } }
  @media only screen and (min-width: 1140px) {
    .flow-text {
      font-size: 1.68rem; } }
  @media only screen and (max-width: 360px) {
    .flow-text {
      font-size: 1.2rem; } }

.container {
  margin: 0 auto;
  max-width: 1360px;
  width: 100%;
  padding: 0 1rem;
  padding: 0;
  /* Refactor */
  overflow: hidden; }

/*
.container .row {
  margin-left: (-1 * $gutter-width / 2);
  margin-right: (-1 * $gutter-width / 2);
}
*/
.section, section, footer {
  padding-top: 3rem;
  padding-bottom: 3rem;
  width: 100%; }
  .section.no-pad, section.no-pad, footer.no-pad {
    padding: 0; }
  .section.no-pad-bot, section.no-pad-bot, footer.no-pad-bot {
    padding-bottom: 0; }
  .section.no-pad-top, section.no-pad-top, footer.no-pad-top {
    padding-top: 0; }

.row {
  margin-left: auto;
  margin-right: auto; }
  .row:after {
    content: "";
    display: table;
    clear: both; }
  .row .col {
    float: left;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0 1rem;
    min-height: 1px; }
    .row .col[class*="push-"], .row .col[class*="pull-"] {
      position: relative; }
    .row .col.s1 {
      width: 8.33333%;
      margin-left: auto;
      left: auto;
      right: auto; }
    .row .col.s2 {
      width: 16.66667%;
      margin-left: auto;
      left: auto;
      right: auto; }
    .row .col.s3 {
      width: 25%;
      margin-left: auto;
      left: auto;
      right: auto; }
    .row .col.s4 {
      width: 33.33333%;
      margin-left: auto;
      left: auto;
      right: auto; }
    .row .col.s5 {
      width: 41.66667%;
      margin-left: auto;
      left: auto;
      right: auto; }
    .row .col.s6 {
      width: 50%;
      margin-left: auto;
      left: auto;
      right: auto; }
    .row .col.s7 {
      width: 58.33333%;
      margin-left: auto;
      left: auto;
      right: auto; }
    .row .col.s8 {
      width: 66.66667%;
      margin-left: auto;
      left: auto;
      right: auto; }
    .row .col.s9 {
      width: 75%;
      margin-left: auto;
      left: auto;
      right: auto; }
    .row .col.s10 {
      width: 83.33333%;
      margin-left: auto;
      left: auto;
      right: auto; }
    .row .col.s11 {
      width: 91.66667%;
      margin-left: auto;
      left: auto;
      right: auto; }
    .row .col.s12 {
      width: 100%;
      margin-left: auto;
      left: auto;
      right: auto; }
    .row .col.offset-s1 {
      margin-left: 8.33333%; }
    .row .col.pull-s1 {
      right: 8.33333%; }
    .row .col.push-s1 {
      left: 8.33333%; }
    .row .col.offset-s2 {
      margin-left: 16.66667%; }
    .row .col.pull-s2 {
      right: 16.66667%; }
    .row .col.push-s2 {
      left: 16.66667%; }
    .row .col.offset-s3 {
      margin-left: 25%; }
    .row .col.pull-s3 {
      right: 25%; }
    .row .col.push-s3 {
      left: 25%; }
    .row .col.offset-s4 {
      margin-left: 33.33333%; }
    .row .col.pull-s4 {
      right: 33.33333%; }
    .row .col.push-s4 {
      left: 33.33333%; }
    .row .col.offset-s5 {
      margin-left: 41.66667%; }
    .row .col.pull-s5 {
      right: 41.66667%; }
    .row .col.push-s5 {
      left: 41.66667%; }
    .row .col.offset-s6 {
      margin-left: 50%; }
    .row .col.pull-s6 {
      right: 50%; }
    .row .col.push-s6 {
      left: 50%; }
    .row .col.offset-s7 {
      margin-left: 58.33333%; }
    .row .col.pull-s7 {
      right: 58.33333%; }
    .row .col.push-s7 {
      left: 58.33333%; }
    .row .col.offset-s8 {
      margin-left: 66.66667%; }
    .row .col.pull-s8 {
      right: 66.66667%; }
    .row .col.push-s8 {
      left: 66.66667%; }
    .row .col.offset-s9 {
      margin-left: 75%; }
    .row .col.pull-s9 {
      right: 75%; }
    .row .col.push-s9 {
      left: 75%; }
    .row .col.offset-s10 {
      margin-left: 83.33333%; }
    .row .col.pull-s10 {
      right: 83.33333%; }
    .row .col.push-s10 {
      left: 83.33333%; }
    .row .col.offset-s11 {
      margin-left: 91.66667%; }
    .row .col.pull-s11 {
      right: 91.66667%; }
    .row .col.push-s11 {
      left: 91.66667%; }
    .row .col.offset-s12 {
      margin-left: 100%; }
    .row .col.pull-s12 {
      right: 100%; }
    .row .col.push-s12 {
      left: 100%; }
    @media only screen and (min-width: 601px) {
      .row .col.m1 {
        width: 8.33333%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.m2 {
        width: 16.66667%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.m3 {
        width: 25%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.m4 {
        width: 33.33333%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.m5 {
        width: 41.66667%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.m6 {
        width: 50%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.m7 {
        width: 58.33333%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.m8 {
        width: 66.66667%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.m9 {
        width: 75%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.m10 {
        width: 83.33333%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.m11 {
        width: 91.66667%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.m12 {
        width: 100%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.offset-m1 {
        margin-left: 8.33333%; }
      .row .col.pull-m1 {
        right: 8.33333%; }
      .row .col.push-m1 {
        left: 8.33333%; }
      .row .col.offset-m2 {
        margin-left: 16.66667%; }
      .row .col.pull-m2 {
        right: 16.66667%; }
      .row .col.push-m2 {
        left: 16.66667%; }
      .row .col.offset-m3 {
        margin-left: 25%; }
      .row .col.pull-m3 {
        right: 25%; }
      .row .col.push-m3 {
        left: 25%; }
      .row .col.offset-m4 {
        margin-left: 33.33333%; }
      .row .col.pull-m4 {
        right: 33.33333%; }
      .row .col.push-m4 {
        left: 33.33333%; }
      .row .col.offset-m5 {
        margin-left: 41.66667%; }
      .row .col.pull-m5 {
        right: 41.66667%; }
      .row .col.push-m5 {
        left: 41.66667%; }
      .row .col.offset-m6 {
        margin-left: 50%; }
      .row .col.pull-m6 {
        right: 50%; }
      .row .col.push-m6 {
        left: 50%; }
      .row .col.offset-m7 {
        margin-left: 58.33333%; }
      .row .col.pull-m7 {
        right: 58.33333%; }
      .row .col.push-m7 {
        left: 58.33333%; }
      .row .col.offset-m8 {
        margin-left: 66.66667%; }
      .row .col.pull-m8 {
        right: 66.66667%; }
      .row .col.push-m8 {
        left: 66.66667%; }
      .row .col.offset-m9 {
        margin-left: 75%; }
      .row .col.pull-m9 {
        right: 75%; }
      .row .col.push-m9 {
        left: 75%; }
      .row .col.offset-m10 {
        margin-left: 83.33333%; }
      .row .col.pull-m10 {
        right: 83.33333%; }
      .row .col.push-m10 {
        left: 83.33333%; }
      .row .col.offset-m11 {
        margin-left: 91.66667%; }
      .row .col.pull-m11 {
        right: 91.66667%; }
      .row .col.push-m11 {
        left: 91.66667%; }
      .row .col.offset-m12 {
        margin-left: 100%; }
      .row .col.pull-m12 {
        right: 100%; }
      .row .col.push-m12 {
        left: 100%; } }
    @media only screen and (min-width: 993px) {
      .row .col.l1 {
        width: 8.33333%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.l2 {
        width: 16.66667%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.l3 {
        width: 25%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.l4 {
        width: 33.33333%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.l5 {
        width: 41.66667%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.l6 {
        width: 50%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.l7 {
        width: 58.33333%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.l8 {
        width: 66.66667%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.l9 {
        width: 75%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.l10 {
        width: 83.33333%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.l11 {
        width: 91.66667%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.l12 {
        width: 100%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.offset-l1 {
        margin-left: 8.33333%; }
      .row .col.pull-l1 {
        right: 8.33333%; }
      .row .col.push-l1 {
        left: 8.33333%; }
      .row .col.offset-l2 {
        margin-left: 16.66667%; }
      .row .col.pull-l2 {
        right: 16.66667%; }
      .row .col.push-l2 {
        left: 16.66667%; }
      .row .col.offset-l3 {
        margin-left: 25%; }
      .row .col.pull-l3 {
        right: 25%; }
      .row .col.push-l3 {
        left: 25%; }
      .row .col.offset-l4 {
        margin-left: 33.33333%; }
      .row .col.pull-l4 {
        right: 33.33333%; }
      .row .col.push-l4 {
        left: 33.33333%; }
      .row .col.offset-l5 {
        margin-left: 41.66667%; }
      .row .col.pull-l5 {
        right: 41.66667%; }
      .row .col.push-l5 {
        left: 41.66667%; }
      .row .col.offset-l6 {
        margin-left: 50%; }
      .row .col.pull-l6 {
        right: 50%; }
      .row .col.push-l6 {
        left: 50%; }
      .row .col.offset-l7 {
        margin-left: 58.33333%; }
      .row .col.pull-l7 {
        right: 58.33333%; }
      .row .col.push-l7 {
        left: 58.33333%; }
      .row .col.offset-l8 {
        margin-left: 66.66667%; }
      .row .col.pull-l8 {
        right: 66.66667%; }
      .row .col.push-l8 {
        left: 66.66667%; }
      .row .col.offset-l9 {
        margin-left: 75%; }
      .row .col.pull-l9 {
        right: 75%; }
      .row .col.push-l9 {
        left: 75%; }
      .row .col.offset-l10 {
        margin-left: 83.33333%; }
      .row .col.pull-l10 {
        right: 83.33333%; }
      .row .col.push-l10 {
        left: 83.33333%; }
      .row .col.offset-l11 {
        margin-left: 91.66667%; }
      .row .col.pull-l11 {
        right: 91.66667%; }
      .row .col.push-l11 {
        left: 91.66667%; }
      .row .col.offset-l12 {
        margin-left: 100%; }
      .row .col.pull-l12 {
        right: 100%; }
      .row .col.push-l12 {
        left: 100%; } }
    @media only screen and (min-width: 1381px) {
      .row .col.xl1 {
        width: 8.33333%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.xl2 {
        width: 16.66667%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.xl3 {
        width: 25%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.xl4 {
        width: 33.33333%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.xl5 {
        width: 41.66667%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.xl6 {
        width: 50%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.xl7 {
        width: 58.33333%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.xl8 {
        width: 66.66667%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.xl9 {
        width: 75%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.xl10 {
        width: 83.33333%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.xl11 {
        width: 91.66667%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.xl12 {
        width: 100%;
        margin-left: auto;
        left: auto;
        right: auto; }
      .row .col.offset-xl1 {
        margin-left: 8.33333%; }
      .row .col.pull-xl1 {
        right: 8.33333%; }
      .row .col.push-xl1 {
        left: 8.33333%; }
      .row .col.offset-xl2 {
        margin-left: 16.66667%; }
      .row .col.pull-xl2 {
        right: 16.66667%; }
      .row .col.push-xl2 {
        left: 16.66667%; }
      .row .col.offset-xl3 {
        margin-left: 25%; }
      .row .col.pull-xl3 {
        right: 25%; }
      .row .col.push-xl3 {
        left: 25%; }
      .row .col.offset-xl4 {
        margin-left: 33.33333%; }
      .row .col.pull-xl4 {
        right: 33.33333%; }
      .row .col.push-xl4 {
        left: 33.33333%; }
      .row .col.offset-xl5 {
        margin-left: 41.66667%; }
      .row .col.pull-xl5 {
        right: 41.66667%; }
      .row .col.push-xl5 {
        left: 41.66667%; }
      .row .col.offset-xl6 {
        margin-left: 50%; }
      .row .col.pull-xl6 {
        right: 50%; }
      .row .col.push-xl6 {
        left: 50%; }
      .row .col.offset-xl7 {
        margin-left: 58.33333%; }
      .row .col.pull-xl7 {
        right: 58.33333%; }
      .row .col.push-xl7 {
        left: 58.33333%; }
      .row .col.offset-xl8 {
        margin-left: 66.66667%; }
      .row .col.pull-xl8 {
        right: 66.66667%; }
      .row .col.push-xl8 {
        left: 66.66667%; }
      .row .col.offset-xl9 {
        margin-left: 75%; }
      .row .col.pull-xl9 {
        right: 75%; }
      .row .col.push-xl9 {
        left: 75%; }
      .row .col.offset-xl10 {
        margin-left: 83.33333%; }
      .row .col.pull-xl10 {
        right: 83.33333%; }
      .row .col.push-xl10 {
        left: 83.33333%; }
      .row .col.offset-xl11 {
        margin-left: 91.66667%; }
      .row .col.pull-xl11 {
        right: 91.66667%; }
      .row .col.push-xl11 {
        left: 91.66667%; }
      .row .col.offset-xl12 {
        margin-left: 100%; }
      .row .col.pull-xl12 {
        right: 100%; }
      .row .col.push-xl12 {
        left: 100%; } }

/* Container for parallax hero image */
.parallax-container {
  position: relative;
  overflow: hidden;
  height: 500px; }
  .parallax-container .parallax {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    width: 100%; }
    .parallax-container .parallax img {
      opacity: 0;
      position: absolute;
      left: 50%;
      bottom: 0;
      min-width: 100%;
      min-height: 100%;
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0);
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%); }

.nf-parallax {
  -webkit-box-shadow: inset 0 -4px 15px rgba(0, 0, 0, 0.3);
          box-shadow: inset 0 -4px 15px rgba(0, 0, 0, 0.3); }

.nf-home .nf-parallax .container {
  overflow: visible; }

.nf-parallax.parallax-container {
  width: 100%;
  height: 660px;
  padding-top: 4.5rem;
  /* Height of navigation and usps */ }

.parallax-container .section {
  z-index: 1;
  padding: 0; }

.nf-sub-image.parallax-container:before {
  content: none; }

/* Alterations to accommodate home page search */
.nf-home .nf-parallax.parallax-container {
  padding-top: 0;
  height: 660px; }

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -ms-touch-action: manipulation;
  touch-action: manipulation; }

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

ul:not(.browser-default), ol:not(.browser-default) {
  padding-left: 0;
  list-style-type: none; }
  ul:not(.browser-default) &gt; li, ol:not(.browser-default) &gt; li {
    list-style-type: none; }

a {
  color: #217FA8;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent; }
  a:hover {
    color: #1A6788; }
  a:active {
    color: #283E5A; }

.valign-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.clearfix {
  clear: both; }

.z-depth-0 {
  -webkit-box-shadow: none !important;
          box-shadow: none !important; }

.z-depth-1, nav, .btn-floating, .collapsible, .sidenav {
  -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2); }

.z-depth-1-half, .btn-floating:hover {
  -webkit-box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
          box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2); }

.z-depth-2 {
  -webkit-box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
          box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3); }

.z-depth-3 {
  -webkit-box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.3);
          box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.3); }

.z-depth-4, .modal {
  -webkit-box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.3);
          box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.3); }

.z-depth-5 {
  -webkit-box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.3);
          box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.3); }

.hoverable {
  -webkit-transition: -webkit-box-shadow .25s;
  transition: -webkit-box-shadow .25s;
  transition: box-shadow .25s;
  transition: box-shadow .25s, -webkit-box-shadow .25s; }
  .hoverable:hover {
    -webkit-box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
            box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); }

.divider {
  height: 1px;
  overflow: hidden;
  background-color: #EEEEEE;
  margin-bottom: 16px; }

blockquote {
  margin: 20px 0;
  padding-left: 1.5rem;
  border-left: 5px solid #217FA8; }

i {
  line-height: inherit; }
  i.left {
    float: left;
    margin-right: 15px; }
  i.right {
    float: right;
    margin-left: 15px; }
  i.tiny {
    font-size: 1rem; }
  i.small {
    font-size: 2rem; }
  i.medium {
    font-size: 4rem; }
  i.large {
    font-size: 6rem; }

img.responsive-img,
video.responsive-video {
  max-width: 100%;
  height: auto; }

.pagination li {
  display: inline-block;
  border-radius: 2px;
  text-align: center;
  vertical-align: top;
  height: 2.25rem;
  -webkit-box-shadow: inset 0px -2px 0 rgba(0, 0, 0, 0.2);
          box-shadow: inset 0px -2px 0 rgba(0, 0, 0, 0.2);
  background-color: #2dace3;
  margin: 0 0.25rem;
  width: 2.25rem;
  position: relative; }
  .pagination li a {
    color: #FFFFFF;
    display: block;
    font-size: 1rem;
    line-height: 2.25rem; }
  .pagination li.active {
    background-color: #FFFFFF; }
  .pagination li.active a {
    color: #CFCFCF; }
  .pagination li.disabled a {
    cursor: default;
    color: #999; }
  .pagination li i {
    font-size: 2rem; }
  .pagination li:hover {
    background-color: #289ED1; }
  .pagination li.active:hover {
    background-color: inherit; }
  .pagination li:active {
    top: 0.0625rem;
    -webkit-box-shadow: inset 0px -1px 0 rgba(0, 0, 0, 0.2);
            box-shadow: inset 0px -1px 0 rgba(0, 0, 0, 0.2); }

.pagination li.pages ul li {
  display: inline-block;
  float: none; }

@media only screen and (max-width: 992px) {
  .pagination {
    width: 100%; }
    .pagination li.prev,
    .pagination li.next {
      width: 10%; }
    .pagination li.pages {
      width: 80%;
      overflow: hidden;
      white-space: nowrap; } }

.pin-top, .pin-bottom {
  position: relative; }

.pinned {
  position: fixed !important; }

/*********************
  Transition Classes
**********************/
ul.staggered-list li {
  opacity: 0; }

.fade-in {
  opacity: 0;
  -webkit-transform-origin: 0 50%;
          transform-origin: 0 50%; }

/*********************
  Media Query Classes
**********************/
@media only screen and (max-width: 600px) {
  .hide-on-small-only, .hide-on-small-and-down {
    display: none !important; } }

@media only screen and (max-width: 992px) {
  .hide-on-med-and-down {
    display: none !important; } }

@media only screen and (min-width: 601px) {
  .hide-on-med-and-up {
    display: none !important; } }

@media only screen and (min-width: 600px) and (max-width: 992px) {
  .hide-on-med-only {
    display: none !important; } }

@media only screen and (min-width: 993px) {
  .hide-on-large-only {
    display: none !important; } }

@media only screen and (min-width: 993px) {
  .show-on-large {
    display: block !important; } }

@media only screen and (min-width: 600px) and (max-width: 992px) {
  .show-on-medium {
    display: block !important; } }

@media only screen and (max-width: 600px) {
  .show-on-small {
    display: block !important; } }

@media only screen and (min-width: 601px) {
  .show-on-medium-and-up {
    display: block !important; } }

@media only screen and (max-width: 992px) {
  .show-on-medium-and-down {
    display: block !important; } }

@media only screen and (max-width: 600px) {
  .center-on-small-only {
    text-align: center; } }

.page-footer {
  padding-top: 20px;
  color: #FFFFFF;
  background-color: #217FA8; }
  .page-footer .footer-copyright {
    overflow: hidden;
    min-height: 50px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 10px 0px;
    color: rgba(255, 255, 255, 0.8);
    background-color: rgba(51, 51, 51, 0.08); }

table, th, td {
  border: none; }

table {
  width: 100%;
  display: table; }
  table.bordered &gt; thead &gt; tr,
  table.bordered &gt; tbody &gt; tr {
    border-bottom: 1px solid #d0d0d0; }
  table.striped &gt; tbody &gt; tr:nth-child(odd) {
    background-color: #f2f2f2; }
  table.striped &gt; tbody &gt; tr &gt; td {
    border-radius: 0; }
  table.highlight &gt; tbody &gt; tr {
    -webkit-transition: background-color .25s ease;
    transition: background-color .25s ease; }
    table.highlight &gt; tbody &gt; tr:hover {
      background-color: #f2f2f2; }
  table.centered thead tr th, table.centered tbody tr td {
    text-align: center; }

thead {
  border-bottom: 1px solid #d0d0d0; }

td, th {
  padding: 15px 5px;
  display: table-cell;
  text-align: left;
  vertical-align: middle;
  border-radius: 2px; }

@media only screen and (max-width: 992px) {
  table.responsive-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    display: block;
    position: relative;
    /* sort out borders */ }
    table.responsive-table td:empty:before {
      content: '\00a0'; }
    table.responsive-table th,
    table.responsive-table td {
      margin: 0;
      vertical-align: top; }
    table.responsive-table th {
      text-align: left; }
    table.responsive-table thead {
      display: block;
      float: left; }
      table.responsive-table thead tr {
        display: block;
        padding: 0 10px 0 0; }
        table.responsive-table thead tr th::before {
          content: "\00a0"; }
    table.responsive-table tbody {
      display: block;
      width: auto;
      position: relative;
      overflow-x: auto;
      white-space: nowrap; }
      table.responsive-table tbody tr {
        display: inline-block;
        vertical-align: top; }
    table.responsive-table th {
      display: block;
      text-align: right; }
    table.responsive-table td {
      display: block;
      min-height: 1.25em;
      text-align: left; }
    table.responsive-table tr {
      padding: 0 10px; }
    table.responsive-table thead {
      border: 0;
      border-right: 1px solid #d0d0d0; }
    table.responsive-table.bordered th {
      border-bottom: 0;
      border-left: 0; }
    table.responsive-table.bordered td {
      border-left: 0;
      border-right: 0;
      border-bottom: 0; }
    table.responsive-table.bordered tr {
      border: 0; }
    table.responsive-table.bordered tbody tr {
      border-right: 1px solid #d0d0d0; } }

.collection {
  margin: 1rem 0 1rem 0;
  border: 1px solid #e0e0e0;
  border-radius: 2px;
  overflow: hidden;
  position: relative; }
  .collection .collection-item {
    background-color: #FFFFFF;
    line-height: 1.5rem;
    padding: 10px 20px;
    margin: 0;
    border-bottom: 1px solid #e0e0e0; }
    .collection .collection-item.avatar {
      min-height: 84px;
      padding-left: 72px;
      position: relative; }
      .collection .collection-item.avatar:not(.circle-clipper) &gt; .circle,
      .collection .collection-item.avatar :not(.circle-clipper) &gt; .circle {
        position: absolute;
        width: 42px;
        height: 42px;
        overflow: hidden;
        left: 15px;
        display: inline-block;
        vertical-align: middle; }
      .collection .collection-item.avatar i.circle {
        font-size: 18px;
        line-height: 42px;
        color: #FFFFFF;
        background-color: #999;
        text-align: center; }
      .collection .collection-item.avatar .title {
        font-size: 16px; }
      .collection .collection-item.avatar p {
        margin: 0; }
      .collection .collection-item.avatar .secondary-content {
        position: absolute;
        top: 16px;
        right: 16px; }
    .collection .collection-item:last-child {
      border-bottom: none; }
    .collection .collection-item.active {
      background-color: #478330;
      color: #e1f1da; }
      .collection .collection-item.active .secondary-content {
        color: #FFFFFF; }
  .collection a.collection-item {
    display: block;
    -webkit-transition: .25s;
    transition: .25s;
    color: #478330; }
    .collection a.collection-item:not(.active):hover {
      background-color: #ddd; }
  .collection.with-header .collection-header {
    background-color: #FFFFFF;
    border-bottom: 1px solid #e0e0e0;
    padding: 10px 20px; }
  .collection.with-header .collection-item {
    padding-left: 30px; }
  .collection.with-header .collection-item.avatar {
    padding-left: 72px; }

.secondary-content {
  float: right;
  color: #478330; }

.collapsible .collection {
  margin: 0;
  border: none; }

/*******************
  Utility Classes
*******************/
.hide {
  display: none !important; }

.left-align {
  text-align: left; }

.right-align {
  text-align: right; }

.center, .center-align {
  text-align: center; }

.left {
  float: left !important; }

.right {
  float: right !important; }

.no-select {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.circle {
  border-radius: 50%; }

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.truncate {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.no-padding {
  padding: 0 !important; }

nav {
  color: #FFFFFF;
  background-color: #289ED1;
  width: 100%;
  height: 56px;
  line-height: 56px; }
  nav.nav-extended {
    height: auto; }
    nav.nav-extended .nav-wrapper {
      min-height: 56px;
      height: auto; }
    nav.nav-extended .nav-content {
      position: relative;
      line-height: normal; }
  nav a {
    color: #FFFFFF; }
  nav .nav-wrapper {
    position: relative;
    height: 56px;
    line-height: 56px;
    padding: 0 1rem; }
  @media only screen and (min-width: 993px) {
    nav span.button-collapse {
      display: none; } }
  nav .button-collapse {
    float: left;
    position: relative;
    z-index: 1;
    height: 56px;
    margin: 0; }
    nav .button-collapse svg {
      vertical-align: middle;
      fill: #FFFFFF; }
  nav .nav-title {
    display: inline-block;
    font-size: 32px;
    padding: 28px 0; }
  nav ul {
    margin: 0; }
    nav ul li {
      -webkit-transition: background-color .3s;
      transition: background-color .3s;
      float: left;
      padding: 0; }
      nav ul li.active {
        background-color: rgba(0, 0, 0, 0.1); }
    nav ul a {
      -webkit-transition: background-color .3s;
      transition: background-color .3s;
      font-size: 0.9375rem;
      color: #FFFFFF;
      display: block;
      padding: 0 15px;
      cursor: pointer; }
      nav ul a.btn, nav ul a.btn-large, nav ul a.btn-large, nav ul a.btn-flat, nav ul a.btn-floating {
        margin-top: -2px;
        margin-left: 15px;
        margin-right: 15px; }
      nav ul a:hover {
        background-color: rgba(0, 0, 0, 0.1); }
    nav ul.left {
      float: left; }
  nav form {
    height: 100%; }
  nav .input-field {
    margin: 0;
    height: 100%; }
    nav .input-field input {
      height: 100%;
      font-size: 1.2rem;
      border: none;
      padding-left: 2rem; }
      nav .input-field input:focus, nav .input-field input[type=text]:valid, nav .input-field input[type=password]:valid, nav .input-field input[type=email]:valid, nav .input-field input[type=url]:valid, nav .input-field input[type=date]:valid {
        border: none;
        -webkit-box-shadow: none;
                box-shadow: none; }
    nav .input-field label {
      top: 0;
      left: 0; }
      nav .input-field label i {
        color: rgba(255, 255, 255, 0.7);
        -webkit-transition: color .3s;
        transition: color .3s; }
      nav .input-field label.active i {
        color: #FFFFFF; }

.navbar-fixed {
  /*position: relative; Conflicting with date picker popup */
  z-index: 998; }
  .navbar-fixed nav {
    position: fixed;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    z-index: 4; }

@media only screen and (min-width: 601px) {
  .button-collapse {
    display: none !important; }
  .navbar-fixed {
    height: 56px; }
  nav.nav-extended .nav-wrapper {
    min-height: 56px; }
  nav,
  nav .nav-wrapper i,
  nav span.button-collapse,
  nav span.button-collapse i {
    height: 56px;
    line-height: 56px; }
  .navbar-fixed {
    height: 0px; } }

.sidebar-container {
  border-top: 0 !important; }

.nf-breadcrumb-wrap {
  text-align: center;
  padding: 0 1rem; }

.nf-breadcrumb {
  margin-bottom: 0;
  padding: 0.625rem 0; }

.nf-breadcrumb ol {
  margin: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }

.nf-breadcrumb-item {
  padding-right: 0.75rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.nf-breadcrumb-item svg {
  fill: #2dace3;
  width: 1.5rem;
  height: 1.5rem;
  display: block;
  margin-right: 0.5rem; }

.nf-breadcrumb.Flight .nf-breadcrumb-item svg {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg); }

.nf-breadcrumb-item:after {
  content: "&gt;";
  color: #676767; }

.nf-breadcrumb-item:last-child:after {
  content: ""; }

.nf-breadcrumb-item a {
  display: inline-block;
  margin-right: 0.375rem;
  line-height: 1; }

.nf-breadcrumb-item span {
  font-size: 0.875rem; }

.nf-breadcrumb-item:last-child span {
  color: #676767;
  text-decoration: none; }

.card-panel {
  -webkit-transition: border .25s;
  transition: border .25s;
  padding: 16px;
  margin: 1rem 0 1rem 0;
  border-radius: 4px;
  background-color: #FFFFFF; }

.card {
  position: relative;
  margin: 0;
  background-color: #FFFFFF;
  -webkit-transition: -webkit-box-shadow .25s;
  transition: -webkit-box-shadow .25s;
  transition: box-shadow .25s;
  transition: box-shadow .25s, -webkit-box-shadow .25s;
  border-radius: 4px;
  border-bottom: 2px solid #dcdcdc;
  /* Refactor */ }
  .card .card-title {
    font-size: 20px;
    font-weight: 300; }
    .card .card-title.activator {
      cursor: pointer; }
  .card.small, .card.medium, .card.large {
    position: relative; }
    .card.small .card-image, .card.medium .card-image, .card.large .card-image {
      max-height: 50%;
      overflow: hidden;
      height: 120px; }
    .card.small .card-image-large, .card.medium .card-image-large, .card.large .card-image-large {
      height: 180px; }
    .card.small .card-image + .card-content, .card.medium .card-image + .card-content, .card.large .card-image + .card-content {
      position: relative;
      max-height: 50%; }
    .card.small .card-content, .card.medium .card-content, .card.large .card-content {
      max-height: 100%;
      overflow: hidden; }
    .card.small .card-action, .card.medium .card-action, .card.large .card-action {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0; }
  .card.small {
    height: 282px; }
  .card.medium {
    height: 400px; }
  .card.large {
    height: 500px; }
  .card.horizontal {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .card.horizontal.small .card-image, .card.horizontal.medium .card-image, .card.horizontal.large .card-image {
      height: 100%;
      max-height: none;
      overflow: visible; }
      .card.horizontal.small .card-image img, .card.horizontal.medium .card-image img, .card.horizontal.large .card-image img {
        height: 100%; }
    .card.horizontal .card-image {
      max-width: 50%; }
      .card.horizontal .card-image img {
        border-radius: 4px 0 0 4px;
        max-width: 100%;
        width: auto; }
    .card.horizontal .card-stacked {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-flex: 1;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
      position: relative; }
      .card.horizontal .card-stacked .card-content {
        -webkit-box-flex: 1;
        -webkit-flex-grow: 1;
            -ms-flex-positive: 1;
                flex-grow: 1; }
  .card.sticky-action .card-action {
    z-index: 2; }
  .card.sticky-action .card-reveal {
    z-index: 1;
    padding-bottom: 64px; }
  .card .card-image {
    position: relative; }
    .card .card-image img {
      display: block;
      position: relative;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0;
      width: 100%;
      -webkit-transform: translateZ(0);
              transform: translateZ(0); }
    .card .card-image .card-title {
      color: #FFFFFF;
      position: absolute;
      bottom: 0;
      left: 0;
      max-width: 100%;
      padding: 16px; }
  .card .card-content {
    padding: 16px;
    border-radius: 0 0 4px 4px; }
    .card .card-content p {
      /*color: inherit;*/ }
    .card .card-content .card-title {
      display: block;
      line-height: 16px;
      margin-bottom: 16px;
      margin-top: 4px;
      font-size: 1rem; }
      .card .card-content .card-title i {
        line-height: 32px; }
  .card .card-action {
    position: relative;
    background-color: inherit;
    border-top: 1px solid rgba(160, 160, 160, 0.2);
    padding: 16px 16px; }
    .card .card-action:last-child {
      border-radius: 0 0 4px 4px; }
    .card .card-action a:not(.btn):not(.btn-large):not(.btn-large):not(.btn-floating) {
      color: #ffab40;
      margin-right: 16px;
      -webkit-transition: color .3s ease;
      transition: color .3s ease;
      text-transform: uppercase; }
      .card .card-action a:not(.btn):not(.btn-large):not(.btn-large):not(.btn-floating):hover {
        color: #ffd8a6; }
  .card .card-reveal {
    padding: 16px;
    position: absolute;
    background-color: #FFFFFF;
    width: 100%;
    overflow-y: auto;
    left: 0;
    top: 100%;
    height: 100%;
    z-index: 3;
    display: none; }
    .card .card-reveal .card-title {
      cursor: pointer;
      display: block; }

.info-card {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around; }
  .info-card .card {
    max-width: 208px; }

@media only screen and (max-width: 600px) {
  .card.small .card-image-large, .card.medium .card-image-large, .card.large .card-image-large {
    height: 170px; } }

.tabs {
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  height: 56px;
  width: 100%;
  background-color: #FFFFFF;
  margin: 0 auto;
  white-space: nowrap; }
  .tabs.tabs-transparent {
    background-color: transparent; }
    .tabs.tabs-transparent .tab a,
    .tabs.tabs-transparent .tab.disabled a,
    .tabs.tabs-transparent .tab.disabled a:hover {
      color: white; }
    .tabs.tabs-transparent .tab a:hover,
    .tabs.tabs-transparent .tab a.active {
      color: #FFFFFF; }
    .tabs.tabs-transparent .indicator {
      background-color: #FFFFFF; }
  .tabs.tabs-fixed-width {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .tabs.tabs-fixed-width .tab {
      -webkit-box-flex: 1;
      -webkit-flex-grow: 1;
          -ms-flex-positive: 1;
              flex-grow: 1; }
  .tabs .tab {
    text-align: center;
    line-height: 56px;
    height: 56px;
    padding: 0;
    margin: 0;
    text-transform: uppercase; }
    .tabs .tab a {
      color: #217fa8;
      width: 100%;
      height: 100%;
      padding: 0 24px;
      font-size: 14px;
      text-overflow: ellipsis;
      overflow: hidden;
      -webkit-transition: color .28s ease;
      transition: color .28s ease; }
      .tabs .tab a:hover, .tabs .tab a.active {
        background-color: transparent;
        color: #217FA8; }
    .tabs .tab.disabled a,
    .tabs .tab.disabled a:hover {
      color: #217fa8;
      cursor: default; }
  .tabs .indicator {
    position: absolute;
    bottom: 0;
    height: 2px;
    background-color: #217FA8;
    will-change: left, right; }

@media only screen and (max-width: 992px) {
  .tabs {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .tabs .tab {
      -webkit-box-flex: 1;
      -webkit-flex-grow: 1;
          -ms-flex-positive: 1;
              flex-grow: 1; }
      .tabs .tab a {
        padding: 0 12px; } }

.btn, .btn-large,
.btn-flat {
  border: none;
  border-radius: 3px;
  display: inline-block;
  height: 36px;
  line-height: 36px;
  padding: 0 1rem;
  vertical-align: middle;
  -webkit-tap-highlight-color: transparent; }

.btn.disabled, .disabled.btn-large,
.btn-floating.disabled,
.btn-large.disabled,
.btn-flat.disabled,
.btn:disabled,
.btn-large:disabled,
.btn-floating:disabled,
.btn-large:disabled,
.btn-flat:disabled,
.btn[disabled],
[disabled].btn-large,
.btn-floating[disabled],
.btn-large[disabled],
.btn-flat[disabled] {
  pointer-events: none;
  border: 2px solid #CFCFCF !important;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #CFCFCF !important;
  cursor: default; }
  .btn.disabled:hover, .disabled.btn-large:hover,
  .btn-floating.disabled:hover,
  .btn-large.disabled:hover,
  .btn-flat.disabled:hover,
  .btn:disabled:hover,
  .btn-large:disabled:hover,
  .btn-floating:disabled:hover,
  .btn-large:disabled:hover,
  .btn-flat:disabled:hover,
  .btn[disabled]:hover,
  [disabled].btn-large:hover,
  .btn-floating[disabled]:hover,
  .btn-large[disabled]:hover,
  .btn-flat[disabled]:hover {
    background-color: #d4d4d4 !important;
    color: #FFFFFF !important; }

.btn, .btn-large,
.btn-floating,
.btn-large,
.btn-flat {
  font-size: 0.875rem;
  outline: 0; }
  .btn i, .btn-large i,
  .btn-floating i,
  .btn-large i,
  .btn-flat i {
    font-size: 1rem;
    line-height: inherit; }

.btn:focus, .btn-large:focus,
.btn-floating:focus {
  background-color: #508c38; }

.btn, .btn-large {
  position: relative;
  top: 0;
  text-decoration: none;
  color: #FFFFFF;
  background-color: #478330;
  text-align: center;
  cursor: pointer;
  font-weight: normal;
  /*border-bottom:2px solid $button-raised-drop-shadow; Made all buttons flat as per branded fares design */ }
  .btn:hover, .btn-large:hover {
    background-color: #3E7229;
    color: #FFFFFF; }
  .btn:active, .btn-large:active {
    background-color: #356123;
    color: #FFFFFF;
    /*border-bottom:1px solid darken($button-raised-drop-shadow, 5%); Made all buttons flat as per branded fares design */ }
  .btn:focus, .btn-large:focus {
    background-color: #356123;
    color: #FFFFFF; }

.btn.btn-secondary, .btn-secondary.btn-large {
  border-radius: 4px;
  border: 2px solid #217FA8;
  background: #FFFFFF;
  color: #217FA8;
  font-weight: 800;
  line-height: 30px;
  /*border-bottom:2px solid $button-raised-secondary-drop-shadow; Made all buttons flat as per branded fares design */ }
  .btn.btn-secondary a, .btn-secondary.btn-large a {
    color: #217FA8 !important; }
  .btn.btn-secondary:hover, .btn-secondary.btn-large:hover {
    background: #EAF7FC; }
  .btn.btn-secondary:active, .btn-secondary.btn-large:active {
    top: 1px;
    background: #217FA8 !important;
    color: #FFFFFF;
    /*border-bottom: 1px solid darken($button-raised-secondary-drop-shadow, 5%); Made all buttons flat as per branded fares design */ }
    .btn.btn-secondary:active a, .btn-secondary.btn-large:active a {
      color: #FFFFFF !important; }
  .btn.btn-secondary:focus, .btn-secondary.btn-large:focus {
    background: #EAF7FC; }

.btn.btn-tertiary, .btn-tertiary.btn-large {
  border-radius: 4px;
  background: #FFFFFF;
  color: #217FA8;
  line-height: 30px;
  border: 2px solid transparent; }
  .btn.btn-tertiary:hover, .btn-tertiary.btn-large:hover {
    color: #1A6788; }
  .btn.btn-tertiary:active, .btn-tertiary.btn-large:active {
    color: #283E5A; }
  .btn.btn-tertiary:focus, .btn-tertiary.btn-large:focus {
    border-radius: 4px;
    border: 2px solid #217FA8;
    background: var(--Hover-btn-background-hover, rgba(255, 255, 255, 0)); }
  .btn.btn-tertiary.disabled, .btn-tertiary.disabled.btn-large {
    border-radius: 4px;
    border: 2px solid var(--Disabled-btn-stroke-disabled, rgba(255, 255, 255, 0));
    background: var(--Disabled-btn-background-disabled, rgba(255, 255, 255, 0)); }

.btn-floating {
  display: inline-block;
  color: #FFFFFF;
  position: relative;
  overflow: hidden;
  z-index: 1;
  width: 40px;
  height: 40px;
  line-height: 40px;
  padding: 0;
  background-color: #478330;
  border-radius: 50%;
  -webkit-transition: .3s;
  transition: .3s;
  cursor: pointer;
  vertical-align: middle; }
  .btn-floating:hover {
    background-color: #478330; }
  .btn-floating:before {
    border-radius: 0; }
  .btn-floating.btn-large {
    width: 56px;
    height: 56px; }
    .btn-floating.btn-large.halfway-fab {
      bottom: -28px; }
    .btn-floating.btn-large i {
      line-height: 56px; }
  .btn-floating.halfway-fab {
    position: absolute;
    right: 24px;
    bottom: -20px; }
    .btn-floating.halfway-fab.left {
      right: auto;
      left: 24px; }
  .btn-floating i {
    width: inherit;
    display: inline-block;
    text-align: center;
    color: #FFFFFF;
    font-size: 1.6rem;
    line-height: 40px; }

button.btn-floating {
  border: none; }

.fixed-action-btn {
  position: fixed;
  right: 23px;
  bottom: 23px;
  padding-top: 15px;
  margin-bottom: 0;
  z-index: 997; }
  .fixed-action-btn.active ul {
    visibility: visible; }
  .fixed-action-btn.horizontal {
    padding: 0 0 0 15px; }
    .fixed-action-btn.horizontal ul {
      text-align: right;
      right: 64px;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      height: 100%;
      left: auto;
      width: 500px;
      /*width 100% only goes to width of button container */ }
      .fixed-action-btn.horizontal ul li {
        display: inline-block;
        margin: 15px 15px 0 0; }
  .fixed-action-btn.toolbar {
    padding: 0;
    height: 56px; }
    .fixed-action-btn.toolbar.active &gt; a i {
      opacity: 0; }
    .fixed-action-btn.toolbar ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      top: 0;
      bottom: 0;
      z-index: 1; }
      .fixed-action-btn.toolbar ul li {
        -webkit-box-flex: 1;
        -webkit-flex: 1;
            -ms-flex: 1;
                flex: 1;
        display: inline-block;
        margin: 0;
        height: 100%;
        -webkit-transition: none;
        transition: none; }
        .fixed-action-btn.toolbar ul li a {
          display: block;
          overflow: hidden;
          position: relative;
          width: 100%;
          height: 100%;
          background-color: transparent;
          -webkit-box-shadow: none;
                  box-shadow: none;
          color: #FFFFFF;
          line-height: 56px;
          z-index: 1; }
          .fixed-action-btn.toolbar ul li a i {
            line-height: inherit; }
  .fixed-action-btn ul {
    left: 0;
    right: 0;
    text-align: center;
    position: absolute;
    bottom: 64px;
    margin: 0;
    visibility: hidden; }
    .fixed-action-btn ul li {
      margin-bottom: 15px; }
    .fixed-action-btn ul a.btn-floating {
      opacity: 0; }
  .fixed-action-btn .fab-backdrop {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 40px;
    height: 40px;
    background-color: #478330;
    border-radius: 50%;
    -webkit-transform: scale(0);
            transform: scale(0); }

.btn-flat {
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: transparent;
  color: #343434;
  cursor: pointer;
  -webkit-transition: background-color .2s;
  transition: background-color .2s; }
  .btn-flat:focus, .btn-flat:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: transparent; }
  .btn-flat:focus {
    background-color: rgba(0, 0, 0, 0.1); }
  .btn-flat.disabled {
    background-color: transparent !important;
    color: #b3b3b3 !important;
    cursor: default; }

.btn-large {
  height: 54px;
  line-height: 54px; }
  .btn-large i {
    font-size: 1.6rem; }

.btn-block {
  display: block;
  width: 100%; }

.btn.override, .override.btn-large {
  padding: 0rem; }

.modal {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  background-color: #fafafa;
  padding: 0;
  max-height: 70%;
  width: 55%;
  margin: auto;
  overflow-y: auto;
  border-radius: 2px;
  will-change: top, opacity; }
  @media only screen and (max-width: 992px) {
    .modal {
      width: 80%; } }
  .modal h1, .modal h2, .modal h3, .modal h4 {
    margin-top: 0; }
  .modal .modal-content {
    padding: 24px; }
  .modal .modal-close {
    cursor: pointer; }
  .modal .modal-footer {
    border-radius: 0 0 2px 2px;
    background-color: #fafafa;
    padding: 4px 6px;
    height: 56px;
    width: 100%;
    text-align: right; }
    .modal .modal-footer .btn, .modal .modal-footer .btn-large, .modal .modal-footer .btn-flat {
      margin: 6px 0; }

.modal-overlay {
  position: fixed;
  z-index: 999;
  top: -25%;
  left: 0;
  bottom: 0;
  right: 0;
  height: 125%;
  width: 100%;
  background: #000000;
  display: none;
  will-change: opacity; }

.modal.modal-fixed-footer {
  padding: 0;
  height: 70%; }
  .modal.modal-fixed-footer .modal-content {
    position: absolute;
    height: calc(100% - 56px);
    max-height: 100%;
    width: 100%;
    overflow-y: auto; }
  .modal.modal-fixed-footer .modal-footer {
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    position: absolute;
    bottom: 0; }

.modal.bottom-sheet {
  top: auto;
  bottom: -100%;
  margin: 0;
  width: 100%;
  max-height: 45%;
  border-radius: 0;
  will-change: bottom, opacity; }

.collapsible {
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd;
  border-left: 1px solid #ddd;
  margin: 1rem 0 1rem 0; }

.collapsible-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  line-height: 1.5;
  padding: 1rem;
  background-color: #FFFFFF;
  border-bottom: 1px solid #ddd; }
  .collapsible-header i {
    width: 2rem;
    font-size: 1.6rem;
    display: inline-block;
    text-align: center;
    margin-right: 1rem; }

.collapsible-body {
  display: none;
  border-bottom: 1px solid #ddd;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 2rem; }

.sidenav .collapsible,
.sidenav.fixed .collapsible {
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .sidenav .collapsible li,
  .sidenav.fixed .collapsible li {
    padding: 0; }

.sidenav .collapsible-header,
.sidenav.fixed .collapsible-header {
  background-color: transparent;
  border: none;
  line-height: inherit;
  height: inherit;
  padding: 0 16px; }
  .sidenav .collapsible-header:hover,
  .sidenav.fixed .collapsible-header:hover {
    background-color: rgba(0, 0, 0, 0.05); }
  .sidenav .collapsible-header i,
  .sidenav.fixed .collapsible-header i {
    line-height: inherit; }

.sidenav .collapsible-body,
.sidenav.fixed .collapsible-body {
  border: 0;
  background-color: #FFFFFF; }
  .sidenav .collapsible-body li a,
  .sidenav.fixed .collapsible-body li a {
    padding: 0 23.5px 0 31px; }

.collapsible.popout {
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .collapsible.popout &gt; li {
    -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
            box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
    margin: 0 24px;
    -webkit-transition: margin 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: margin 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
  .collapsible.popout &gt; li.active {
    -webkit-box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
    margin: 16px 0; }

.sidenav {
  position: fixed;
  width: 300px;
  left: 0;
  top: 0;
  margin: 0;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  height: 100%;
  height: calc(100% + 60px);
  height: -moz-calc(100%);
  padding-bottom: 60px;
  background-color: #454545;
  z-index: 999;
  overflow-y: auto;
  will-change: transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translateX(-105%);
          transform: translateX(-105%); }
  .sidenav.right-aligned {
    right: 0;
    -webkit-transform: translateX(105%);
            transform: translateX(105%);
    left: auto;
    -webkit-transform: translateX(100%);
            transform: translateX(100%); }
  .sidenav .collapsible {
    margin: 0; }
  .sidenav li {
    float: none;
    line-height: 48px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding-left: 2rem; }
    .sidenav li.close-menu {
      -webkit-box-pack: end;
      -webkit-justify-content: flex-end;
          -ms-flex-pack: end;
              justify-content: flex-end; }
      .sidenav li.close-menu .sidenav-close svg {
        margin-right: 0.5rem; }
    .sidenav li.active {
      background-color: rgba(0, 0, 0, 0.05); }
  .sidenav li &gt; a {
    color: #EEEEEE;
    fill: #EEEEEE;
    display: block;
    font-size: 14px;
    height: 48px;
    line-height: 48px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 0.5rem; }
    .sidenav li &gt; a svg {
      margin-right: 0.5rem; }
    .sidenav li &gt; a svg:last-of-type {
      margin-right: 1.5rem; }
    .sidenav li &gt; a:hover {
      background-color: rgba(0, 0, 0, 0.05); }
    .sidenav li &gt; a.btn, .sidenav li &gt; a.btn-large, .sidenav li &gt; a.btn-large, .sidenav li &gt; a.btn-flat, .sidenav li &gt; a.btn-floating {
      margin: 10px 15px; }
    .sidenav li &gt; a.btn, .sidenav li &gt; a.btn-large, .sidenav li &gt; a.btn-large, .sidenav li &gt; a.btn-floating {
      color: #FFFFFF; }
    .sidenav li &gt; a.btn-flat {
      color: #343434; }
    .sidenav li &gt; a.btn:hover, .sidenav li &gt; a.btn-large:hover, .sidenav li &gt; a.btn-large:hover {
      background-color: #73bc55; }
    .sidenav li &gt; a.btn-floating:hover {
      background-color: #65b146; }
    .sidenav li &gt; a &gt; i,
    .sidenav li &gt; a &gt; [class^="mdi-"], .sidenav li &gt; a li &gt; a &gt; [class*="mdi-"] {
      float: left;
      height: 48px;
      line-height: 48px;
      margin: 0 32px 0 0;
      width: 24px;
      color: rgba(0, 0, 0, 0.54); }
  .sidenav .divider {
    margin: 8px 0 0 0; }
  .sidenav .subheader {
    cursor: initial;
    pointer-events: none;
    color: rgba(0, 0, 0, 0.54);
    font-size: 14px;
    font-weight: 500;
    line-height: 48px; }
    .sidenav .subheader:hover {
      background-color: transparent; }
  .sidenav .user-view {
    position: relative;
    padding: 32px 32px 0;
    margin-bottom: 8px; }
    .sidenav .user-view &gt; a {
      height: auto;
      padding: 0; }
      .sidenav .user-view &gt; a:hover {
        background-color: transparent; }
    .sidenav .user-view .background {
      overflow: hidden;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: -1; }
    .sidenav .user-view .circle, .sidenav .user-view .name, .sidenav .user-view .email {
      display: block; }
    .sidenav .user-view .circle {
      height: 64px;
      width: 64px; }
    .sidenav .user-view .name,
    .sidenav .user-view .email {
      font-size: 14px;
      line-height: 24px; }
    .sidenav .user-view .name {
      margin-top: 16px;
      font-weight: 500; }
    .sidenav .user-view .email {
      padding-bottom: 16px;
      font-weight: 400; }

.drag-target {
  height: 100%;
  width: 10px;
  position: fixed;
  top: 0;
  z-index: 998; }
  .drag-target.right-aligned {
    right: 0; }

.sidenav.sidenav-fixed {
  left: 0;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  position: fixed; }
  .sidenav.sidenav-fixed.right-aligned {
    right: 0;
    left: auto; }

/* Bug Fix - Side Nav Overlay Layering */
#sidenav-overlay {
  z-index: 3; }

@media only screen and (max-width: 992px) {
  .sidenav.sidenav-fixed {
    -webkit-transform: translateX(-105%);
            transform: translateX(-105%); }
    .sidenav.sidenav-fixed.right-aligned {
      -webkit-transform: translateX(105%);
              transform: translateX(105%); }
  .sidenav &gt; a {
    padding: 0 16px; }
  .sidenav .user-view {
    padding: 16px 16px 0; } }

.sidenav .collapsible-body &gt; ul:not(.collapsible) &gt; li.active,
.sidenav.sidenav-fixed .collapsible-body &gt; ul:not(.collapsible) &gt; li.active {
  background-color: #217FA8; }
  .sidenav .collapsible-body &gt; ul:not(.collapsible) &gt; li.active a,
  .sidenav.sidenav-fixed .collapsible-body &gt; ul:not(.collapsible) &gt; li.active a {
    color: #454545; }

.sidenav .collapsible-body {
  padding: 0; }

.sidenav-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  opacity: 0;
  height: 120vh;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 997;
  display: none; }

/* Mobile Sidebar */
.nf-mobile-nav {
  width: 250px; }

/*
    @license
    Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
    This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
    The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
    The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
    Code distributed by Google as part of the polymer project is also
    subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
 */
/**************************/
/* STYLES FOR THE SPINNER */
/**************************/
/*
 * Constants:
 *      STROKEWIDTH = 3px
 *      ARCSIZE     = 270 degrees (amount of circle the arc takes up)
 *      ARCTIME     = 1333ms (time it takes to expand and contract arc)
 *      ARCSTARTROT = 216 degrees (how much the start location of the arc
 *                                should rotate each time, 216 gives us a
 *                                5 pointed star shape (it's 360/5 * 3).
 *                                For a 7 pointed star, we might do
 *                                360/7 * 3 = 154.286)
 *      CONTAINERWIDTH = 28px
 *      SHRINK_TIME = 400ms
 */
.preloader-wrapper {
  display: inline-block;
  position: relative;
  width: 50px;
  height: 50px; }
  .preloader-wrapper.small {
    width: 36px;
    height: 36px; }
  .preloader-wrapper.big {
    width: 64px;
    height: 64px; }
  .preloader-wrapper.active {
    /* duration: 360 * ARCTIME / (ARCSTARTROT + (360-ARCSIZE)) */
    -webkit-animation: container-rotate 1568ms linear infinite;
    animation: container-rotate 1568ms linear infinite; }

@-webkit-keyframes container-rotate {
  to {
    -webkit-transform: rotate(360deg); } }

@keyframes container-rotate {
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.spinner-layer {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  border-color: #B5E2F5; }

/**
 * IMPORTANT NOTE ABOUT CSS ANIMATION PROPERTIES (keanulee):
 *
 * iOS Safari (tested on iOS 8.1) does not handle animation-delay very well - it doesn't
 * guarantee that the animation will start _exactly_ after that value. So we avoid using
 * animation-delay and instead set custom keyframes for each color (as redundant as it
 * seems).
 *
 * We write out each animation in full (instead of separating animation-name,
 * animation-duration, etc.) because under the polyfill, Safari does not recognize those
 * specific properties properly, treats them as -webkit-animation, and overrides the
 * other animation rules. See https://github.com/Polymer/platform/issues/53.
 */
.active .spinner-layer.spinner-blue {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, blue-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, blue-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; }

.active .spinner-layer.spinner-red {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, red-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, red-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; }

.active .spinner-layer.spinner-yellow {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, yellow-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, yellow-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; }

.active .spinner-layer.spinner-green {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, green-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, green-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; }

.active .spinner-layer,
.active .spinner-layer.spinner-blue-only,
.active .spinner-layer.spinner-red-only,
.active .spinner-layer.spinner-yellow-only,
.active .spinner-layer.spinner-green-only {
  /* durations: 4 * ARCTIME */
  opacity: 1;
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; }

@-webkit-keyframes fill-unfill-rotate {
  12.5% {
    -webkit-transform: rotate(135deg); }
  /* 0.5 * ARCSIZE */
  25% {
    -webkit-transform: rotate(270deg); }
  /* 1   * ARCSIZE */
  37.5% {
    -webkit-transform: rotate(405deg); }
  /* 1.5 * ARCSIZE */
  50% {
    -webkit-transform: rotate(540deg); }
  /* 2   * ARCSIZE */
  62.5% {
    -webkit-transform: rotate(675deg); }
  /* 2.5 * ARCSIZE */
  75% {
    -webkit-transform: rotate(810deg); }
  /* 3   * ARCSIZE */
  87.5% {
    -webkit-transform: rotate(945deg); }
  /* 3.5 * ARCSIZE */
  to {
    -webkit-transform: rotate(1080deg); }
  /* 4   * ARCSIZE */ }

@keyframes fill-unfill-rotate {
  12.5% {
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg); }
  /* 0.5 * ARCSIZE */
  25% {
    -webkit-transform: rotate(270deg);
            transform: rotate(270deg); }
  /* 1   * ARCSIZE */
  37.5% {
    -webkit-transform: rotate(405deg);
            transform: rotate(405deg); }
  /* 1.5 * ARCSIZE */
  50% {
    -webkit-transform: rotate(540deg);
            transform: rotate(540deg); }
  /* 2   * ARCSIZE */
  62.5% {
    -webkit-transform: rotate(675deg);
            transform: rotate(675deg); }
  /* 2.5 * ARCSIZE */
  75% {
    -webkit-transform: rotate(810deg);
            transform: rotate(810deg); }
  /* 3   * ARCSIZE */
  87.5% {
    -webkit-transform: rotate(945deg);
            transform: rotate(945deg); }
  /* 3.5 * ARCSIZE */
  to {
    -webkit-transform: rotate(1080deg);
            transform: rotate(1080deg); }
  /* 4   * ARCSIZE */ }

@-webkit-keyframes blue-fade-in-out {
  from {
    opacity: 1; }
  25% {
    opacity: 1; }
  26% {
    opacity: 0; }
  89% {
    opacity: 0; }
  90% {
    opacity: 1; }
  100% {
    opacity: 1; } }

@keyframes blue-fade-in-out {
  from {
    opacity: 1; }
  25% {
    opacity: 1; }
  26% {
    opacity: 0; }
  89% {
    opacity: 0; }
  90% {
    opacity: 1; }
  100% {
    opacity: 1; } }

@-webkit-keyframes red-fade-in-out {
  from {
    opacity: 0; }
  15% {
    opacity: 0; }
  25% {
    opacity: 1; }
  50% {
    opacity: 1; }
  51% {
    opacity: 0; } }

@keyframes red-fade-in-out {
  from {
    opacity: 0; }
  15% {
    opacity: 0; }
  25% {
    opacity: 1; }
  50% {
    opacity: 1; }
  51% {
    opacity: 0; } }

@-webkit-keyframes yellow-fade-in-out {
  from {
    opacity: 0; }
  40% {
    opacity: 0; }
  50% {
    opacity: 1; }
  75% {
    opacity: 1; }
  76% {
    opacity: 0; } }

@keyframes yellow-fade-in-out {
  from {
    opacity: 0; }
  40% {
    opacity: 0; }
  50% {
    opacity: 1; }
  75% {
    opacity: 1; }
  76% {
    opacity: 0; } }

@-webkit-keyframes green-fade-in-out {
  from {
    opacity: 0; }
  65% {
    opacity: 0; }
  75% {
    opacity: 1; }
  90% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes green-fade-in-out {
  from {
    opacity: 0; }
  65% {
    opacity: 0; }
  75% {
    opacity: 1; }
  90% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/**
 * Patch the gap that appear between the two adjacent div.circle-clipper while the
 * spinner is rotating (appears on Chrome 38, Safari 7.1, and IE 11).
 */
.gap-patch {
  position: absolute;
  top: 0;
  left: 45%;
  width: 10%;
  height: 100%;
  overflow: hidden;
  border-color: inherit; }

.gap-patch .circle {
  width: 1000%;
  left: -450%; }

.circle-clipper {
  display: inline-block;
  position: relative;
  width: 50%;
  height: 100%;
  overflow: hidden;
  border-color: inherit; }
  .circle-clipper .circle {
    width: 200%;
    height: 100%;
    border-width: 3px;
    /* STROKEWIDTH */
    border-style: solid;
    border-color: inherit;
    border-bottom-color: transparent !important;
    border-radius: 50%;
    -webkit-animation: none;
    animation: none;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0; }
  .circle-clipper.left .circle {
    left: 0;
    border-right-color: transparent !important;
    -webkit-transform: rotate(129deg);
    transform: rotate(129deg); }
  .circle-clipper.right .circle {
    left: -100%;
    border-left-color: transparent !important;
    -webkit-transform: rotate(-129deg);
    transform: rotate(-129deg); }

.active .circle-clipper.left .circle {
  /* duration: ARCTIME */
  -webkit-animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; }

.active .circle-clipper.right .circle {
  /* duration: ARCTIME */
  -webkit-animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; }

@-webkit-keyframes left-spin {
  from {
    -webkit-transform: rotate(130deg); }
  50% {
    -webkit-transform: rotate(-5deg); }
  to {
    -webkit-transform: rotate(130deg); } }

@keyframes left-spin {
  from {
    -webkit-transform: rotate(130deg);
            transform: rotate(130deg); }
  50% {
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg); }
  to {
    -webkit-transform: rotate(130deg);
            transform: rotate(130deg); } }

@-webkit-keyframes right-spin {
  from {
    -webkit-transform: rotate(-130deg); }
  50% {
    -webkit-transform: rotate(5deg); }
  to {
    -webkit-transform: rotate(-130deg); } }

@keyframes right-spin {
  from {
    -webkit-transform: rotate(-130deg);
            transform: rotate(-130deg); }
  50% {
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg); }
  to {
    -webkit-transform: rotate(-130deg);
            transform: rotate(-130deg); } }

#spinnerContainer.cooldown {
  /* duration: SHRINK_TIME */
  -webkit-animation: container-rotate 1568ms linear infinite, fade-out 400ms cubic-bezier(0.4, 0, 0.2, 1);
  animation: container-rotate 1568ms linear infinite, fade-out 400ms cubic-bezier(0.4, 0, 0.2, 1); }

@-webkit-keyframes fade-out {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@keyframes fade-out {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

/* Flight Facts */
.nf-flight-fact-wrapper {
  position: relative;
  padding: 1rem;
  -webkit-box-shadow: 0 2px 2px 0 #CFCFCF, 0 0 1px 0 #CFCFCF;
          box-shadow: 0 2px 2px 0 #CFCFCF, 0 0 1px 0 #CFCFCF;
  background: #FFFFFF;
  height: 330px;
  margin: 2px;
  overflow: hidden;
  text-align: center;
  width: 210px;
  margin-right: 1rem;
  float: left; }

.nf-flight-fact-wrapper.item-0 {
  margin-left: 1rem; }

.nf-flight-fact-wrapper h4 {
  font-size: 1rem;
  font-weight: bold;
  text-align: center;
  border-top: 1px solid #EEEEEE;
  border-bottom: 1px solid #EEEEEE;
  position: relative;
  height: 4.5rem;
  line-height: 4.5rem;
  margin: 0.75rem 0; }

.nf-flight-fact-wrapper h4 span {
  line-height: 1.3;
  display: inline-block;
  vertical-align: middle; }

.nf-flight-fact-icon {
  position: absolute;
  border-radius: 50%;
  width: 1.5rem;
  height: 1.5rem;
  color: #FFFFFF;
  fill: #FFFFFF;
  -webkit-box-shadow: 0 0 0 3px #FFFFFF;
          box-shadow: 0 0 0 3px #FFFFFF;
  background: #2dace3;
  z-index: 1;
  display: block;
  padding: 0.25rem;
  top: 1.8125rem;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%); }
  .nf-flight-fact-icon svg {
    height: 1rem;
    width: 1rem;
    display: block; }

.nf-flight-fact-wrapper p {
  font-size: 0.875rem; }

.nf-flight-fact-prefix {
  vertical-align: super;
  font-size: 1.6rem;
  font-weight: bold;
  display: inline-block; }

.nf-flight-fact-main {
  font-size: 2.25rem;
  line-height: 1;
  display: inline-block; }

.nf-flight-fact-main.price {
  font-size: 3rem; }

.nf-flight-fact-suffix {
  display: inline-block;
  font-size: 1rem; }

.nf-image-card-wrapper .card-content h4 {
  margin: 0; }

.nf-image-card-wrapper .card-content h4 span {
  display: block;
  font-size: 0.875rem;
  line-height: 1.3;
  color: #676767; }

.nf-image-card-wrapper .card-content h4.long-title {
  font-size: 1.125rem;
  line-height: 1.8rem;
  white-space: nowrap; }

.nf-flight-fact ul {
  margin: 0; }

.nf-flight-fact ul .airline,
.nf-flight-fact ul .month,
.nf-flight-fact ul .airport {
  font-weight: bold;
  line-height: 1.3;
  font-size: 0.875rem;
  position: relative; }

.nf-flight-fact ul .airport {
  vertical-align: middle; }

.nf-flight-fact ul .month {
  font-size: 1.25rem; }

.nf-flight-fact ul .airport .nf-flight-fact-prefix {
  font-size: 0.6875rem;
  color: #FFFFFF;
  background: #2dace3;
  vertical-align: middle;
  line-height: 1;
  font-weight: normal;
  display: inline-block;
  padding: 0.25rem;
  border-radius: 4px;
  margin-right: 0.125rem; }

.nf-flight-fact ul .count-2,
.nf-flight-fact ul .count-3,
.nf-flight-fact ul .count-4,
.nf-flight-fact ul .count-5 {
  line-height: 1.3;
  font-size: 1.125rem; }

.nf-flight-fact ul .count-2 .nf-flight-fact-main,
.nf-flight-fact ul .count-3 .nf-flight-fact-main,
.nf-flight-fact ul .count-4 .nf-flight-fact-main,
.nf-flight-fact ul .count-5 .nf-flight-fact-main {
  font-weight: bold;
  line-height: 1.3;
  font-size: 0.875rem;
  position: relative; }

.nf-flight-fact &gt; span {
  vertical-align: middle; }

.nf-flight-fact a {
  font-weight: normal;
  border-bottom-width: 1px;
  border-bottom-style: solid; }

.nf-flight-fact-main.airline {
  font-size: 2rem; }

.no-image {
  width: 100%;
  height: 100%;
  background: #2dace3;
  position: relative; }

nf-flight-fact-wrapper {
  margin-right: 1.5rem; }

.nf-carousel--flightfacts {
  height: 372px;
  overflow: hidden; }

.nf-carousel--flightfacts .flickity-page-dots {
  bottom: 0; }

@media only screen and (max-width: 992px) {
  .nf-flight-fact-wrapper.item-0 {
    margin-left: 1.5rem; } }

/* Home Page Logo */
.nf-logo {
  position: absolute;
  width: 130px;
  display: inline-block;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 1rem;
  z-index: 2; }

.nf-logo img,
.nf-logo svg {
  display: block; }

.nf-home-logo--large img,
.nf-home-logo--large svg {
  width: 310px;
  height: 80px;
  position: absolute;
  top: 6rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: block; }

.nf-home-logo--secondary img,
.nf-home-logo--secondary svg {
  width: 153px;
  height: 19px;
  position: absolute;
  top: 37rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: block; }

/* SVG Icon Sprite */
.nf-svg-position {
  position: absolute;
  top: 0.375rem !important;
  left: 0.5rem;
  fill: #2dace3;
  width: 0.625rem !important;
  height: 0.625rem !important; }

@media only screen and (min-width: 993px) {
  .nf-home header nav .nf-logo {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateX(2rem) translateY(-50%);
            transform: translateX(2rem) translateY(-50%);
    -webkit-transition: all ease 200ms;
    transition: all ease 200ms; }
  .nf-home header nav.nf-navbar--scrolled .nf-logo {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateX(0) translateY(-50%);
            transform: translateX(0) translateY(-50%); } }

@media only screen and (max-width: 992px) {
  /* Header Logo */
  .nf-logo {
    -webkit-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
    left: 50%; } }

/* Interlinking Cities */
.nf-carousel:after {
  content: 'flickity';
  display: none; }

.flickity-page-dots {
  bottom: -2rem; }

.flickity-page-dots .dot {
  width: 35px;
  height: 3px;
  margin: 0;
  border-radius: 0;
  opacity: 1;
  background: #CFCFCF; }

.flickity-page-dots .dot.is-selected {
  background: #2dace3;
  position: relative; }

.nf-copy-text-content p,
.nf-copy-text-content span,
.nf-copy-text-content div {
  word-break: break-word;
  text-align: left !important;
  /* This is required to override Umbraco inline styles */ }

.nf-copy-text-content h2 {
  font-family: "Roboto", Arial, sans-serif;
  font-size: 1.375rem;
  color: #393939; }

.nf-copy-text-content h1,
.nf-copy-text-content h2,
.nf-copy-text-content h3,
.nf-copy-text-content h4,
.nf-copy-text-content h5,
.nf-copy-text-content h6 {
  font-weight: 600;
  text-align: left !important;
  /* This is required to override Umbraco inline styles */ }

.show-more-link {
  padding-top: 1rem; }

.show-interlinking-city-divs {
  display: block;
  -webkit-animation: slide-down .5s ease-out;
  animation: slide-down .5s ease-out; }

.hide-interlinking-city-divs {
  display: none; }

@keyframes slide-down {
  0% {
    opacity: 0;
    -webkit-transform: translateY(100%);
            transform: translateY(100%); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@-webkit-keyframes slide-down {
  0% {
    opacity: 0;
    -webkit-transform: translateY(100%); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0); } }

@media only screen and (min-width: 1381px) {
  .nf-home .nf-carousel:after {
    content: ''; } }

/* Footer */
footer {
  padding-top: 0;
  padding-bottom: 0; }

footer h4 {
  font-size: 1.125rem;
  font-weight: bold;
  margin: 0;
  margin-bottom: 0.5rem; }

footer h5 {
  color: #FFFFFF;
  font-size: 0.875rem;
  display: inline-block;
  margin: 0;
  line-height: 1; }

footer a {
  color: #454545;
  text-decoration: none; }

footer .card-panel {
  margin: 0;
  min-height: 100%;
  border-radius: 0; }

.nf-footer-top,
.nf-footer-middle,
.nf-footer-bottom {
  padding: 4.375rem 0; }

.nf-footer-middle {
  background: #EEEEEE; }
  .nf-footer-middle ul {
    margin: 0.5rem 0 2rem; }

.nf-footer-top {
  background: #FFFFFF; }

.nf-footer-bottom {
  background: #454545; }

/* Footer Text */
.nf-footer-text p {
  color: #EEEEEE;
  font-size: 0.8125rem;
  text-align: center;
  margin-bottom: 1.5rem; }

.nf-footer-text a {
  color: #2dace3; }

/* Reassurance */
.nf-reassurance ul {
  margin: 0;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.nf-reassurance ul li[class^="nf-"] {
  display: inline-block;
  margin: 0 0.25rem;
  font-size: 0.8rem; }

.nf-reassurance ul li.nf-atol {
  width: 3.21429em;
  height: 3.21429em; }

.nf-reassurance ul li.nf-abta {
  width: 6.42857em;
  height: 2.78571em; }

.nf-reassurance ul li.nf-iata {
  width: 4.42857em;
  height: 3.07143em; }

.nf-reassurance ul li.nf-travel-aware {
  font-size: 0.5rem;
  width: 7.80786em;
  height: 7.17143em; }

@media only screen and (min-width: 993px) {
  .nf-footer-bottom .row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; } }

@media only screen and (max-width: 992px) {
  footer .row .col.nf-email-signup {
    padding-right: 0;
    margin-bottom: 1rem; }
  footer .row .col.nf-explore {
    padding-left: 0; }
  footer h5 {
    display: block;
    margin-bottom: 0.75rem; }
  footer .nf-ways-to-pay,
  footer .nf-reassurance,
  footer .nf-social-media {
    margin-bottom: 1.75rem;
    display: block; }
    footer .nf-ways-to-pay .lazyload,
    footer .nf-reassurance .lazyload,
    footer .nf-social-media .lazyload {
      background: black; }
  footer .nf-social-media {
    margin-bottom: 0; } }

/* Email Signup */
.nf-email-signup, .nf-email-signup--wrap {
  max-width: 1360px;
  margin: 0 auto; }

.nf-email-signup-success {
  max-width: 320px;
  margin: 0 auto; }

.nf-email-signup h4 {
  font-size: 2rem;
  line-height: 1;
  position: relative;
  margin: 0;
  font-family: azo-sans-uber;
  font-display: auto;
  font-weight: 400;
  color: #FF084A; }

.nf-email-signup p {
  font-size: 0.8125rem;
  position: relative; }

.nf-email-signup .nf-email-signup-description {
  font-family: adobe-handwriting-frank;
  font-size: 1.3rem;
  max-width: 520px;
  margin: auto;
  line-height: 1.2;
  padding-top: 8px; }

.nf-email-signup-input--wrap {
  margin: auto;
  width: 320px;
  display: inline-block; }

.nf-email-signup input[type=text] {
  color: #676767;
  background: #FFFFFF;
  text-indent: 1rem;
  width: 75%;
  height: 2.5rem;
  line-height: 2.5rem;
  border: 0;
  float: left;
  margin: 1rem 0;
  border-radius: 0;
  border: 1px solid #CFCFCF;
  border-right: 0;
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.nf-email-signup input[type=text]::-webkit-input-placeholder {
  color: #CFCFCF; }

.nf-email-signup input[type=text].failure {
  border-color: #e40046; }

.nf-email-signup .btn, .nf-email-signup .btn-large {
  width: 25%;
  height: 2.5rem;
  line-height: 2.5rem;
  padding: 0;
  float: left;
  margin: 1rem 0;
  border-radius: 0;
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px;
  text-align: center;
  font-size: 0.75rem;
  text-transform: none;
  font-weight: normal; }

.nf-email-signup input::-webkit-input-placeholder {
  color: #EEEEEE; }

.nf-email-signup input::-moz-placeholder {
  color: #EEEEEE; }

.nf-email-signup input:-ms-input-placeholder {
  color: #EEEEEE; }

.nf-email-signup input:-moz-placeholder {
  color: #EEEEEE; }

.nf-email-signup ~ .nf-privacy-policy {
  color: #2dace3;
  font-size: 0.8125rem;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  display: inline-block; }
  .nf-email-signup ~ .nf-privacy-policy &gt; * {
    font-size: 0.8125rem; }

.nf-email-signup p.failure-message {
  color: #e40046;
  clear: both; }

.nf-email-signup-success p {
  margin: 0; }

.nf-email-signup-success .nf-email-signup-emailid {
  color: #2dace3;
  font-size: 1.25rem; }

.nf-email-signup-success-title {
  font-size: 1.0rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-bottom: 0.5rem;
  fill: #2dace3; }
  .nf-email-signup-success-title svg {
    margin-right: 0.5rem; }

.nf-email-signup-success-title h4 {
  font-size: 1.5rem; }

p.nf-email-signup-emailid {
  margin-bottom: 1rem; }

/* Email signup top panel */
.partialEmailSubcription-topwrapper {
  background: #283E5A;
  padding: 2.5rem 1rem 1.5rem;
  position: relative;
  max-width: 100%;
  overflow: hidden; }
  .partialEmailSubcription-topwrapper h4 {
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 0.5rem;
    color: #e9e9e9;
    font-family: "Roboto", Arial, sans-serif; }
  .partialEmailSubcription-topwrapper p {
    font-size: 0.8125rem;
    position: relative;
    margin: 0;
    color: #d5d5d5; }
  .partialEmailSubcription-topwrapper .nf-email-signup {
    color: #FFFFFF;
    margin: 0 auto;
    max-width: 85rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .partialEmailSubcription-topwrapper .nf-email-signup-success {
    color: #FFFFFF;
    max-width: none; }
  .partialEmailSubcription-topwrapper .nf-email-signup-success-title {
    display: block;
    margin-bottom: 0;
    text-align: center; }
    .partialEmailSubcription-topwrapper .nf-email-signup-success-title h4 {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .partialEmailSubcription-topwrapper .nf-email-signup-success-title svg {
      fill: #65b146;
      margin-right: 0.75rem;
      width: 1.5rem;
      height: 1.5rem; }
    .partialEmailSubcription-topwrapper .nf-email-signup-success-title p {
      font-size: 0.8125rem;
      color: #EEEEEE; }

.nf-email-signup-content {
  width: 100%; }
  .nf-email-signup-content .email-subscription-textbox {
    color: #676767;
    background: #FFFFFF; }
  .nf-email-signup-content input[type=text] {
    line-height: 2.75rem;
    height: 2.75rem;
    min-width: 14rem; }
  .nf-email-signup-content input::-webkit-input-placeholder {
    color: #979797; }
  .nf-email-signup-content input::-moz-placeholder {
    color: #979797; }
  .nf-email-signup-content input:-ms-input-placeholder {
    color: #979797; }
  .nf-email-signup-content input::-ms-input-placeholder {
    color: #979797; }
  .nf-email-signup-content input::placeholder {
    color: #979797; }
  .nf-email-signup-content input[type=button] {
    width: 25%;
    line-height: 2.75rem;
    height: 2.75rem;
    background: #65b146; }
    .nf-email-signup-content input[type=button]:hover, .nf-email-signup-content input[type=button]:focus {
      background: #5b9f3f; }
  .nf-email-signup-content .failure-message {
    color: #e40046;
    font-size: 0.9375rem;
    margin: 0;
    margin-bottom: 0.5rem;
    line-height: 1;
    clear: both; }

.nf-email-signup-privacy-policy {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center; }

.nf-email-signup-privacy-policy * {
  color: #2dace3;
  font-size: 0.8125rem;
  line-height: 1.3; }

.nf-email-signup-panel--close {
  position: absolute;
  top: 1.5rem;
  right: 0.75rem;
  cursor: pointer;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  font-size: 0.75rem;
  fill: #FFFFFF;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); }
  .nf-email-signup-panel--close:hover {
    fill: #2dace3; }

.m--hide {
  display: none !important; }

.m--show {
  display: block; }

@media only screen and (min-width: 993px) {
  .partialEmailSubcription-topwrapper {
    padding: 1rem 2rem; }
    .partialEmailSubcription-topwrapper .nf-email-signup {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
  .nf-email-signup-header {
    max-width: 24rem;
    text-align: right; }
  .nf-email-signup-content {
    min-width: 23rem;
    max-width: 28rem;
    padding: 0 2rem; }
  .nf-email-signup-panel--close {
    top: 50%; } }

@media only screen and (min-width: 1381px) {
  .nf-email-signup-header {
    width: 30%; }
  .nf-email-signup-content {
    width: 40%; }
  .nf-email-signup-privacy-policy {
    width: 30%; } }

@media only screen and (max-width: 600px) {
  .nf-email-signup h4 {
    font-size: 1.5rem; }
  .nf-email-signup .nf-email-signup-description {
    font-size: 1.3rem; } }

/* Social Media */
.nf-social-media ul {
  margin: 0;
  display: inline-block;
  margin: 0 0.5rem; }

.nf-social-media ul li[class^="social-"] {
  display: inline-block;
  font-size: 0.65rem;
  margin-right: 0.25rem;
  overflow: hidden;
  position: relative; }

.nf-social-media ul [class^="social-"] a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  text-indent: 100%; }

.social-facebook,
.social-twitter,
.social-google,
.social-instagram,
.social-youtube,
.social-pinterest,
.social-generic {
  width: 2.92857em; }

/* Ways to Pay */
.nf-ways-to-pay ul {
  margin: 0;
  display: inline-block;
  margin: 0 0.5rem; }

.nf-ways-to-pay ul li[class^="pay-"] {
  display: inline-block;
  margin-right: 0.25rem; }

.pay-visa,
.pay-mastercard,
.pay-maestro,
.pay-amex,
.pay-delta,
.pay-generic {
  font-size: 0.3rem;
  width: 9.03071em;
  height: 5.67071em; }

/* Flight Deals Section */
#react-flight-deals .nf-flight-deals-no-deals {
  text-align: center; }

#react-flight-deals .nf-error-msgbox {
  display: none; }

.nf-flight-deals-toggle,
.nf-flight-deals-toggle--text {
  display: none; }

.nf-flight-deal {
  position: relative;
  margin: 2px;
  width: 300px;
  margin-right: 1rem; }

.nf-flight-deal.item-0 {
  margin-left: 1rem; }

.nf-flight-deal .nf-airline-logo {
  height: 60px;
  line-height: 60px; }

.nf-flight-deal .nf-airline-logo img {
  width: 4.375rem;
  height: auto;
  vertical-align: middle; }

.nf-flight-deal .nf-airline-logo svg {
  width: 4.375rem;
  height: auto;
  vertical-align: middle; }

.nf-flight-deal-legs {
  position: relative; }

.nf-flight-deal-outbound,
.nf-flight-deal-inbound {
  overflow: hidden;
  padding: 0 1rem;
  text-align: center; }

.nf-flight-deal-outbound {
  border-bottom: 1px solid #EEEEEE; }

.nf-flight-deal-outbound .col span,
.nf-flight-deal-inbound .col span {
  display: block;
  white-space: nowrap;
  line-height: 1.4; }

.nf-flight-deal .nf-departure-airport,
.nf-flight-deal .nf-arrival-airport {
  font-weight: bold;
  margin-top: 0.5rem;
  font-size: 1.25rem; }

.nf-flight-deal .nf-departure-name,
.nf-flight-deal .nf-arrival-name {
  font-size: 0.8125rem;
  font-weight: bold;
  margin-bottom: 1.5rem; }

.nf-flight-deal .nf-departure-time,
.nf-flight-deal .nf-arrival-time {
  font-weight: bold;
  font-size: 1.5rem; }

.nf-flight-deal .nf-flight-duration {
  margin-top: 0.5rem;
  color: #2dace3; }

.nf-flight-deal .nf-flight-duration,
.nf-flight-deal .nf-flight-stops {
  font-size: 0.75rem; }

.nf-flight-deal .nf-outbound-airline,
.nf-flight-deal .nf-inbound-airline {
  background: #EEEEEE;
  font-size: 0.75rem;
  line-height: 1.5;
  margin-bottom: 0.5rem;
  display: block;
  text-align: left;
  padding-left: 0.5rem; }

.nf-flight-deal .nf-outbound-airline strong,
.nf-flight-deal .nf-inbound-airline strong {
  font-weight: bold; }

.nf-flight-stops-divider {
  position: relative;
  width: calc(100% - 1.375rem);
  height: 1px;
  margin: 0.625rem 0;
  background: #2dace3;
  fill: #2dace3; }
  .nf-flight-stops-divider svg {
    display: block;
    width: 1.5rem;
    height: 1.5rem;
    position: absolute;
    left: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(90deg);
            transform: translateY(-50%) rotate(90deg); }

.nf-flight-deal-price {
  background: #EEEEEE;
  padding: 1rem; }

.nf-price-and-duration-block {
  overflow: hidden; }

.nf-flight-deal .nf-flight-deal-price .nf-duration {
  float: left;
  margin-top: 0.5rem;
  display: block; }

.nf-flight-deal .nf-flight-deal-price .nf-price-block {
  float: right;
  display: block; }

.nf-flight-deal .nf-flight-deal-price .btn, .nf-flight-deal .nf-flight-deal-price .btn-large {
  margin-top: 1rem; }

@media only screen and (min-width: 1381px) {
  .nf-flight-deals-wrapper {
    position: relative;
    max-height: 30rem;
    overflow: hidden;
    -webkit-transition: all ease 1s;
    transition: all ease 1s; }
  .nf-flight-deals-wrapper.open {
    max-height: 74rem;
    padding-bottom: 2.5rem; }
  .nf-flight-deals-toggle {
    display: inline-block;
    position: absolute;
    top: initial;
    bottom: 3px;
    left: 50%;
    left: calc(50% - 0.5rem);
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
  .nf-flight-deals-toggle:active {
    top: initial;
    bottom: 2px; }
  .nf-flight-deal {
    width: 50%;
    width: calc(50% - (1rem + 4px));
    /* Refactor */
    float: left;
    margin-bottom: 1rem;
    -webkit-transition: all ease 300ms;
    transition: all ease 300ms; }
  .nf-flight-deal.item-0 {
    margin-left: 0; }
  .nf-flight-deal.item-4,
  .nf-flight-deal.item-5 {
    -webkit-transform: translateY(50px);
            transform: translateY(50px); }
  .nf-flight-deals-wrapper.open .nf-flight-deal.item-4,
  .nf-flight-deals-wrapper.open .nf-flight-deal.item-5 {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  .nf-flight-deal:nth-of-type(even) {
    margin-right: 0; }
  .nf-flight-deal .nf-airline-logo {
    height: 100px;
    line-height: 100px; }
  .nf-flight-deal .nf-flight-deal-price {
    height: 201px; }
  .nf-flight-deal .nf-departure-airport,
  .nf-flight-deal .nf-arrival-airport {
    margin-top: 1.5rem; }
  .nf-flight-deal .nf-flight-duration {
    margin-top: 1.5rem; }
  .nf-flight-deal .nf-flight-deal-price .nf-duration {
    float: none;
    margin-top: 0.5rem; }
  .nf-flight-deal .nf-flight-deal-price .nf-price-block {
    float: none;
    margin-top: 1.5rem; }
  /* Carousels disabled at xl breakpoint */
  .nf-flight-deals-carousel:after {
    content: ''; } }

@media only screen and (max-width: 1380px) {
  .nf-flight-deals-wrapper .nf-carousel {
    height: 432px;
    overflow: hidden; }
  .nf-flight-deals-wrapper .flickity-page-dots {
    bottom: 0; }
  .nf-carousel:after {
    content: 'flickity';
    display: none; } }

/* Opening hours &amp; contact us */
.nf-opening-hours {
  display: inline-block;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  right: 16rem;
  top: 0;
  padding: 0;
  margin: 0;
  height: 56px;
  line-height: 56px;
  padding: 0 1rem;
  font-size: 0.9375rem; }

.nf-opening-hours-icon {
  cursor: pointer;
  position: relative;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  fill: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 0.5rem; }
  .nf-opening-hours-icon:before {
    content: '';
    width: 0.5rem;
    height: 0.5rem;
    display: block;
    border-radius: 50%;
    position: absolute;
    top: 1.125rem;
    right: 0.125rem;
    background: red;
    /* Refactor */ }
  .nf-opening-hours-icon.m--lines-open:before {
    background: #78e835;
    /* Refactor */ }

.nf-opening-hours--content {
  width: 200px;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: scale(1.3);
          transform: scale(1.3);
  background: #454545;
  position: fixed;
  top: 4rem;
  right: 1rem;
  -webkit-transition: all ease 400ms;
  transition: all ease 400ms;
  line-height: 1;
  border-radius: 4px;
  padding: 0;
  border-radius: 3px;
  border-bottom: 2px solid #676767;
  -webkit-box-shadow: 0 0 1px 0 #676767;
          box-shadow: 0 0 1px 0 #676767;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 2; }
  .nf-opening-hours--content p {
    padding: 1rem;
    margin: 0;
    text-align: center; }
  .nf-opening-hours--content:before {
    content: '';
    width: 0;
    height: 0;
    position: absolute;
    display: inline-block;
    border-bottom: 12px solid #454545;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    left: 6.5rem;
    bottom: 100%; }
  .nf-opening-hours--content.m--open {
    opacity: 1;
    visibility: visible;
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transition: opacity ease 100ms;
    transition: opacity ease 100ms;
    position: fixed; }

.nf-opening-hours--item {
  min-height: unset;
  display: block;
  line-height: 1;
  padding: 0.5rem 1rem;
  font-size: 0.8125rem;
  border-bottom: 1px solid #676767;
  width: 100%; }
  .nf-opening-hours--item span {
    color: #EEEEEE;
    width: 50%;
    display: inline-block; }
  .nf-opening-hours--item span + span {
    color: #2dace3;
    text-align: right;
    padding-left: 0.25rem; }

.nf-opening-hours--footer {
  color: #CFCFCF;
  font-size: 0.825rem;
  padding: 1rem;
  margin: 0;
  width: 100%;
  float: left;
  line-height: 1.4; }

.nf-opening-hours--content .nf-call-charges,
.nf-opening-hours--content .nf-call-number a[href^="tel:"] {
  color: #676767;
  padding: 1rem;
  padding-bottom: 0;
  margin: 0;
  text-align: center;
  float: left;
  font-size: 0.75rem;
  width: 100%; }

.nf-opening-hours--content .nf-call-number a[href^="tel:"] {
  color: #2dace3;
  font-size: 1rem; }

.nav-wrapper.container {
  overflow: visible; }

.nf-opening-hours--content .nf-call-number {
  display: none; }

.nf-opening-hours--content.m--open .nf-call-number {
  display: block; }

p.nf-call-customerunique {
  padding: 0.5rem 0.5rem 1rem 0.5rem; }

@media only screen and (min-width: 993px) {
  .nf-opening-hours--content {
    right: 22%; } }

@media only screen and (max-width: 992px) {
  .nf-opening-hours {
    right: 8.5rem; }
  .nf-opening-hours--content,
  .nf-opening-hours--content:before {
    right: 5rem; } }

@media only screen and (max-width: 600px) {
  .nf-opening-hours {
    right: 2.5rem; }
  /* Nav - Opening Hours */
  .nf-opening-hours-icon {
    margin-right: 0.25rem;
    height: 56px;
    line-height: 56px; }
  .nf-opening-hours--content {
    left: auto;
    width: 100%;
    position: fixed;
    right: 0;
    top: 63px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .nf-opening-hours--content:before {
    right: 3.75rem;
    left: unset; } }

/* Useful Facts */
.nf-useful-facts-large .nf-useful-facts-wrapper {
  margin: 0;
  border-bottom: 0;
  background: none;
  min-height: initial; }

.nf-useful-facts-large .nf-useful-facts-wrapper h3 {
  text-align: center; }

.nf-useful-facts-small .nf-useful-facts-wrapper h3 {
  font-family: "Roboto", Arial, sans-serif;
  font-size: 1.125rem;
  color: #2dace3; }
  .nf-useful-facts-small .nf-useful-facts-wrapper h3 span {
    font-family: "Roboto", Arial, sans-serif;
    font-size: 0.875rem;
    color: #454545; }

.nf-useful-facts-wrapper {
  position: relative;
  border-bottom: 2px solid #dcdcdc;
  background: #FFFFFF;
  margin: 0 -1rem;
  overflow: hidden; }

.nf-useful-facts-wrapper h3 {
  padding: 1rem 0;
  margin: 0 1rem 1rem 1rem;
  border-bottom: 1px solid #CFCFCF;
  font-family: azo-sans-uber;
  font-display: auto;
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
  font-size: 2.25rem;
  color: #B5E2F5; }

.nf-useful-facts-wrapper h3 span {
  display: block;
  padding-top: 0.5rem;
  font-family: adobe-handwriting-frank;
  font-display: auto;
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
  font-size: 1.75rem;
  color: #393939; }

.nf-useful-fact {
  color: #FFFFFF;
  fill: #FFFFFF;
  background: #2dace3;
  padding: 1rem;
  position: relative;
  text-align: left;
  height: 140px;
  margin: 0 0 1rem 1rem;
  width: 180px;
  float: left; }

.nf-useful-fact:before {
  content: '';
  display: inline-block;
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  right: 0;
  border-right: 0.75rem solid rgba(255, 255, 255, 0.5);
  border-bottom: 0.75rem solid transparent; }

.nf-useful-fact h4 {
  font-size: 0.8125rem;
  line-height: 1rem;
  white-space: nowrap;
  margin-bottom: 0.25rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.nf-useful-fact h4 svg {
  margin-right: 0.375rem; }

.nf-useful-fact .item,
.nf-useful-fact .nf-useful-fact-main {
  margin: 0;
  line-height: 1.2;
  font-size: 0.875rem; }

.nf-useful-fact-content {
  height: 60px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

@media only screen and (min-width: 1381px) {
  .nf-useful-facts-wrapper {
    margin-left: 0; }
  .nf-useful-fact {
    width: 124px;
    height: 112px; }
  .nf-useful-facts-large .nf-useful-fact {
    width: 180px;
    height: 140px; }
  .nf-useful-fact .item,
  .nf-useful-fact .nf-useful-fact-main {
    margin: 0;
    line-height: 1.2;
    font-size: 0.875rem; }
  .nf-useful-facts-wrapper {
    min-height: 350px; }
  .nf-useful-facts-large .nf-useful-facts-wrapper {
    min-height: initial;
    margin-right: 0;
    text-align: center; }
  .nf-useful-facts-large .nf-useful-facts-carousel {
    width: 100%; }
  .nf-useful-facts-large .nf-useful-facts-wrapper .carousel-cell {
    display: inline-block; }
  .nf-useful-facts-carousel:after {
    content: ''; } }

@media only screen and (max-width: 1380px) {
  .nf-useful-facts-wrapper h3 {
    padding: 1.5rem 0;
    margin: 1.5rem;
    margin-top: 1rem;
    font-size: 1.375rem; }
  .nf-useful-facts-wrapper h3 span {
    padding-top: 1rem;
    font-size: 1rem; }
  .nf-useful-facts-wrapper .nf-useful-fact {
    margin: 0 0 1.5rem 1.5rem; } }

@media only screen and (max-width: 600px) {
  .nf-useful-facts-carousel:after {
    content: 'flickity';
    display: none;
    /* hide :after */ } }

/* Home - Popular Countries */
.nf-home-popular--large {
  width: 432px;
  height: 282px;
  margin-right: 1rem;
  position: relative;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  -webkit-perspective: 1000px;
          perspective: 1000px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  overflow: hidden;
  float: left; }

#nf-large-blocks-widget {
  margin-top: 40px; }
  #nf-large-blocks-widget h2 {
    font-size: 32px;
    color: #1A6788; }
  #nf-large-blocks-widget .popular-widget-card {
    margin-bottom: 24px; }

.popular-card-item {
  width: 100%;
  margin-bottom: 10px;
  border-radius: 4px;
  border: 1px solid #EEE;
  background: #C0FF02; }
  .popular-card-item .popular-card-text {
    height: 100%;
    position: absolute;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%;
    width: 100%;
    font-size: 36px; }
  .popular-card-item h2 {
    height: 100%;
    padding: 10px; }

.popular-card-text {
  height: 100%;
  position: absolute;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  width: 100%;
  font-size: 36px; }

.carousel-cell:last-of-type .nf-home-popular--large {
  margin-right: 0;
  /* Fix to prevent last cell dropping to next line */ }

.nf-home-popular--large img {
  width: 100%;
  height: 100%;
  display: block;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  float: left; }

.nf-home-popular--large a {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: block; }

.nf-home-popular--large a .overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  -webkit-transform: translateZ(0);
          transform: translateZ(0); }

.nf-home-popular--large a:hover img,
.nf-home-popular--large a:focus img {
  -webkit-transform: scale(1.025);
          transform: scale(1.025); }

.nf-home-popular--large h3 {
  color: #FFFFFF;
  padding: 0 1.25rem;
  position: absolute;
  top: 9.125rem;
  font-size: 1.375rem;
  z-index: 2;
  max-height: 4.25rem;
  overflow: hidden;
  padding-top: 1.25rem;
  min-width: 100%; }

.help-header {
  height: 462px !important; }

.nf-home-popular help-header h2 {
  color: #FFFFFF;
  padding: 1.25rem;
  position: absolute;
  top: 5.125rem;
  font-size: 2.2rem;
  z-index: 2;
  font-style: normal;
  font-weight: 400;
  width: 100%; }

#nf-hotel-trending-hotels .nf-home-popular--large h3 {
  max-height: 5rem; }

.nf-home-popular--content.lazyload,
.nf-home-popular--content.lazyloding .nf-home-popular--content.lazyloaded {
  opacity: 1;
  -webkit-filter: blur(0);
  filter: blur(0);
  -webkit-transition: none;
  transition: none; }

.nf-home-popular--large h3 span {
  display: block;
  font-size: 0.75rem;
  position: absolute;
  top: 0;
  left: 1.25rem;
  white-space: nowrap; }

.nf-home-popular--price {
  color: #FFFFFF;
  position: absolute;
  padding: 0 1.25rem;
  top: 13.75rem;
  z-index: 2;
  font-size: 1rem;
  line-height: 1; }

.nf-home-popular--price span {
  display: block;
  font-size: 0.6875rem;
  margin-top: 0.25rem; }

.nf-home-popular--price span + span {
  display: block;
  font-size: 0.75rem; }

.nf-home-popular--cta {
  color: #FFFFFF;
  padding: 0 1.25rem;
  position: absolute;
  top: 15.125rem;
  z-index: 2;
  font-size: 0.6875rem;
  line-height: 1; }

.nf-home-popular--cards .nf-image-card-wrapper.item-0 {
  margin-left: 0; }

/* Popular Shared */
.nf-top-items-list-wrap {
  padding-top: 2rem;
  -webkit-column-count: 6;
     -moz-column-count: 6;
          column-count: 6;
  -webkit-column-gap: 2rem;
     -moz-column-gap: 2rem;
          column-gap: 2rem; }

/* Hotels, Holidays &amp; Cars Category Pages */
.hotel .nf-top-items-list-wrap, .holiday .nf-top-items-list-wrap {
  padding: 1rem 0 3rem; }

/* Desc text*/
.nf-home-airline--desc,
.nf-home-airline--subdesc {
  color: #FFFFFF;
  position: absolute;
  top: 5.5rem;
  padding: 0 2rem;
  letter-spacing: 0.0625rem;
  display: inline-block;
  max-height: 4.875rem;
  overflow: hidden;
  width: 100%;
  font-weight: normal;
  font-size: 2rem;
  line-height: 1.3;
  z-index: 2; }

.nf-home-airline--subdesc {
  font-size: 0.875rem;
  top: 12rem; }

.nf-home-airline--desc p {
  font-size: 1.25rem;
  line-height: 1.3;
  margin: 0; }

@media only screen and (max-width: 992px) {
  /* Home - Top Airlines */
  .nf-home-popular--large {
    width: 398px;
    height: 260px;
    margin: 10px; }
  .nf-home-popular--large.m--airline .nf-airline-logo--small {
    top: 0; }
  .nf-home-airline--desc {
    position: static;
    font-size: 1.75rem;
    max-height: 7rem;
    margin-top: 5rem; }
  .nf-home-airline--subdesc {
    top: 11.5rem;
    line-height: 1.5; }
  .nf-home-popular--marketing {
    position: static;
    font-size: 0.725rem; }
  .nf-home-popular--marketing p {
    font-size: 0.75rem;
    line-height: 1.4; }
  .nf-home-popular--large h3 {
    top: 8.25rem;
    max-height: 4.125rem;
    font-size: 1.25rem; }
  .nf-home-popular--price {
    top: 12.5rem; }
  .nf-home-popular--cta {
    top: 13.875rem; } }

@media only screen and (max-width: 600px) {
  /* Home - Top Airlines */
  .nf-home-popular--large {
    width: 319px;
    height: 194px; }
  .nf-home-popular--large h3 {
    top: 5.75rem;
    max-height: 3.375rem;
    line-height: 1.2;
    font-size: 1.0625rem;
    padding-top: 1rem; }
  .nf-home-popular--large .nf-home-popular--price {
    top: 9.5rem; }
  .nf-home-popular--large .nf-home-popular--cta {
    top: 10.875rem; }
  .nf-top-airline-logo {
    width: 150px; }
  .nf-top-items-list-wrap {
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2; }
  .nf-home-popular--large.m--airline .nf-airline-logo--small {
    max-width: 55%; }
  .nf-home-airline--desc {
    margin-top: 5.35rem;
    font-size: 1.1875rem;
    max-height: 4.5rem;
    padding: 0 1.5rem; }
  .nf-home-airline--subdesc {
    color: #EEEEEE;
    font-weight: 400;
    font-size: 0.75em;
    top: 9rem;
    padding: 0 1.5rem;
    max-height: 3rem;
    line-height: 1.3; }
  .nf-home-popular--marketing {
    display: none; }
  .nf-home-popular--hashtag {
    top: 0.5rem;
    right: 0.5rem; } }

.nf-usp-section {
  margin-bottom: 0;
  overflow: hidden;
  position: absolute;
  top: auto;
  bottom: 0;
  border-bottom: 1px solid #f3f3f3;
  width: 100%;
  z-index: 2;
  background-color: #FFFFFF; }
  .nf-usp-section .nf-usp-carousel {
    margin-bottom: 0;
    overflow: hidden; }
  .nf-usp-section .nf-usp-item-container {
    line-height: 1.5rem;
    overflow: hidden;
    text-align: center;
    width: 25%;
    float: left;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .nf-usp-section .nf-usp-item-container .nf-usp--item {
      padding: 12px;
      margin: 12px; }
      .nf-usp-section .nf-usp-item-container .nf-usp--item:hover {
        border-radius: 8px;
        background: #FFFFFF;
        -webkit-box-shadow: -2px 4px 10px 0px rgba(47, 47, 47, 0.1);
                box-shadow: -2px 4px 10px 0px rgba(47, 47, 47, 0.1); }
    .nf-usp-section .nf-usp-item-container span {
      color: #283E5A;
      font-weight: 800;
      display: block;
      line-height: 1.5rem;
      font-size: 1rem;
      vertical-align: top; }
    .nf-usp-section .nf-usp-item-container img {
      max-height: 40px;
      max-width: 100px;
      vertical-align: top; }
    .nf-usp-section .nf-usp-item-container svg {
      max-height: 40px;
      max-width: 100px; }

.nf-home .nf-usp-section {
  top: auto;
  bottom: 0;
  border-bottom: 1px solid #EEEEEE; }

.nf-usp-section .lazyload,
.nf-usp-section .lazyloading {
  -webkit-filter: blur(5px);
          filter: blur(5px); }

.nf-usp-section .lazyloaded {
  -webkit-filter: blur(0);
          filter: blur(0); }

@media only screen and (min-width: 993px) {
  .nf-usp-carousel:after {
    content: ''; } }

@media only screen and (max-width: 992px) {
  .nf-usp-carousel .flickity-prev-next-button {
    top: 85%;
    width: 16px;
    height: 16px;
    -webkit-box-shadow: none;
            box-shadow: none;
    background: #FFFFFF; }
    .nf-usp-carousel .flickity-prev-next-button .arrow {
      fill: #217FA8; }
  .nf-usp-section .nf-usp-item-container {
    width: 50%; } }

@media only screen and (max-width: 600px) {
  .nf-usp-section {
    height: 7.5rem; }
    .nf-usp-section .nf-usp-carousel {
      height: 7rem; }
      .nf-usp-section .nf-usp-carousel .flickity-prev-next-button {
        top: 85%;
        width: 16px;
        height: 16px;
        -webkit-box-shadow: none;
                box-shadow: none;
        background: #FFFFFF; }
        .nf-usp-section .nf-usp-carousel .flickity-prev-next-button .arrow {
          fill: #217FA8; }
      .nf-usp-section .nf-usp-carousel .flickity-page-dots {
        margin-bottom: 1.5rem; }
        .nf-usp-section .nf-usp-carousel .flickity-page-dots .dot {
          background: #ECECEC; }
        .nf-usp-section .nf-usp-carousel .flickity-page-dots .dot.is-selected {
          background: #217FA8; }
  .nf-usp-section .nf-usp-item-container {
    width: 100%; } }

/* Temperature and rainfall charts */
.nf-chart-wrapper {
  position: relative;
  min-height: 350px;
  border-bottom: 2px solid #dcdcdc;
  text-align: center; }

.nf-chart-wrapper h5 {
  font-size: 1rem;
  margin: 0;
  padding: 0.5rem 0.25rem; }

.nf-chart-wrapper.nf-rain-chart h5 {
  color: #39b6e7; }

.nf-temp-chart-wrapper,
.nf-rain-chart-wrapper {
  position: relative;
  min-height: 235px; }

.nf-chart--error {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2rem;
  overflow: hidden; }

.nf-chart--error p {
  font-size: 1.125rem; }

.nf-temp-chart {
  color: #FFFFFF;
  background: #39b6e7; }

.nf-rain-chart {
  color: #999999;
  background: #FFFFFF; }

.nf-chart-wrapper .nf-chart-values {
  margin: 1rem;
  display: inline-block; }

.nf-chart-wrapper .nf-chart-values h6 {
  margin: 0;
  font-weight: bold; }

.nf-chart-wrapper .nf-chart-values p {
  margin: 0; }

/* Car Search */
.nf-ng-car-search,
.nf-ng-holiday-search {
  margin: 0 1rem;
  background: #FFFFFF;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-top-right-radius: 4px;
  padding: 1rem 0; }

.nf-ng-car-search .nf-search-input--submit {
  padding-left: 1rem; }

.nf-ng-car-search .time-picker--wrap {
  color: #676767;
  width: 50%;
  float: left;
  margin-bottom: 1.25rem;
  padding: 0 1.5rem;
  text-align: right;
  overflow: hidden; }

.nf-ng-car-search .time-picker--label {
  color: #2dace3;
  float: left;
  margin-top: 0.5rem;
  white-space: nowrap; }

.nf-ng-car-search .time-picker--select {
  -webkit-appearance: none;
  -moz-appearance: none;
  font-size: 0.875rem;
  height: 2rem;
  line-height: 2rem;
  padding: 0 0.75rem;
  border: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  outline: 0;
  cursor: pointer;
  background-color: #FFFFFF; }
  .nf-ng-car-search .time-picker--select::-ms-expand {
    display: none; }

.nf-ng-car-search .time-picker--select + .time-picker--select {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  margin-left: -0.25rem;
  border-left: 1px solid #CFCFCF; }

.nf-ng-car-search .nf-search-input--datepicker {
  padding: 0 1rem;
  height: 3.25rem; }

.nf-ng-car-search .nf-search-input--datepicker input {
  padding: 0.25rem 0 1.25rem 3.125rem;
  line-height: 1rem;
  height: 3.25rem;
  font-weight: bold;
  background: #F1F1F1; }

.nf-ng-car-search .nf-search-input--datepicker .time-summary {
  color: #676767;
  position: absolute;
  left: 3.125rem;
  bottom: 0.5rem;
  font-size: 0.8125rem; }

@media only screen and (max-width: 992px) {
  /* Car Search */
  .nf-ng-car-search .nf-search-input--datepicker {
    padding: 0 0.25rem 0 0; }
  .nf-ng-car-search .nf-search-input--driverage {
    margin-left: 0.25rem; }
  .nf-ng-car-search .nf-search-input--datepicker {
    margin-right: 0; } }

@media only screen and (max-width: 600px) {
  /* Car Search */
  .nf-ng-car-search .time-picker--wrap {
    width: 50%;
    text-align: center;
    margin-bottom: 1.5rem; }
  .nf-ng-car-search .time-picker--label {
    float: none;
    margin-right: 0;
    margin-bottom: 0.75rem;
    display: block; }
  .nf-ng-car-search .nf-search-input--datepicker {
    padding: 0;
    margin-top: 1rem; }
  .nf-ng-car-search .nf-search-input--driverage {
    margin-left: 0; }
  .nf-ng-car-search .nf-search-input--submit {
    padding-left: 0; }
  .nf-ng-car-search .nf-datepicker .selector {
    padding-bottom: 4rem; } }

/* Hotel Search */
#react-hotel-search .initial-calendar-loading,
#react-holiday-search .initial-calendar-loading {
  background: white;
  margin: 0 1rem;
  border-radius: 4px;
  padding: 1rem; }

.nf-hotel-search .nf-search-input--first {
  border-bottom: 0; }

.nf-hotel-search .nf-search-input--departure .nf-form-field {
  margin-bottom: 0; }

.nf-hotel-search .nf-search-input--datepicker {
  margin-right: 0.5rem; }

.nf-hotel-search .nf-search-input--first input.react-autosuggest__input {
  border-radius: 4px;
  border-right: 0; }

.nf-hotel-search .nf-search-input--submit {
  padding-left: 1rem; }

.nf-hotel-search .ng-add-room,
.nf-hotel-search .ng-remove-room {
  position: relative;
  padding: 0.5rem 1rem;
  background: rgba(0, 0, 0, 0.1);
  cursor: pointer; }

.nf-hotel-search .ng-add-room--btn,
.nf-hotel-search .ng-remove-room--btn {
  margin-right: 0.75rem;
  width: 1.5rem;
  height: 1.5rem;
  -webkit-box-shadow: none;
          box-shadow: none; }

.nf-home .nf-holiday-search,
.nf-home .nf-hotel-search {
  /*margin-top: 2rem;*/
  margin: 0 1rem;
  background: #FFFFFF;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-top-right-radius: 4px;
  padding: 1rem 0; }

.nf-hotel-search-dest .nf-hotel-search {
  border-top-left-radius: 4px;
  margin: 0 1rem;
  background: #FFFFFF;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-top-right-radius: 4px;
  padding: 1rem 0; }

.nf-holiday-search-dest .nf-holiday-search {
  border-top-left-radius: 4px;
  margin: 0 1rem;
  background: #FFFFFF;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-top-right-radius: 4px;
  padding: 1rem 0; }

@media only screen and (max-width: 992px) {
  /* Hotel Search */
  .nf-hotel-search .nf-datepicker .selector {
    right: 0;
    /* Repositioned popup to prevent it overflowing body and breaking layout */
    top: 3rem; }
  .nf-hotel-search .nf-datepicker .selector:before {
    content: none;
    /* Removed arrow in this scenario as it's not possible to accurately line up with icon above (easily!) */ }
  .nf-hotel-search .nf-search-input--submit {
    padding-left: 0; } }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-hotel-search .nf-search-input--first {
    margin-bottom: 1rem;
    margin-right: 0.5rem; }
  .nf-hotel-search .nf-search-input--departure {
    margin: 0.5rem 0 1rem 0.5rem; }
  .nf-hotel-search .nf-search-input--passengers {
    margin: 0 0.5rem 0 0; }
  .nf-hotel-search .nf-search-input--submit {
    padding-left: 0.5rem;
    margin-top: 0; } }

@media only screen and (max-width: 600px) {
  .nf-hotel-search .nf-search-input--departure {
    margin: 0.5rem 0 1rem; }
  .nf-hotel-search .nf-search-input--passengers {
    margin: 0; }
  .nf-hotel-search .nf-search-input--first,
  .nf-hotel-search .nf-search-input--datepicker {
    margin: 0.5rem 0; }
  .nf-holiday-search .nf-search-input--departure .nf-form-field {
    margin-bottom: 0.25rem; } }

/* Travel Blog */
.nf-travel-blog-wrapper .nf-travel-blog-image {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden; }

.nf-travel-blog-wrapper .nf-travel-blog-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: left;
     object-position: left;
  /* Most images have title on left hand side */ }

.nf-travel-blog-wrapper .nf-travel-blog-content--date {
  color: #2dace3;
  font-size: 0.875rem;
  margin-bottom: 0.5rem;
  display: inline-block;
  white-space: nowrap; }

.nf-travel-blog-wrapper .nf-travel-blog-content--link {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  padding: 10.3125rem 1rem 0 1rem; }

.nf-travel-blog-wrapper .nf-travel-blog-content--title {
  font-size: 1rem;
  line-height: 1.3;
  max-height: 5rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  position: relative;
  color: #4a4a4a; }

@media only screen and (max-width: 600px) {
  .nf-travel-blog-wrapper .nf-carousel {
    height: 290px; } }

/* Continent - Trending cities */
.nf-hotel-map {
  width: 100%;
  height: 32rem;
  background: #EEEEEE; }

.nf-hotel-map-header {
  padding-top: 3rem; }

.nf-hotel-map-header h2 {
  text-align: left; }

.nf-hotel-map-header h2 span {
  color: #676767;
  margin-top: 0.25rem; }

.description-card-wrapper {
  color: #2dace3;
  position: relative;
  margin-bottom: 1.75rem; }

.d-c-header {
  position: relative;
  padding-left: 1.75rem;
  margin-top: 0.5rem;
  line-height: 1.2; }

.d-c-header img {
  position: absolute;
  top: 0;
  left: -0.125rem; }

.d-c-fare {
  font-size: 0.8125rem;
  color: #454545;
  margin: 0.25rem 0 1rem; }

.d-c-icon {
  height: 1.5rem;
  width: 1.5rem;
  margin-right: 0.5rem; }

@media only screen and (min-width: 993px) {
  .d-c-header {
    margin-top: 0; }
  /* Hotel Map */
  .d-c-wrapper {
    padding-left: 1.25rem; }
  .d-c-img {
    max-height: 5rem; } }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-hotel-map-header h2 {
    text-align: center; }
  .description-card-wrapper {
    padding: 0 0.5rem 2rem 0.5rem; }
  .d-c-header {
    margin-top: 0.75rem; } }

@media only screen and (max-width: 600px) {
  .nf-hotel-map-header h2 {
    font-size: 1.125rem; }
  .d-c-header {
    padding-left: 0;
    margin-bottom: 0.25rem; } }

/* Airline Header */
.nf-airline-header {
  padding-top: 4rem; }
  .nf-airline-header .nf-airline-header--wrap h1,
  .nf-airline-header .nf-airline-header--wrap h2 {
    text-align: center;
    margin: 0; }
  .nf-airline-header .nf-airline-header--wrap h2 {
    margin-top: 0.5rem; }
  .nf-airline-header .disclaimer {
    display: block;
    background-color: transparent; }
  .nf-airline-header .disclaimer:before {
    content: none; }
  .nf-airline-header .disclaimer p:before {
    content: '\002a';
    color: #FFFFFF;
    font-size: 1rem;
    line-height: 1;
    margin-right: 0.125rem;
    position: relative; }
  .nf-airline-header .disclaimer p {
    padding: 0 1rem;
    background-color: rgba(0, 0, 0, 0.4);
    border-radius: 8px;
    display: inline-block;
    line-height: 1.8; }

.nf-sitemap-all--link {
  text-align: center;
  padding-top: 2rem; }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-airline-header .nf-airline-header--wrap h1 {
    font-size: 2rem; }
  .nf-airline-header .nf-airline-header--wrap h2 {
    font-size: 1.5rem; } }

@media only screen and (max-width: 600px) {
  .nf-airline-header img {
    display: none; }
  .nf-airline-header .nf-airline-header--wrap {
    width: 100%;
    padding: 0; }
  .nf-airline-header .nf-airline-header--wrap h1,
  .nf-airline-header .nf-airline-header--wrap h2 {
    text-align: center; }
  .nf-airline-header .disclaimer {
    margin-top: 0; }
  .nf-airline-header .disclaimer p {
    color: #FFFFFF;
    line-height: 1.5;
    background-color: transparent; } }

/* Google Maps */
.nf-map {
  width: 100%;
  height: 374px;
  background: #EEEEEE; }

/* Google Map Tooltip - Flight Route */
.nf-map-info-window {
  padding: 0.5rem;
  min-width: 14rem; }

.nf-map-info-window.m--route {
  min-width: initial; }

.nf-map-info-window--title {
  font-weight: bold; }

.nf-map-info-window--text {
  margin: 0.375rem 0 1.125rem; }

.nf-map-info-window--priceprefix {
  font-size: 0.75rem;
  line-height: 1;
  display: block; }

.nf-map-info-window--price {
  font-size: 1.625rem;
  display: inline-block; }

.nf-map-info-window--pricesuffix {
  font-size: 0.75rem;
  line-height: 1;
  display: inline-block; }

.nf-map-info-window--disclaimer {
  margin: 0.75rem 0 0 0;
  color: #676767; }

@media only screen and (max-width: 600px) {
  .nf-map {
    height: 280px; } }

/* Welcome Intro Section */
.nf-welcome--section {
  padding: 0; }

.nf-sub-image-wrap {
  overflow: hidden;
  position: relative; }

.nf-sub-image-wrap img {
  height: 100%; }

.nf-welcome-text--split {
  padding: 3rem 1rem; }

.nf-welcome-text--split p,
.nf-welcome-text--split span {
  margin: 0;
  text-align: left !important;
  /* This is required to override Umbraco inline styles */ }

.nf-welcome-text--full {
  text-align: center; }

@media only screen and (min-width: 1381px) {
  .nf-welcome--section .nf-welcome-text--split {
    margin-left: 4rem;
    margin-right: 20%;
    /* Used % to keep gap to proportion of space available */
    line-height: 1.7; } }

@media only screen and (min-width: 993px) {
  .nf-welcome--section &gt; .row,
  .nf-welcome--section &gt; .row &gt; .col:last-of-type,
  .nf-welcome--section .nf-welcome-text--split,
  .nf-welcome--section .nf-welcome-text--split &gt; div {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .nf-welcome--section .nf-welcome-text--split {
    position: relative;
    overflow: hidden;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1; }
  .nf-welcome--section .nf-welcome-text--split &gt; div {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .nf-welcome-text--split {
    margin: 0 2rem; }
  .nf-welcome-text--split p {
    font-size: 0.8125rem; } }

@media only screen and (max-width: 992px) {
  .nf-welcome-text {
    padding-left: 0; } }

@media only screen and (max-width: 600px) {
  .nf-welcome-text {
    padding-left: 0; }
  .nf-welcome--section .nf-welcome-text--split &gt; div {
    position: relative; } }

/* Airline Images */
.nf-alternate-airlines--wrap {
  margin-left: -0.5rem;
  margin-right: -0.5rem; }

.nf-alternate-airlines a {
  width: 208px;
  height: 208px;
  line-height: 208px;
  margin: 0.5rem;
  overflow: hidden;
  float: left;
  display: block; }

.nf-alternate-airlines img {
  width: 100%;
  -webkit-transition: -webkit-transform ease 300ms;
  transition: -webkit-transform ease 300ms;
  transition: transform ease 300ms;
  transition: transform ease 300ms, -webkit-transform ease 300ms;
  display: inline-block;
  vertical-align: middle;
  -webkit-font-smoothing: subpixel-antialiased;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translateZ(0) scale(1);
          transform: translateZ(0) scale(1); }

.nf-alternate-airlines img:hover,
.nf-alternate-airlines img:focus {
  -webkit-transform: translateZ(0) scale(1.025);
          transform: translateZ(0) scale(1.025); }

.nf-alternate-airlines svg {
  width: 100%;
  -webkit-transition: -webkit-transform ease 300ms;
  transition: -webkit-transform ease 300ms;
  transition: transform ease 300ms;
  transition: transform ease 300ms, -webkit-transform ease 300ms;
  display: inline-block;
  vertical-align: middle;
  -webkit-font-smoothing: subpixel-antialiased;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translateZ(0) scale(1);
          transform: translateZ(0) scale(1); }

.nf-alternate-airlines svg:hover,
.nf-alternate-airlines svg:focus {
  -webkit-transform: translateZ(0) scale(1.025);
          transform: translateZ(0) scale(1.025); }

/* Home Page Header Links */
.nf-home .nav-wrapper .nav-wrapper {
  overflow: hidden; }

.nf-home .nf-nav-links {
  width: 100%;
  margin-left: 1rem;
  position: absolute;
  left: 0;
  top: 15rem;
  text-align: left;
  overflow: hidden;
  height: auto;
  line-height: 1; }

.nf-home .nf-ul-pad {
  top: 13rem;
  padding-top: 2rem; }

.nf-home .nf-nav-links .tab {
  float: none;
  height: auto;
  line-height: 1;
  padding-bottom: 0.5rem;
  display: inline-block;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex; }

.nf-home .nf-nav-links .nf-li-v2 {
  float: left; }

.nf-home .nf-nav-links .tab .nf-tab-offer {
  position: absolute;
  bottom: 57%;
  background: #C0FF02;
  overflow: hidden;
  padding: 4px;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px; }
  .nf-home .nf-nav-links .tab .nf-tab-offer span {
    color: #1A6788;
    font-size: 12px;
    font-weight: 600;
    line-height: 18px;
    letter-spacing: 0em;
    text-align: center; }

.nf-tab-offer-wd {
  width: 60px; }

.nf-tab-offer-wdholidays {
  width: 95px; }

.nf-tab-offer-wdhotels {
  width: 59px; }

.nf-tab-offer-wdcar-hire {
  width: 65px; }

.nf-home .nf-nav-links .tab .nf-tabs-v2 {
  color: #53657B;
  background: #F6F6F6;
  padding: 8px 12px;
  margin-bottom: 0rem;
  margin-right: 1.1px;
  /*border-radius: 4px;*/
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
  letter-spacing: 0em;
  text-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .nf-home .nf-nav-links .tab .nf-tabs-v2.tab-item-1 {
    border-top-left-radius: 4px; }
  .nf-home .nf-nav-links .tab .nf-tabs-v2.tab-item-4 {
    border-top-right-radius: 4px; }
  .nf-home .nf-nav-links .tab .nf-tabs-v2.active {
    color: #283E5A;
    background: #FFFFFF;
    font-weight: 600; }
  .nf-home .nf-nav-links .tab .nf-tabs-v2:hover {
    color: #53657B; }

.nf-home .nf-nav-links .tab a {
  padding: 0;
  line-height: 1.4; }

.nf-nav-links .tab a:nth-child(2) {
  min-width: 95px; }

.nf-home header nav .nf-nav-links {
  position: static;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  -webkit-transition: all ease 200ms;
  transition: all ease 200ms;
  will-change: transform,opacity;
  text-align: left;
  padding-left: 10rem; }

header nav .nf-nav-links .indicator {
  display: none; }

.nf-home header nav .nf-nav-links .indicator {
  background-color: #FFFFFF; }

.nf-home header nav .nf-nav-links .tab {
  padding-bottom: 0; }

.nf-home header nav .nf-nav-links .tab a {
  line-height: 56px; }

.nf-home header nav.nf-navbar--scrolled .nf-nav-links {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
          transform: translateY(0); }

@media only screen and (max-width: 285px) {
  .nf-home .nf-nav-links .tab .nf-tab-offer {
    bottom: 70%; } }

@media only screen and (max-width: 992px) {
  .nf-home header nav {
    border-top: 3px solid #2dace3; }
  .nf-home .nf-nav-links {
    top: 4rem;
    display: block; }
    .nf-home .nf-nav-links svg:last-of-type {
      margin-right: 0; }
    .nf-home .nf-nav-links svg {
      margin-top: 0.625rem;
      margin-bottom: 0.5rem; }
  /*.nf-home .nf-ul-pad{
        padding-top: 0;
    }*/
  /*.nf-home .nf-nav-links .tab .nf-tab-offer {
        display: none;
    }*/
  .nf-home .nf-nav-links .tab a {
    margin-right: 1rem;
    font-size: 0.875rem;
    overflow: visible;
    line-height: 1;
    padding-bottom: 0.125rem;
    display: block; }
    .nf-home .nf-nav-links .tab a span {
      display: block; }
  .nf-home .nf-mobile-nav + .button-collapse {
    position: absolute;
    top: 0;
    left: 0; }
  .nf-home header nav .nf-nav-links {
    display: none; } }

@media only screen and (min-width: 1381px) {
  .nf-home .nf-nav-links {
    position: relative; } }

/* Price module - Refactor to BEM */
.nf-price-item {
  color: #454545;
  max-height: 2.6875rem;
  overflow: hidden; }
  .nf-price-item--prefix {
    display: block;
    font-size: 0.8125rem;
    line-height: 1; }
  .nf-price-item--price {
    font-size: 1.375rem;
    display: inline-block;
    line-height: 1.25;
    font-weight: bold; }
  .nf-price-item--suffix {
    font-size: 0.8125rem;
    display: inline-block; }
  .nf-price-item--noprice {
    line-height: 2.5625rem;
    vertical-align: middle;
    white-space: normal;
    padding-right: 0.5rem;
    display: inline-block;
    height: 2.5625rem; }
    .nf-price-item--noprice span {
      display: inline-block;
      line-height: 1;
      vertical-align: middle; }

.nf-flight-price-item--col {
  -webkit-column-count: 3;
  -moz-column-count: 3;
  column-count: 3;
  padding: 0 1rem;
  padding-top: 1px;
  /* To allow for box shadow on children */ }

.nf-flight-price-item--col .nf-flight-price-item {
  margin-top: 0; }

.nf-flight-price-item {
  color: #454545;
  position: relative;
  padding: 1rem;
  border-bottom: 2px solid #CFCFCF;
  background: #FFFFFF;
  border-radius: 3px;
  margin-top: 0;
  margin-bottom: 0.5rem;
  -webkit-box-shadow: 0 0 0 1px #EEEEEE;
          box-shadow: 0 0 0 1px #EEEEEE;
  height: 75px;
  display: block;
  -webkit-transition: all ease 400ms;
  transition: all ease 400ms;
  z-index: 1;
  -moz-column-break-inside: avoid;
       break-inside: avoid-column;
  -webkit-column-break-inside: avoid;
  -webkit-backface-visibility: hidden;
  page-break-inside: avoid; }
  .nf-flight-price-item .nf-btn-wrap {
    position: relative;
    overflow: hidden; }

.nf-flight-price-item:hover,
.nf-flight-price-item:focus {
  -webkit-box-shadow: 0 0 0 1px #CFCFCF;
          box-shadow: 0 0 0 1px #CFCFCF; }

.nf-flight-price-item-name {
  line-height: 1.2;
  display: inline-block; }

.nf-flight-price-item--link {
  color: #454545;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 1rem;
  line-height: 2.5625rem;
  z-index: 1; }

.nf-flight-price-item--link &gt; span {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  padding-right: 60%; }

.nf-flight-price-item--link &gt; span &gt; span {
  color: #333; }

@media only screen and (max-width: 1380px) {
  .nf-flight-price-item--col {
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2; } }

@media only screen and (max-width: 992px) {
  /* Price Item Widget */
  .nf-price-item--suffix {
    display: none; }
  .nf-flight-price-item {
    margin-bottom: 0;
    margin-top: 0;
    border-radius: 0; }
  .nf-flight-price-item-wrap {
    overflow: hidden; }
  .nf-flight-price-item-wrap + .nf-flight-price-item-wrap {
    margin-top: 3rem; }
  .nf-flight-price-item--col {
    -webkit-column-count: 1;
    -moz-column-count: 1;
    column-count: 1;
    padding: 1px 10%; } }

@media only screen and (max-width: 600px) {
  .nf-flight-price-item--col {
    padding: 0; }
  .nf-price-item--noprice {
    font-size: 0.875rem; }
  .nf-price-item--price {
    font-size: 1.25rem; }
  .nf-flight-price-item {
    margin-top: 0;
    margin-bottom: 0;
    border-radius: 0;
    margin-left: -1rem;
    margin-right: -1rem;
    border-bottom-width: 1px;
    border-color: #EEEEEE; }
    .nf-flight-price-item .nf-btn-wrap:after {
      content: '\203A';
      color: #2dace3;
      position: absolute;
      right: -0.5rem;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      font-size: 2rem;
      line-height: 1; }
    .nf-flight-price-item .nf-btn-wrap &gt; span {
      padding: 0; }
  .nf-flight-price-item--link &gt; span {
    font-size: 0.875rem;
    line-height: 1.2;
    padding-right: initial;
    width: 40%; }
  .nf-flight-price-item--col .nf-flight-price-item {
    margin: 0; } }

.nf-home-copy .container {
  overflow: visible; }

.nf-home-copy--wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }

.nf-home-copy--item {
  width: 25%;
  text-align: center;
  padding: 2rem;
  position: relative; }

.nf-home-copy--item svg {
  fill: #2dace3;
  height: 4rem;
  width: 4rem;
  margin: 2rem 0 3rem; }

.nf-home-copy--item .nf-home-copy--title {
  color: #2dace3;
  text-align: left;
  font-weight: normal;
  font-size: 1.125rem;
  line-height: 1.5;
  font-family: "Roboto", Arial, sans-serif; }

.nf-home-copy--item .nf-home-copy--content {
  text-align: left;
  font-size: 0.9375rem; }

@media only screen and (min-width: 993px) {
  .nf-home-copy--item .nf-home-copy--title {
    text-align: center; } }

@media only screen and (max-width: 992px) {
  /* Home SEO Copy */
  .nf-home-copy--wrap {
    margin-top: -3rem;
    margin-bottom: -3rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.075); }
  .nf-home-copy--item {
    width: 50%;
    padding: 2rem;
    border-top: 1px solid rgba(0, 0, 0, 0.075);
    /* Refactor */
    border-right: 1px solid rgba(0, 0, 0, 0.075);
    text-align: left; }
  .nf-home-copy--item:nth-child(even) {
    border-right: 0; }
  .nf-home-copy--item svg {
    float: left;
    font-size: 2rem;
    margin: 0;
    margin-right: 1rem;
    margin-top: -0.25rem; }
  .nf-home-copy--item svg {
    height: 2rem;
    width: 2rem; }
  .nf-home-copy--item .nf-home-copy--title {
    line-height: 1.2;
    display: inline;
    font-size: 1rem; }
  .nf-home-copy--item .nf-home-copy--content {
    padding-left: 3rem; }
  .nf-home-copy--item .nf-home-copy--content p {
    font-size: 0.825rem;
    margin-bottom: 0; } }

@media only screen and (max-width: 600px) {
  .nf-home-copy--wrap {
    display: block; }
  .nf-home-copy--item {
    width: 100%;
    padding: 1rem;
    border-right: 0; } }

.disclaimer {
  padding: 0 1rem;
  background-color: rgba(0, 0, 0, 0.4);
  margin-top: 0.5rem;
  border-radius: 8px;
  display: inline-block; }
  .disclaimer:before {
    content: '\002a';
    color: #FFFFFF;
    font-size: 1rem;
    line-height: 1;
    margin-right: 0.125rem;
    position: relative; }
  .disclaimer p {
    display: inline;
    line-height: 1.2;
    margin: 0;
    font-size: 0.875rem;
    color: #EEEEEE;
    position: relative; }
  .disclaimer span {
    display: block;
    line-height: 1;
    margin: 0;
    font-size: 0.75rem;
    margin-top: 0.725rem;
    color: #CFCFCF;
    display: none;
    /* Asked to be removed */ }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-intro-panel + .disclaimer {
    margin-top: 0; } }

@media only screen and (max-width: 600px) {
  .disclaimer {
    padding: 0;
    background-color: transparent;
    border-radius: 0;
    line-height: 1; }
  .disclaimer p {
    font-size: 0.75rem; } }

.nf-image-overlay-location {
  position: absolute;
  top: 0.625rem;
  left: 0.625rem;
  line-height: 1.375rem;
  color: #FFFFFF;
  font-size: 0.75rem;
  background: rgba(0, 0, 0, 0.65);
  padding: 0 0.75rem 0 1.5rem;
  border-radius: 3px; }

.nf-image-overlay-location.m--large {
  top: 1.125rem;
  left: 1.125rem; }

.nf-image-overlay-location--icon {
  color: #2dace3;
  font-size: 0.625rem;
  position: absolute;
  top: 0.375rem;
  left: 0.5rem; }

.nf-image-card-wrapper .card .card-content .nf-image-card--desc &gt; span:nth-child(3) {
  display: block;
  font-weight: normal;
  color: #676767;
  font-size: 0.75rem;
  margin-top: 0.15rem; }

/* General card styles to refactor */
.nf-image-card-wrapper .card {
  border-bottom: none;
  border-radius: 0; }

.nf-image-card-wrapper .card .card-content &gt; a:first-of-type {
  color: #454545;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 1rem;
  z-index: 1; }

.nf-image-card-wrapper .card .card-content a:hover,
.nf-image-card-wrapper .card .card-content a:focus {
  -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 1px rgba(0, 0, 0, 0.2); }

.nf-image-card-wrapper .card .card-content .call-to-action a {
  color: #FFFFFF;
  padding: 0;
  position: initial; }

.nf-image-card-wrapper .card .card-image + .card-content {
  position: static;
  max-height: 60%;
  padding: 14px 16px; }

.nf-image-card-wrapper .nf-image-card--title {
  font-size: 0.9375rem;
  line-height: 1.25rem;
  height: 2.5rem;
  overflow: hidden;
  position: relative;
  top: 7.5rem;
  display: inline-block; }

.nf-image-card-wrapper .nf-image-card--desc {
  font-size: 1rem;
  height: 2.25rem;
  line-height: 1.1rem;
  margin-bottom: 0.625rem;
  margin-top: 3.25rem;
  font-weight: bold; }

.nf-image-card-wrapper .card.override-card .card-content .nf-image-card--desc {
  margin-top: 2.70rem; }

.nf-image-card-wrapper .card .card-content .nf-image-card--desc span.noprice {
  height: 2.25rem;
  line-height: 2.25;
  display: inline-block; }

/* Image card module - Refactor */
.nf-image-card-wrapper {
  width: 208px;
  margin-right: 1rem;
  cursor: pointer;
  float: left; }
  .nf-image-card-wrapper.m--large {
    width: 432px; }

.nf-image-card-wrapper-large {
  width: 432px; }

.carousel-cell:last-of-type .nf-image-card-wrapper {
  margin-right: 0;
  /* Fix to prevent last cell dropping to next line */ }

.nf-image-card-wrapper.item-0 {
  margin-left: 1rem; }

/* Card image loading overlay - Refactor */
.nf-image-card-wrapper .overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: transparent;
  -webkit-transition: all ease 300ms;
  transition: all ease 300ms;
  background: radial-gradient(ellipse at center, transparent 0%, rgba(0, 0, 0, 0.1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=1 );
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  z-index: 1; }

.nf-image-card-wrapper:hover .lazyloaded ~ .overlay,
.nf-image-card-wrapper:focus .lazyloaded ~ .overlay {
  background: radial-gradient(ellipse at center, transparent 0%, rgba(0, 0, 0, 0.5) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=1 ); }

.nf-image-card-wrapper.m--large .card {
  height: 100%; }
  .nf-image-card-wrapper.m--large .card .card-image + .card-content {
    padding: 1rem; }

.nf-image-card-wrapper.m--large .card-image {
  height: 249px;
  max-height: none; }

.nf-image-card-wrapper.m--large .nf-image-card--desc {
  height: 7rem;
  margin: 0;
  margin-top: 3rem; }

.nf-image-card-wrapper.m--large .nf-image-card--title {
  font-size: 1.125rem;
  font-weight: bold;
  height: 2.75rem;
  line-height: 1.25;
  top: 15.5625rem; }

.nf-image-card-wrapper.m--large .price-info {
  display: block;
  margin-bottom: 0.5rem; }
  .nf-image-card-wrapper.m--large .price-info span:last-child {
    font-size: 0.8125rem; }

.nf-image-card-wrapper.m--large .more-info {
  font-weight: normal; }
  .nf-image-card-wrapper.m--large .more-info span {
    color: #676767;
    display: block;
    font-size: 0.8125rem;
    line-height: 1.2rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }

.nf-image-card-wrapper.m--large .call-charges-text {
  position: absolute;
  bottom: 0;
  font-size: 0.6875rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: calc(100% - 2rem); }

.nf-card-image-text-overlay {
  color: #EEEEEE;
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 1rem;
  left: 0;
  border-bottom-right-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
  padding: 0.5rem 1rem;
  width: 20rem;
  max-width: calc(100% - 1rem);
  line-height: 1.3;
  -webkit-backdrop-filter: blur(1px);
          backdrop-filter: blur(1px); }

/* Most Popular Carousel Cards (4* 5* holidays) on City Holiday Pages*/
.nf-carousel--cards.nf-popular-items {
  height: 340px; }
  .nf-carousel--cards.nf-popular-items .card {
    height: 314px; }
    .nf-carousel--cards.nf-popular-items .card .card-content .nf-image-card--title {
      font-weight: bold; }
  .nf-carousel--cards.nf-popular-items .nf-image-card-wrapper .card .card-content .nf-image-card--desc {
    height: auto; }
    .nf-carousel--cards.nf-popular-items .nf-image-card-wrapper .card .card-content .nf-image-card--desc span:nth-child(3) {
      display: inline; }
    .nf-carousel--cards.nf-popular-items .nf-image-card-wrapper .card .card-content .nf-image-card--desc span.more-info {
      display: block;
      font-size: 0.75rem;
      font-weight: normal;
      margin-top: 0.4rem;
      color: #ACACAC;
      line-height: 1.2;
      height: 28px; }
      .nf-carousel--cards.nf-popular-items .nf-image-card-wrapper .card .card-content .nf-image-card--desc span.more-info span {
        display: block; }

@media only screen and (max-width: 600px) {
  .nf-image-card-wrapper.m--large {
    width: 300px; }
    .nf-image-card-wrapper.m--large .nf-image-card--title {
      top: 10.8125rem; }
    .nf-image-card-wrapper.m--large .card-image {
      height: 173px; }
    .nf-image-card-wrapper.m--large .more-info span {
      font-size: 0.6875rem; } }

/* Lazy Loading Effects */
.lazyload,
.lazyloading,
.lazyloaded {
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  will-change: opacity; }

.lazyload,
.lazyloading {
  opacity: 0; }

.lazyloaded {
  opacity: 1 !important;
  /* To overwrite parallax plugin */
  -webkit-transition: all ease 1000ms;
  transition: all ease 1000ms; }

.parallax .lazyloaded {
  -webkit-transition: opacity ease 1000ms;
  transition: opacity ease 1000ms; }

.waves-effect.waves-blue.waves-ripple {
  background-color: rgba(20, 137, 184, 0.65); }

body.premium {
  /*General Styles*/
  background: #1d1d1d;
  /*General Styles End*/
  /* Common carousel*/
  /* Overriding Common Style*/
  /* Section HeaderStyles*/
  /*Navigation Bar Styles*/
  /*Header section*/
  /*Breadcrumb section*/
  /*Homepage Cabin classes*/
  /*Cabin classes page*/
  /*Intro Section*/
  /*Features Section*/
  /*Additional features section*/
  /*Promoted Airlines Section*/
  /*Trending section*/
  /*USP Section*/
  /*Phone Number Section*/
  /*BlogSection*/
  /*Footer Section*/ }
  body.premium h1, body.premium h2, body.premium h3 {
    color: #FFFFFF; }
  body.premium h2 {
    font-size: 0.875rem;
    font-weight: normal; }
  body.premium .hasImageAnimation {
    overflow: hidden; }
    body.premium .hasImageAnimation:hover img,
    body.premium .hasImageAnimation:focus img {
      -webkit-transform: scale(1.025);
              transform: scale(1.025); }
  body.premium .premium-no-image {
    width: 100%;
    height: 100%;
    background: #252929;
    position: relative; }
  body.premium section {
    color: #EEEEEE;
    padding-top: 2rem;
    padding-bottom: 2rem;
    /* Show on Large Devices */ }
    body.premium section.has-carousel div.container {
      overflow: visible; }
    body.premium section.has-carousel .flickity-button {
      top: 40%;
      background: transparent; }
      body.premium section.has-carousel .flickity-button.flickity-prev-next-button {
        -webkit-box-shadow: none;
                box-shadow: none; }
        body.premium section.has-carousel .flickity-button.flickity-prev-next-button.previous {
          left: -5rem; }
        body.premium section.has-carousel .flickity-button.flickity-prev-next-button.next {
          right: -5rem; }
        body.premium section.has-carousel .flickity-button.flickity-prev-next-button .arrow {
          fill: #FFFFFF; }
    body.premium section.has-carousel .flickity-page-dots {
      bottom: 0; }
      body.premium section.has-carousel .flickity-page-dots .dot {
        background: #FFFFFF;
        height: 12px;
        width: 12px;
        opacity: 1; }
      body.premium section.has-carousel .flickity-page-dots .dot.is-selected {
        background: #2dace3; }
    body.premium section .flickity-button, body.premium section .flickity-page-dots, body.premium section .flickity-prev-next-button {
      display: none; }
    body.premium section .nf-carousel .nf-premium-card-wrapper {
      margin-right: 1rem;
      background-color: #121212; }
      body.premium section .nf-carousel .nf-premium-card-wrapper.large3 {
        width: 316px; }
      body.premium section .nf-carousel .nf-premium-card-wrapper.large4 {
        width: 432px; }
      body.premium section .nf-carousel .nf-premium-card-wrapper .nf-premium-card-image img {
        width: 100%;
        height: 100%;
        display: block; }
      body.premium section .nf-carousel .nf-premium-card-wrapper .nf-premium-card-image svg {
        width: 100%;
        height: auto; }
      body.premium section .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content {
        width: 100%;
        overflow: hidden; }
        body.premium section .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content h3 {
          font-weight: bold;
          font-size: 1.25rem;
          padding-bottom: 11px; }
        body.premium section .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content p {
          color: #dcd7d7;
          font-size: 0.9375rem;
          line-height: 1.5rem;
          margin-top: 0.5rem; }
    body.premium section.npb-large .flickity-button, body.premium section.npb-large .flickity-page-dots, body.premium section.npb-large .flickity-prev-next-button {
      display: block; }
  body.premium section:nth-of-type(odd) {
    background: #1d1d1d;
    z-index: 1;
    position: relative; }
  body.premium .nf-section-header {
    color: #FFFFFF;
    margin-bottom: 3rem;
    text-align: center; }
    body.premium .nf-section-header h3 {
      margin-top: 0.8rem;
      font-size: 1.875rem;
      font-weight: bold; }
    body.premium .nf-section-header .pre-header {
      font-size: 0.75rem;
      margin: .3rem 0;
      letter-spacing: 0.4rem;
      text-transform: uppercase; }
    body.premium .nf-section-header .post-header {
      margin-top: 0.8rem;
      font-size: 0.875rem; }
  body.premium nav {
    background: #1d1d1d; }
    body.premium nav .nf-logo img, body.premium nav .nf-logo svg {
      width: 160px; }
  body.premium .header-section h1 {
    font-size: 3.75rem;
    font-weight: bold;
    padding-bottom: 10px; }
  body.premium .header-section h2 {
    font-size: 1.875rem;
    font-weight: bold;
    font-family: "Roboto", Arial, sans-serif; }
  body.premium .nf-breadcrumb {
    padding-top: 2rem; }
    body.premium .nf-breadcrumb .nf-breadcrumb-item span {
      font-size: 1rem; }
    body.premium .nf-breadcrumb ol li:last-child span {
      color: #FFFFFF; }
  body.premium .nf-premium-cabin-classes .nf-carousel {
    padding-bottom: 3rem; }
    body.premium .nf-premium-cabin-classes .nf-carousel .nf-premium-card-image {
      height: 256px; }
      body.premium .nf-premium-cabin-classes .nf-carousel .nf-premium-card-image a {
        position: relative;
        display: block; }
        body.premium .nf-premium-cabin-classes .nf-carousel .nf-premium-card-image a .nf-image-overlay--text {
          line-height: 3rem;
          font-size: 1.125rem;
          width: 100%;
          bottom: 0;
          padding: 0 1.5rem 0 1.5rem;
          left: 0;
          background: rgba(0, 0, 0, 0.7);
          color: #FFFFFF;
          position: absolute; }
        body.premium .nf-premium-cabin-classes .nf-carousel .nf-premium-card-image a .nf-image-overlay--icon {
          color: #2dace3;
          fill: #2dace3;
          font-size: 2.25rem;
          position: absolute;
          bottom: 0.375rem;
          right: 5px; }
          body.premium .nf-premium-cabin-classes .nf-carousel .nf-premium-card-image a .nf-image-overlay--icon svg {
            width: 2rem;
            height: 2rem; }
  body.premium .nf-premium-cabin-wrapper .cabin-class-card {
    background-color: #121212;
    overflow: hidden;
    padding: 15px;
    height: 100%;
    margin-right: 1rem;
    -webkit-transition: all ease 200ms;
    transition: all ease 200ms; }
    body.premium .nf-premium-cabin-wrapper .cabin-class-card h3 {
      padding-bottom: 7px;
      text-align: left;
      color: #FFFFFF;
      font-weight: bold;
      font-size: 1.25rem; }
    body.premium .nf-premium-cabin-wrapper .cabin-class-card div.content {
      font-size: 0.875rem;
      color: #b4b4b4;
      font-weight: unset;
      text-align: left;
      height: 65px;
      overflow: hidden; }
    body.premium .nf-premium-cabin-wrapper .cabin-class-card.active {
      background-color: #2dace3; }
      body.premium .nf-premium-cabin-wrapper .cabin-class-card.active div.content {
        color: #FFFFFF; }
  body.premium .nf-premium-cabin-wrapper .cabin-class-card:hover {
    background-color: #0D699A; }
    body.premium .nf-premium-cabin-wrapper .cabin-class-card:hover div.content {
      color: #FFFFFF; }
  body.premium .nf-premium-cabin-wrapper .row .col:last-child .cabin-class-card {
    margin-right: 0rem; }
  body.premium .nf-premium-intro .nf-sub-image, body.premium .nf-premium-intro .intro-media.video {
    height: 340px; }
  body.premium .nf-premium-intro .intro-media {
    position: relative;
    overflow: hidden; }
    body.premium .nf-premium-intro .intro-media iframe {
      width: 100%;
      height: 100%;
      border: none; }
  body.premium .nf-premium-intro .premium-intro-text {
    color: #dcd7d7;
    padding: 1.5rem 3rem 1.5rem 2rem; }
    body.premium .nf-premium-intro .premium-intro-text h3 {
      font-size: 2.25rem; }
    body.premium .nf-premium-intro .premium-intro-text .nf-section-header {
      text-align: left;
      margin-bottom: 2rem; }
    body.premium .nf-premium-intro .premium-intro-text .sub-header-text {
      line-height: 1.7; }
  body.premium .nf-premium-intro.text-only .premium-intro-text {
    height: 100%; }
  body.premium .nf-premium-intro.text-only .header {
    text-align: center; }
  body.premium .nf-premium-intro.text-only h2 {
    text-align: center !important; }
  body.premium .nf-premium-feature-section .nf-premium-card-wrapper .nf-premium-card-image {
    height: 309px;
    max-height: 100%; }
  body.premium .nf-premium-feature-section .nf-premium-card-wrapper .nf-premium-card-content {
    background-color: #121212;
    height: 240px;
    overflow: hidden;
    padding: 35px 25px 25px; }
  body.premium .nf-premium-additional-feature-section .nf-carousel {
    padding-bottom: 3rem; }
  body.premium .nf-premium-additional-feature-section .nf-premium-card-wrapper .nf-premium-card-image {
    height: 172px;
    max-height: 100%; }
    body.premium .nf-premium-additional-feature-section .nf-premium-card-wrapper .nf-premium-card-image img {
      height: 100%; }
  body.premium .nf-premium-additional-feature-section .nf-premium-card-wrapper .nf-premium-card-content {
    background-color: #121212;
    height: 200px;
    overflow: hidden;
    padding: 25px; }
    body.premium .nf-premium-additional-feature-section .nf-premium-card-wrapper .nf-premium-card-content p {
      font-weight: unset;
      max-height: 7.5rem;
      overflow: hidden; }
  body.premium .nf-premium-additional-feature-section .flickity-slider div:last-of-type .nf-premium-card-wrapper {
    margin-right: 0; }
  body.premium #nf-premium-promoted-airlines-section .nf-section-header {
    padding-bottom: 1rem; }
    body.premium #nf-premium-promoted-airlines-section .nf-section-header .pre-header {
      text-align: center;
      color: #dcd7d7; }
  body.premium #nf-premium-promoted-airlines-section .nf-premium-airlines-section .nf-carousel {
    height: 230px; }
  body.premium .nf-premium-trending-destination-section .ptd-destination-wrapper {
    padding-right: 3rem; }
    body.premium .nf-premium-trending-destination-section .ptd-destination-wrapper ul li:first-child {
      color: #2dace3;
      font-weight: bold;
      font-size: 1.125rem; }
      body.premium .nf-premium-trending-destination-section .ptd-destination-wrapper ul li:first-child a {
        text-decoration: underline; }
    body.premium .nf-premium-trending-destination-section .ptd-destination-wrapper ul li {
      padding: 8px 0px;
      border-bottom: 1px dashed #FFFFFF;
      font-weight: bold;
      font-size: 1rem; }
      body.premium .nf-premium-trending-destination-section .ptd-destination-wrapper ul li span, body.premium .nf-premium-trending-destination-section .ptd-destination-wrapper ul li a {
        font-size: 1rem;
        float: right; }
  body.premium .nf-premium-trending-destination-section .row .col:nth-child(3) .ptd-destination-wrapper {
    padding-right: 0rem; }
  body.premium #nf-premium-usp-section {
    background: #121212;
    padding-top: 2rem;
    padding-bottom: 1rem; }
  body.premium .nf-premium-usp {
    border-bottom: 2px solid #393939;
    height: 12rem; }
    body.premium .nf-premium-usp .nf-carousel {
      padding-bottom: 3rem; }
      body.premium .nf-premium-usp .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center; }
        body.premium .nf-premium-usp .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content svg, body.premium .nf-premium-usp .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content img {
          width: 7rem;
          height: 7rem;
          position: relative; }
        body.premium .nf-premium-usp .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content .text-only {
          text-align: center;
          width: 100%;
          padding: 0 10px; }
        body.premium .nf-premium-usp .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content .text {
          text-align: left;
          padding: 0.25rem 0 0 1rem; }
        body.premium .nf-premium-usp .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content .title, body.premium .nf-premium-usp .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content .sub-text {
          vertical-align: middle;
          width: 100%; }
        body.premium .nf-premium-usp .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content .title {
          line-height: 1rem;
          font-weight: bold;
          margin: 0.875rem 0;
          font-size: 1.25rem;
          color: #FFFFFF; }
        body.premium .nf-premium-usp .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content p {
          margin: 0.875rem 0; }
        body.premium .nf-premium-usp .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content .sub-text {
          font-size: 1rem;
          color: #EEEEEE;
          line-height: 1.25rem; }
  body.premium #premium-cabin-class + #nf-premium-phone-number {
    padding-top: 1.5rem;
    position: relative; }
  body.premium #nf-premium-phone-number {
    background-color: #121212;
    padding-top: 1rem; }
  body.premium .nf-premium-phone-number .phone-message {
    color: #EEEEEE;
    font-size: 1.875rem; }
  body.premium .nf-premium-phone-number .phone-number {
    color: #FFFFFF;
    font-size: 3rem;
    line-height: 2.75rem; }
  body.premium .nf-premium-phone-number .alternative-message {
    font-size: 0.75rem;
    color: #EEEEEE;
    margin-top: 4px; }
    body.premium .nf-premium-phone-number .alternative-message .value {
      color: #2dace3; }
  body.premium #nf-premium-blog-links {
    padding-bottom: 0rem;
    padding-top: 3rem; }
    body.premium #nf-premium-blog-links .nf-carousel {
      padding-bottom: 3rem; }
  body.premium .nf-premium-travel-blog .nf-carousel .nf-premium-card-wrapper {
    border-bottom: 2px solid #121212;
    -webkit-box-shadow: 0 0 1px 0 #121212;
            box-shadow: 0 0 1px 0 #121212;
    background: #121212;
    width: 311px; }
    body.premium .nf-premium-travel-blog .nf-carousel .nf-premium-card-wrapper .nf-premium-card-image {
      height: 230px;
      max-height: 60%; }
      body.premium .nf-premium-travel-blog .nf-carousel .nf-premium-card-wrapper .nf-premium-card-image img {
        -o-object-fit: fill;
           object-fit: fill; }
    body.premium .nf-premium-travel-blog .nf-carousel .nf-premium-card-wrapper .nf-premium-card-image + .nf-premium-card-content {
      position: static;
      max-height: 40%; }
    body.premium .nf-premium-travel-blog .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content {
      padding: 20px;
      height: 140px; }
      body.premium .nf-premium-travel-blog .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content p {
        margin: 5px 0; }
      body.premium .nf-premium-travel-blog .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content .nf-travel-blog-content--title {
        color: #EEEEEE;
        top: 17rem;
        line-height: 1.5; }
      body.premium .nf-premium-travel-blog .nf-carousel .nf-premium-card-wrapper .nf-premium-card-content .nf-travel-blog-content--date {
        color: #FFFFFF;
        font-weight: bold;
        font-size: 1.25rem; }
  body.premium #nf-premium-blog-links + footer {
    padding-top: 2rem; }
  body.premium footer {
    padding-top: 0rem; }
  body.premium .nf-footer-middle {
    background: #121212; }
  body.premium .nf-footer-middle ul &gt; li &gt; a {
    color: #EEEEEE; }
  @media only screen and (min-width: 1381px) {
    body.premium {
      /* Show on Large Devices */ }
      body.premium section.has-carousel.nbp-large .flickity-button, body.premium section.has-carousel.nbp-large .flickity-page-dots, body.premium section.has-carousel.nbp-large .flickity-prev-next-button {
        display: block; }
      body.premium .nf-premium-usp {
        margin-top: 2rem; } }
  @media only screen and (max-width: 1380px) {
    body.premium {
      /* Search Controls*/
      /* Section Change*/
      /*Header section*/ }
      body.premium .nf-ng-search &gt; .container &gt; .row &gt; .col {
        padding: 0 2rem; }
      body.premium section .container .row .col.s12 {
        padding: 0 3rem; }
      body.premium section .nf-carousel .nf-premium-card-wrapper.medium6 {
        width: 316px; }
      body.premium section .nf-carousel .nf-premium-card-wrapper.medium8 {
        width: 432px; }
      body.premium section .nf-carousel .nf-premium-card-wrapper.medium12 {
        width: 664px; }
      body.premium section.has-carousel.npb-medium .flickity-button, body.premium section.has-carousel.npb-medium .flickity-page-dots, body.premium section.has-carousel.npb-medium .flickity-prev-next-button {
        display: block; }
      body.premium section.has-carousel.npb-medium .nf-carousel .flickity-button.flickity-prev-next-button.previous {
        left: -3rem; }
      body.premium section.has-carousel.npb-medium .nf-carousel .flickity-button.flickity-prev-next-button.next {
        right: -3rem; }
      body.premium .header-section {
        margin-top: 1rem; }
        body.premium .header-section h2 {
          font-size: 1rem; }
        body.premium .header-section h1 {
          font-size: 1.75rem; }
      body.premium .nf-breadcrumb {
        padding: 1.25rem 0; }
      body.premium .nf-premium-cabin-classes .nf-carousel .nf-premium-card-image {
        height: 256px; }
      body.premium .nf-premium-feature-section .nf-carousel, body.premium .nf-premium-additional-feature-section .nf-carousel {
        padding-bottom: 3rem; }
      body.premium .nf-premium-feature-section .nf-premium-card-wrapper .nf-premium-card-image, body.premium .nf-premium-additional-feature-section .nf-premium-card-wrapper .nf-premium-card-image {
        height: 180px; }
      body.premium .nf-premium-feature-section .nf-premium-card-wrapper .nf-premium-card-content, body.premium .nf-premium-additional-feature-section .nf-premium-card-wrapper .nf-premium-card-content {
        height: 270px;
        padding: 1.25rem; }
        body.premium .nf-premium-feature-section .nf-premium-card-wrapper .nf-premium-card-content p, body.premium .nf-premium-additional-feature-section .nf-premium-card-wrapper .nf-premium-card-content p {
          max-height: 12rem;
          overflow: hidden; }
      body.premium section .container .row .col.s12 .nf-premium-trending-destination-section .row .col.s12 {
        padding: 0 0rem; }
      body.premium .nf-premium-trending-destination-section .row .col .ptd-destination-wrapper {
        padding-right: 2rem; }
      body.premium .nf-premium-usp .nf-carousel .carousel-cell {
        width: 100%; }
        body.premium .nf-premium-usp .nf-carousel .carousel-cell .nf-premium-card-wrapper.small12 {
          width: 100%; }
        body.premium .nf-premium-usp .nf-carousel .carousel-cell .nf-premium-card-content svg, body.premium .nf-premium-usp .nf-carousel .carousel-cell .nf-premium-card-content img {
          right: -10%; }
        body.premium .nf-premium-usp .nf-carousel .carousel-cell .nf-premium-card-content .text {
          margin-left: 5% !important;
          padding: 0.25rem 0.25rem 0 0.5rem !important; }
      body.premium .nf--premium-blog-links-carousel {
        margin: 0 2.25rem;
        overflow: visible; } }
  @media only screen and (min-width: 993px) {
    body.premium {
      /*resize the hero image*/
      /*place search bar relavitve to hero image*/ }
      body.premium .nf-parallax.parallax-container {
        height: 485px; }
      body.premium .nf-ng-search {
        top: 15rem; }
      body.premium .nf-premium-intro .col.s12 {
        width: 50%; }
      body.premium .nf-premium-intro .premium-intro-text .nf-section-header h3 {
        font-size: 1.875rem; } }
  @media only screen and (min-width: 601px) and (max-width: 992px) {
    body.premium {
      /*resize the hero image*/
      /*place search bar relavitve to hero image*/
      /*Ipad-MultiCity*/ }
      body.premium .nf-parallax.parallax-container {
        height: 485px; }
      body.premium .nf-ng-search {
        top: 14rem; }
      body.premium.nf-multi .nf-parallax.parallax-container {
        height: 610px; }
      body.premium .nf-premium-trending-destination-section .row .col .ptd-destination-wrapper {
        padding-right: 0rem; } }
  @media only screen and (max-width: 992px) {
    body.premium {
      /* Show on Medium Devices */ }
      body.premium .nf-premium-intro .premium-intro-text {
        padding: 1.5rem 0rem 1.5rem 0rem; }
        body.premium .nf-premium-intro .premium-intro-text .nf-section-header {
          text-align: center; }
          body.premium .nf-premium-intro .premium-intro-text .nf-section-header h3 {
            font-size: 1.875rem;
            margin-bottom: 1rem; }
          body.premium .nf-premium-intro .premium-intro-text .nf-section-header .pre-header {
            letter-spacing: 0.2rem;
            margin: 0; }
        body.premium .nf-premium-intro .premium-intro-text .sub-header-text {
          text-align: center; }
      body.premium section.has-carousel.npb-medium .flickity-button, body.premium section.has-carousel.npb-medium .flickity-page-dots, body.premium section.has-carousel.npb-medium .flickity-prev-next-button {
        display: block; }
      body.premium section.has-carousel.npb-medium .nf-carousel .flickity-button.flickity-prev-next-button.previous {
        left: -3rem; }
      body.premium section.has-carousel.npb-medium .nf-carousel .flickity-button.flickity-prev-next-button.next {
        right: -3rem; } }
  @media only screen and (max-width: 600px) {
    body.premium {
      /* Show on Small Devices */
      /* Search Controls*/
      /* Section Change*/ }
      body.premium .nf-ng-search .container .row .col {
        padding: 0 1rem; }
      body.premium section .container .row .col.s12 {
        padding: 0 2rem; }
      body.premium section .nf-carousel .nf-premium-card-wrapper {
        width: 311px;
        max-width: calc(100vw - 4rem); }
      body.premium section.has-carousel.nbp-small .flickity-button, body.premium section.has-carousel.nbp-small .flickity-page-dots, body.premium section.has-carousel.nbp-small .flickity-prev-next-button {
        display: block; }
      body.premium section.has-carousel.nbp-small .nf-carousel {
        margin: 0; }
        body.premium section.has-carousel.nbp-small .nf-carousel .flickity-button {
          height: 2rem;
          color: #FFFFFF; }
          body.premium section.has-carousel.nbp-small .nf-carousel .flickity-button.flickity-prev-next-button.previous {
            left: -2.25rem; }
          body.premium section.has-carousel.nbp-small .nf-carousel .flickity-button.flickity-prev-next-button.next {
            right: -2.25rem; }
      body.premium #premium-cabin-class .nf-premium-cabin-wrapper .row .col:last-child .cabin-class-card {
        margin-right: 0rem; }
      body.premium .nf-premium-cabin-classes .nf-carousel .nf-premium-card-image {
        height: 187px; }
      body.premium .nf-premium-phone-number {
        padding: 0; }
        body.premium .nf-premium-phone-number .phone-message {
          font-size: 1.5rem; }
        body.premium .nf-premium-phone-number .phone-number {
          color: #FFFFFF;
          font-size: 2.75rem;
          line-height: 2.75rem; }
      body.premium .nf-image-card-wrapper {
        width: 300px !important; }
      body.premium .nf-premium-feature-section .nf-premium-card-wrapper .nf-premium-card-image, body.premium .nf-premium-additional-feature-section .nf-premium-card-wrapper .nf-premium-card-image {
        height: 167px; }
      body.premium .nf-premium-feature-section .nf-premium-card-wrapper .nf-premium-card-content p, body.premium .nf-premium-additional-feature-section .nf-premium-card-wrapper .nf-premium-card-content p {
        max-height: none;
        overflow: hidden;
        margin-top: 0.25rem;
        margin-bottom: 0; }
      body.premium .nf-premium-trending-destination-section .row .col .ptd-destination-wrapper {
        padding-right: 0rem; }
      body.premium .nf-premium-usp {
        height: 9rem; }
        body.premium .nf-premium-usp .nf-carousel {
          padding-bottom: 2rem; }
          body.premium .nf-premium-usp .nf-carousel .carousel-cell {
            height: 6rem !important; }
            body.premium .nf-premium-usp .nf-carousel .carousel-cell .nf-premium-card-content {
              padding: 0 5% 0 10px;
              margin-left: 10px; }
              body.premium .nf-premium-usp .nf-carousel .carousel-cell .nf-premium-card-content img, body.premium .nf-premium-usp .nf-carousel .carousel-cell .nf-premium-card-content svg {
                width: 5.5rem !important;
                height: 5.5rem !important; }
              body.premium .nf-premium-usp .nf-carousel .carousel-cell .nf-premium-card-content .text .title {
                margin: 0.3rem 0 !important;
                font-size: 0.85rem; }
              body.premium .nf-premium-usp .nf-carousel .carousel-cell .nf-premium-card-content .text .sub-text {
                font-size: 0.7rem;
                line-height: 1rem; }
      body.premium #nf-premium-blog-links {
        padding-top: 2.5rem; }
      body.premium .nf-premium-card-wrapper.small12 {
        margin-right: 1rem !important; }
      body.premium #premium-cabin-class .cabin-class-card {
        margin: 0 0 1rem 0; }
      body.premium .nf-premium-intro .nf-sub-image, body.premium .nf-premium-intro .intro-media.video {
        height: 180px; }
      body.premium .nf-premium-travel-blog .nf-carousel .nf-premium-card-wrapper .nf-premium-card-image {
        height: 167px; } }
  @media only screen and (max-width: 350px) {
    body.premium h1 {
      font-size: 1.325rem; }
    body.premium .nf-premium-cabin-classes .nf-carousel .nf-premium-card-image {
      height: auto; }
    body.premium .nf-premium-trending-destination-section .ptd-destination-wrapper ul li .row .col.s8 {
      width: 58.33333% !important; }
    body.premium .nf-premium-trending-destination-section .ptd-destination-wrapper ul li .row .col.s4 {
      width: 41.66667% !important; }
    body.premium .nf-premium-phone-number .phone-message {
      font-size: 1.25rem; }
    body.premium .nf-premium-phone-number .phone-number {
      font-size: 2.325rem; }
    body.premium .nf-premium-phone-number .alternative-message {
      font-size: 0.65rem; }
    body.premium .nf-premium-usp .carousel-cell .nf-premium-card-content {
      padding: 0 5% 0 15%; }
      body.premium .nf-premium-usp .carousel-cell .nf-premium-card-content svg, body.premium .nf-premium-usp .carousel-cell .nf-premium-card-content img {
        width: 5rem !important;
        height: 5rem !important; }
      body.premium .nf-premium-usp .carousel-cell .nf-premium-card-content div.text {
        padding: 0.25rem 0.4rem !important; }
        body.premium .nf-premium-usp .carousel-cell .nf-premium-card-content div.text .title {
          margin: 0 !important; }
        body.premium .nf-premium-usp .carousel-cell .nf-premium-card-content div.text .sub-text {
          margin: 0 !important; } }

@media only screen and (max-width: 600px) {
  body.premium .nf-parallax.parallax-container {
    padding-top: 15%; } }

.react-toggle-wrapper {
  background: #FFFFFF;
  padding: 1rem;
  font-size: 0.75rem;
  margin-top: 4px; }
  .react-toggle-wrapper label {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }

.react-toggle {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
  display: inline-block;
  position: relative;
  cursor: pointer;
  background-color: transparent;
  border: 0;
  padding: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-tap-highlight-color: transparent; }

.react-toggle-screenreader-only {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.react-toggle--disabled {
  cursor: not-allowed;
  opacity: 0.5;
  -webkit-transition: opacity 0.25s;
  transition: opacity 0.25s; }

.react-toggle-track {
  width: 25px;
  height: 14px;
  margin: 0 0.75rem;
  padding: 0;
  border-radius: 1.5rem;
  background: #F1F1F1;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease; }

.react-toggle:hover:not(.react-toggle--disabled) .react-toggle-track {
  background-color: #F1F1F1; }

.react-toggle--checked .react-toggle-track,
.react-toggle--checked:hover:not(.react-toggle--disabled) .react-toggle-track {
  background: #EAF7FC; }

.react-toggle--disabled .react-toggle-track {
  background: -webkit-gradient(linear, left top, left bottom, from(#CFCFCF), to(#b6b6b6));
  background: linear-gradient(180deg, #CFCFCF, #b6b6b6); }

.react-toggle-track-check {
  position: absolute;
  width: 14px;
  height: 10px;
  top: 0px;
  bottom: 0px;
  margin-top: auto;
  margin-bottom: auto;
  line-height: 0;
  left: 8px;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease; }

.react-toggle--checked .react-toggle-track-check {
  opacity: 1;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease; }

.react-toggle-track-x {
  position: absolute;
  width: 10px;
  height: 10px;
  top: 0px;
  bottom: 0px;
  margin-top: auto;
  margin-bottom: auto;
  line-height: 0;
  right: 10px;
  opacity: 1;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease; }

.react-toggle--checked .react-toggle-track-x {
  opacity: 0; }

.react-toggle-thumb {
  position: absolute;
  top: 45%;
  left: 8%;
  -webkit-transform: translate3d(25%, -50%, 0);
          transform: translate3d(25%, -50%, 0);
  display: block;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: #CFCFCF;
  -webkit-transition: all ease 200ms;
  transition: all ease 200ms; }

.react-toggle--checked .react-toggle-thumb {
  -webkit-transform: translate3d(110%, -50%, 0);
          transform: translate3d(110%, -50%, 0);
  left: 20%;
  background: #2CACE3; }

@media only screen and (min-width: 601px) {
  .react-toggle-wrapper {
    background: transparent;
    padding: 0.25rem 0 1rem; } }

@media only screen and (min-width: 993px) {
  .react-toggle-wrapper {
    grid-area: filters;
    z-index: 3;
    padding: 1rem 1.5rem;
    align-self: flex-start;
    margin-top: 4rem; }
    .react-toggle-wrapper label {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; } }

.nf-expandable-section {
  position: relative; }
  .nf-expandable-section p {
    font-size: 0.75rem; }
  .nf-expandable-section strong {
    font-size: 0.875rem; }
  .nf-expandable-section:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    background: #FFFFFF;
    width: 100%;
    height: calc(100% + 2rem);
    max-height: 8.125rem;
    z-index: 1; }
  .nf-expandable-section:after {
    content: '';
    width: 100%;
    height: 1rem;
    position: absolute;
    display: block;
    bottom: -0.5rem;
    left: 0;
    z-index: 2;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(white));
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 100%); }
  .nf-expandable-section.m--show:after {
    content: none; }

.nf-read-more {
  position: relative;
  width: 100%;
  height: 2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: #FFFFFF;
  margin-bottom: 0.5rem; }

.nf-expandable-section-content {
  position: relative;
  z-index: 2;
  max-height: 8rem;
  position: relative;
  overflow: hidden; }
  .nf-expandable-section-content.m--show {
    max-height: none; }

body .nf-advice-header {
  color: #565656;
  font-size: 18px;
  font-weight: bold;
  padding-bottom: 10px; }

body .nf-popular-lmfoffers-primary, body .nf-popular-lmfoffers-secondary, body .nf-cheapest-lmfoffers-primary {
  padding-bottom: 2.5rem;
  overflow: hidden; }
  body .nf-popular-lmfoffers-primary .flickity-page-dots, body .nf-popular-lmfoffers-secondary .flickity-page-dots, body .nf-cheapest-lmfoffers-primary .flickity-page-dots {
    bottom: -2.25rem; }

body #nf-lmf-intro {
  padding-bottom: 0; }
  body #nf-lmf-intro #nf-lmf-promoted-items {
    margin-top: 3rem; }

body #nf-lmf-offers-cheapest .nf-image-card--title &gt; span {
  display: block;
  width: 11rem;
  overflow: hidden;
  text-overflow: ellipsis;
  height: 1.125rem;
  white-space: nowrap;
  margin-bottom: 0.25rem; }

body #lmf-offers-popular .nf-popular-lmfoffers-secondary .nf-image-card--title &gt; span {
  display: block;
  width: 11rem;
  overflow: hidden;
  height: 1.125rem;
  white-space: nowrap;
  margin-bottom: 0.25rem; }

#lmf-offers-cheapest {
  min-height: 32.5rem; }

.nf-lmf-offers-tabs {
  height: 5.375rem;
  margin-bottom: 2rem; }
  .nf-lmf-offers-tabs .flickity-prev-next-button {
    height: 5.375rem;
    width: 1.25rem;
    background: #FFFFFF;
    -webkit-box-shadow: none;
            box-shadow: none;
    border-radius: initial;
    opacity: 1;
    -webkit-transition: all ease 100ms;
    transition: all ease 100ms;
    padding: 0;
    overflow: hidden; }
    .nf-lmf-offers-tabs .flickity-prev-next-button.next {
      right: 0; }
    .nf-lmf-offers-tabs .flickity-prev-next-button.previous {
      left: 0; }
    .nf-lmf-offers-tabs .flickity-prev-next-button svg {
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      top: 0;
      width: 5.375rem;
      height: 5.375rem; }
    .nf-lmf-offers-tabs .flickity-prev-next-button .arrow {
      fill: #d5d5d5; }
  .nf-lmf-offers-tabs .flickity-prev-next-button:disabled {
    opacity: 0; }

.nf-lmf-offers-tab {
  position: relative;
  width: 14rem;
  height: 5.375rem;
  color: #676767;
  border: 1px solid #CFCFCF;
  border-right-width: 0;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  overflow: hidden;
  font-size: 0.875rem;
  background: #FFFFFF; }
  .nf-lmf-offers-tab strong {
    font-size: 1rem; }
  .nf-lmf-offers-tab.m--active {
    color: #454545;
    font-weight: bold;
    border-bottom: 0;
    background: transparent; }
    .nf-lmf-offers-tab.m--active strong {
      color: #2dace3; }
  .nf-lmf-offers-tab:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    background: transparent;
    -webkit-transition: all ease 200ms;
    transition: all ease 200ms; }
  .nf-lmf-offers-tab:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -0.625rem;
    border-top: 0;
    border-left: 0.625rem solid transparent;
    border-right: 0.625rem solid transparent;
    -webkit-transition: all ease 200ms;
    transition: all ease 200ms; }
  .nf-lmf-offers-tab.m--active:before {
    height: 0.25rem;
    background: #2dace3; }
  .nf-lmf-offers-tab.m--active:after {
    border-top: 0.625rem solid #2dace3; }
  .nf-lmf-offers-tab:first-of-type {
    border-top-left-radius: 0.125rem;
    border-bottom-left-radius: 0.125rem; }
  .nf-lmf-offers-tab:last-of-type {
    width: 13rem;
    border-right-width: 1px;
    border-top-right-radius: 0.125rem;
    border-bottom-right-radius: 0.125rem; }

.nf-lmf-page-link-item {
  color: #454545;
  position: relative;
  padding: 1rem;
  border-bottom: 2px solid #CFCFCF;
  background: #FFFFFF;
  border-radius: 3px;
  margin-top: 0;
  margin-bottom: 0.7rem;
  -webkit-box-shadow: 0 0 0 1px #EEEEEE;
          box-shadow: 0 0 0 1px #EEEEEE;
  height: 60px;
  display: block;
  -webkit-transition: all ease 400ms;
  transition: all ease 400ms;
  z-index: 1;
  -moz-column-break-inside: avoid;
       break-inside: avoid-column;
  -webkit-column-break-inside: avoid;
  -webkit-backface-visibility: hidden;
  page-break-inside: avoid; }

.nf-lmf-page-links-item-link {
  color: #454545;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0.5rem;
  line-height: 2.5625rem;
  z-index: 1; }

.nf-lmf-page-links-item-link &gt; span {
  display: inline-block;
  vertical-align: middle;
  line-height: 1; }

.nf-lmf-page-link-header {
  color: #217FA8;
  font-weight: bold;
  font-size: 18px;
  position: relative;
  padding: 1rem;
  height: 60px;
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  -webkit-transition: all ease 400ms;
  transition: all ease 400ms;
  z-index: 1;
  -moz-column-break-inside: avoid;
       break-inside: avoid-column;
  -webkit-column-break-inside: avoid;
  -webkit-backface-visibility: hidden;
  page-break-inside: avoid; }
  .nf-lmf-page-link-header .row .col {
    width: 100%; }

.nf-lmf-page-links .nf-carousel .carousel-cell {
  width: 100%; }

.nf-lmf-page-links .nf-carousel:after {
  content: '';
  display: none; }

@media only screen and (max-width: 1380px) {
  .nf-lmf-copy-text--split {
    margin: 4rem 0 !important; }
  .nf-lmf-copy-text--full {
    margin: 2rem 1rem !important; }
  #nf-lmf-seo-copy-text-section .nf-sub-image {
    padding-bottom: 65%; } }

@media only screen and (min-width: 993px) {
  .nf-lmf-copy-text--split {
    margin: 0 !important; }
  .nf-lmf-copy-text--full {
    margin: 2rem 1rem !important; } }

@media only screen and (max-width: 992px) {
  /*SEO CopyText*/
  .override-container {
    margin-right: -2rem;
    margin-left: -2rem; }
  #nf-lmf-seo-copy-text-section .nf-sub-image {
    padding-bottom: 50% !important; }
  .nf-advice-text {
    padding-bottom: 25px; }
  /*.nf-lmf-copy-text--split, .nf-lmf-copy-text--full {
        margin: 1rem 0;
    }*/ }

@media only screen and (min-width: 1381px) {
  /*SEO CopyText*/
  .nf-lmf-copy-text--split {
    margin: 3rem 1rem !important; }
  #nf-lmf-seo-copy-text-section .nf-sub-image {
    padding-bottom: 55%; }
  .nf-lmf-offers-tabs .flickity-prev-next-button {
    display: none; } }

@media only screen and (max-width: 600px) {
  .nf-lmf-page-link-header {
    margin-bottom: 0; }
  .nf-lmf-page-links {
    margin-bottom: 30px; }
    .nf-lmf-page-links .nf-carousel .carousel-cell {
      width: 100%; }
    .nf-lmf-page-links .nf-carousel:after {
      content: 'flickity'; }
  .nf-lmf-page-links-item-link &gt; span {
    font-size: 0.875rem;
    line-height: 1.2;
    padding-right: initial; }
  .nf-lmf-offers-tab {
    width: 7rem;
    height: 4rem; }
    .nf-lmf-offers-tab strong {
      font-size: 1rem; }
    .nf-lmf-offers-tab:last-of-type {
      width: 6rem; }
  .nf-lmf-offers-tabs {
    height: 4rem; }
    .nf-lmf-offers-tabs .flickity-prev-next-button {
      height: 4rem;
      width: 1rem; }
      .nf-lmf-offers-tabs .flickity-prev-next-button svg {
        width: 4rem;
        height: 4rem; } }

/* Message Boxes */
.nf-error-msgbox,
.nf-warning-msgbox,
.nf-success-msgbox,
.nf-notification-msgbox {
  position: relative;
  border: 1px solid #454545;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 1.5rem auto;
  padding: 0.75rem;
  padding-right: 1.25rem;
  max-width: 82.5rem; }
  .nf-error-msgbox svg,
  .nf-warning-msgbox svg,
  .nf-success-msgbox svg,
  .nf-notification-msgbox svg {
    display: inline-block;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    fill: inherit;
    margin-right: 1rem; }
  .nf-error-msgbox p,
  .nf-warning-msgbox p,
  .nf-success-msgbox p,
  .nf-notification-msgbox p {
    display: inline-block;
    margin: 0;
    font-size: 0.875rem; }

.nf-error-msgbox {
  background: #ffe4ec;
  border-color: #e40046;
  fill: #e40046; }

.nf-warning-msgbox {
  background: #fddeb2;
  border-color: #F89E1E;
  fill: #dc8407; }

.nf-success-msgbox {
  background: #e1efd5;
  border-color: #78b543;
  fill: #78b543; }

.nf-notification-msgbox {
  background: #FFFEEC;
  border-color: #FDE1D1;
  border-radius: 0.25rem;
  fill: orange; }

.nf-success-content-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 12px 20px 12px 12px;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 16px;
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch;
  border-radius: 10px;
  background: #E6F2E6;
  max-width: 82.5rem; }
  .nf-success-content-box p {
    margin: 0;
    color: #007D1E;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 21px; }
  .nf-success-content-box span {
    color: #007D1E;
    font-family: Roboto;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 21px; }
  .nf-success-content-box svg {
    width: 24px;
    height: 24px;
    fill: #007D1E; }

.nf-error-content-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 12px 20px 12px 12px;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 16px;
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch;
  border-radius: 10px;
  background: #FFF2F2;
  max-width: 82.5rem; }
  .nf-error-content-box p {
    margin: 0;
    color: #A82A30;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 21px; }
  .nf-error-content-box span {
    color: var(--system-error-dark, #A82A30);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 21px; }
  .nf-error-content-box svg {
    width: 24px;
    height: 24px;
    fill: #A82A30; }

.nf-price-warning h2 {
  color: #2dace3;
  font-size: 1.625rem;
  text-align: left;
  line-height: 1.5;
  font-weight: normal; }
  .nf-price-warning h2.m--decreased {
    color: #78b543; }

.nf-price-warning-general,
.nf-price-warning-live-msg {
  background: #EEEEEE;
  padding: 1rem;
  margin: 0; }

.nf-price-warning-general {
  margin-top: 1.5rem;
  padding-bottom: 0; }

.nf-price-warning-book {
  margin-top: 1.5rem; }

.nf-booking-extras-loading-wrapper {
  width: 100%;
  height: 27rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.nf-booking-extras-loading-text {
  color: #2cace3;
  font-size: 0.9375rem;
  display: block;
  margin-bottom: 1.5rem; }

.nf-booking-extras-loading {
  width: 21rem;
  max-width: 80%;
  height: 0.375rem;
  background: #eeeeee;
  position: relative; }
  .nf-booking-extras-loading span {
    position: absolute;
    height: 100%;
    background: #2cace3;
    -webkit-animation: extras-loading 2000ms infinite;
            animation: extras-loading 2000ms infinite; }

@-webkit-keyframes extras-loading {
  0% {
    left: 0;
    right: 100%; }
  25% {
    left: 0;
    right: 0; }
  50% {
    left: 100%;
    right: 0; }
  75% {
    left: 0;
    right: 0; }
  100% {
    left: 0;
    right: 100%; } }

@keyframes extras-loading {
  0% {
    left: 0;
    right: 100%; }
  25% {
    left: 0;
    right: 0; }
  50% {
    left: 100%;
    right: 0; }
  75% {
    left: 0;
    right: 0; }
  100% {
    left: 0;
    right: 100%; } }

@media only screen and (max-width: 600px) {
  .nf-booking-extras-loading-wrapper {
    height: 20rem; } }

/* Optional Warning Banner */
.nf-warning-banner-logo svg {
  margin-right: 0.75rem; }

.nf-warning-banner-logo,
.nf-warning-banner-message {
  display: inline;
  vertical-align: middle; }

.nf-warning-banner-container {
  text-align: center;
  padding: 1rem;
  font-size: 0.875rem; }

.nf-warning-banner-container svg {
  height: 1.5rem;
  width: 1.5rem;
  display: inline-block; }

@media only screen and (min-width: 601px) {
  .nf-warning-banner-container {
    padding: 1rem 2rem;
    font-size: 0.9375rem; }
  .nf-warning-banner-container svg {
    height: 2rem;
    width: 2rem; } }

.react-toggle-wrapper {
  background: #FFFFFF;
  padding: 1rem;
  font-size: 0.75rem;
  margin-top: 4px; }
  .react-toggle-wrapper label {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }

.react-toggle {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
  display: inline-block;
  position: relative;
  cursor: pointer;
  background-color: transparent;
  border: 0;
  padding: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-tap-highlight-color: transparent; }

.react-toggle-screenreader-only {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.react-toggle--disabled {
  cursor: not-allowed;
  opacity: 0.5;
  -webkit-transition: opacity 0.25s;
  transition: opacity 0.25s; }

.react-toggle-track {
  width: 25px;
  height: 14px;
  margin: 0 0.75rem;
  padding: 0;
  border-radius: 1.5rem;
  background: #F1F1F1;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease; }

.react-toggle:hover:not(.react-toggle--disabled) .react-toggle-track {
  background-color: #F1F1F1; }

.react-toggle--checked .react-toggle-track,
.react-toggle--checked:hover:not(.react-toggle--disabled) .react-toggle-track {
  background: #EAF7FC; }

.react-toggle--disabled .react-toggle-track {
  background: -webkit-gradient(linear, left top, left bottom, from(#CFCFCF), to(#b6b6b6));
  background: linear-gradient(180deg, #CFCFCF, #b6b6b6); }

.react-toggle-track-check {
  position: absolute;
  width: 14px;
  height: 10px;
  top: 0px;
  bottom: 0px;
  margin-top: auto;
  margin-bottom: auto;
  line-height: 0;
  left: 8px;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease; }

.react-toggle--checked .react-toggle-track-check {
  opacity: 1;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease; }

.react-toggle-track-x {
  position: absolute;
  width: 10px;
  height: 10px;
  top: 0px;
  bottom: 0px;
  margin-top: auto;
  margin-bottom: auto;
  line-height: 0;
  right: 10px;
  opacity: 1;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease; }

.react-toggle--checked .react-toggle-track-x {
  opacity: 0; }

.react-toggle-thumb {
  position: absolute;
  top: 45%;
  left: 8%;
  -webkit-transform: translate3d(25%, -50%, 0);
          transform: translate3d(25%, -50%, 0);
  display: block;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: #CFCFCF;
  -webkit-transition: all ease 200ms;
  transition: all ease 200ms; }

.react-toggle--checked .react-toggle-thumb {
  -webkit-transform: translate3d(110%, -50%, 0);
          transform: translate3d(110%, -50%, 0);
  left: 20%;
  background: #2CACE3; }

@media only screen and (min-width: 601px) {
  .react-toggle-wrapper {
    background: transparent;
    padding: 0.25rem 0 1rem; } }

@media only screen and (min-width: 993px) {
  .react-toggle-wrapper {
    grid-area: filters;
    z-index: 3;
    padding: 1rem 1.5rem;
    align-self: flex-start;
    margin-top: 4rem; }
    .react-toggle-wrapper label {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; } }

/* Add temporary dev styles here */
h2 {
  font-weight: bold;
  text-align: center;
  font-family: azo-sans-uber;
  font-display: auto;
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
  font-size: 2.25rem;
  color: #289ED1; }

h2 + .nf-sub-header {
  display: block;
  font-weight: normal;
  margin-bottom: 2rem;
  text-align: center;
  font-family: adobe-handwriting-frank;
  font-display: auto;
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
  font-size: 1.75rem;
  color: #393939;
  line-height: 1.2;
  padding-top: 8px; }

h2:empty + .nf-sub-header {
  margin-bottom: 0; }

h3 .nf-sub-header {
  font-size: 1rem;
  line-height: 1;
  display: inline-block; }

p {
  font-size: 0.9375rem; }

.nf-intro-panel {
  position: relative;
  background: none !important;
  /* Temporary test - Refactor */
  padding: 1rem;
  text-shadow: 0 2px 1px rgba(0, 0, 0, 0.3); }
  .nf-intro-panel h1, .nf-intro-panel h2 {
    color: #FFFFFF;
    fill: #FFFFFF;
    margin: 0 0 1rem 0; }
  .nf-intro-panel h1 {
    font-family: azo-sans-uber;
    font-display: auto;
    font-style: normal;
    font-weight: 400;
    font-stretch: normal; }
    .nf-intro-panel h1 span {
      font-size: 1.75rem; }
  .nf-intro-panel h2 {
    font-weight: normal;
    margin: 1rem 0;
    font-size: 2rem;
    font-family: adobe-handwriting-frank;
    font-display: auto;
    font-style: normal;
    font-weight: 400;
    font-stretch: normal; }
    .nf-intro-panel h2 span {
      display: inline-block;
      font-size: inherit; }
    .nf-intro-panel h2 .promo-suffix {
      font-size: 1rem; }
  .nf-intro-panel .nf-intro-price {
    color: #FFFFFF; }
    .nf-intro-panel .nf-intro-price .nf-currency {
      border-bottom-width: 2px;
      border-bottom-style: solid; }
    .nf-intro-panel .nf-intro-price .nf-price {
      display: inline-block;
      border-bottom-width: 2px;
      border-bottom-style: solid; }
    .nf-intro-panel .nf-intro-price:after {
      content: '\002a';
      color: #FFFFFF;
      vertical-align: top;
      line-height: 1;
      margin-left: 0.125rem; }

/* Countries and Cities */
.nf-explore h4 {
  color: #2dace3; }

.nf-explore li {
  line-height: 1.4; }

.nf-explore li a {
  font-size: 0.8125rem;
  text-decoration: none; }

.nf-explore li a.nf-footer-az {
  border-bottom-width: 1px;
  border-bottom-style: solid; }

/* Carousel Arrow */
.flickity-prev-next-button {
  width: 50px;
  height: 50px;
  border: 2px solid #2dace3;
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3); }

.flickity-prev-next-button .arrow {
  fill: #2dace3; }

.flickity-prev-next-button.previous {
  left: -1rem; }

.flickity-prev-next-button.next {
  right: -1rem; }

.flickity-prev-next-button:disabled {
  opacity: 0; }

/* Header Amends */
header .container {
  overflow: visible; }

.nf-home h1 {
  font-size: 2.25rem;
  margin: 0;
  font-weight: bold;
  text-align: center;
  font-family: azo-sans-uber;
  font-display: auto;
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
  color: #289ED1; }
  .nf-home h1 + .nf-sub-header {
    display: block;
    font-weight: normal;
    margin-bottom: 2rem;
    text-align: center;
    font-family: adobe-handwriting-frank;
    font-display: auto;
    font-style: normal;
    font-weight: 400;
    font-stretch: normal;
    font-size: 1.75rem;
    color: #393939; }

.nf-home h2 {
  color: #289ED1; }

.nf-home header nav {
  background: none;
  -webkit-transition: background ease 200ms;
  transition: background ease 200ms;
  border-top: 6px solid #2dace3;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  will-change: top, background; }

.nf-home header nav.nf-navbar--scrolled {
  background: #289ED1; }

.nf-nav-links {
  width: auto;
  display: inline-block;
  left: 11rem; }
  .nf-nav-links svg {
    fill: #FFFFFF; }
  .nf-nav-links svg:first-of-type {
    margin-right: 0.25rem; }
  .nf-nav-links svg:last-of-type {
    margin-right: 0.75rem; }

.nf-nav-links .tab {
  text-transform: none; }

.nf-nav-links .tab a {
  color: #FFFFFF;
  padding: 0;
  margin-right: 1.75rem;
  width: auto;
  font-size: 0.9375rem;
  display: inline-block;
  vertical-align: middle;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.nf-nav-links .indicator {
  height: 2px; }

.nf-context-id {
  display: none; }

.nf-other-links {
  width: auto;
  display: inline-block;
  position: absolute;
  top: 0;
  right: 1.5rem; }
  .nf-other-links svg {
    fill: #FFFFFF;
    margin-right: 0.5rem; }

.nf-other-links .tab {
  text-transform: none; }

.nf-other-links .tab a {
  color: #FFFFFF;
  fill: #FFFFFF;
  padding: 0 0.5rem;
  margin-right: 0;
  width: auto;
  font-size: 0.9375rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.nf-other-links .indicator {
  display: none; }

/* Country */
.nf-intro-copy {
  text-align: center;
  width: 80%;
  margin: 0 auto;
  max-width: 800px; }

/* Alternating Section Colours */
section:nth-of-type(odd) {
  background: #EEEEEE;
  z-index: 1;
  position: relative; }

.nf-sub-image {
  width: 100%;
  height: auto;
  padding-bottom: 37.1%;
  /* To maintain aspect ratio across screen sizes */ }

/* Home - Logo */
.nf-home-logo {
  max-width: 360px; }

/*Trending Cities and Countries*/
.nf-top-destinations-list-item {
  display: block;
  font-size: 0.825rem;
  line-height: 2; }

/* Popular Airlines */
.nf-top-airline-logo {
  width: 208px;
  height: 120px;
  display: block; }

.nf-top-airlines-list-item {
  display: block;
  font-size: 0.825rem;
  line-height: 2; }

.nf-home-popular--large .nf-airline-logo--small {
  position: absolute;
  top: 0;
  right: 0;
  width: 80px;
  height: auto;
  max-width: 40%;
  z-index: 2; }

.nf-home-popular--large svg {
  position: absolute;
  top: 0;
  right: 0;
  width: 80px;
  height: auto;
  max-width: 40%;
  z-index: 2;
  display: block;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  float: left; }

.nf-home-popular--large.m--airline .nf-airline-logo--small {
  top: 0.5rem;
  right: 1rem;
  width: auto;
  max-height: 70px; }

.nf-home-popular--large.m--airline svg {
  top: 0.5rem;
  right: 1rem;
  width: auto;
  max-height: 70px; }

/* Home - Trending Now */
.nf-trending-primary,
.nf-popular-cities-primary,
.nf-top-airlines,
.nf-popular-countries-primary {
  margin-bottom: 1rem; }

.nf-home-popular--hashtag {
  position: absolute;
  top: 2.25rem;
  right: 2.25rem;
  color: rgba(255, 255, 255, 0.8);
  border: 1px solid rgba(255, 255, 255, 0.8);
  border-radius: 0.5rem;
  z-index: 3;
  padding: 0 0.5rem;
  line-height: 1.4;
  min-width: 4rem;
  display: inline-block;
  text-align: center;
  font-size: 0.8125rem; }

.nf-home-popular--hashtag:before {
  content: '#'; }

.nf-home-popular--marketing {
  color: #FFFFFF;
  position: absolute;
  top: 13rem;
  padding: 0 2rem; }

.nf-home-popular--marketing p {
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0;
  display: inline-block;
  max-height: 2.75rem; }

.nf-home-overide--vertical {
  width: 208px;
  height: 282px;
  float: left; }

.nf-home-overide--vertical a {
  display: block; }

.nf-home-overide--vertical img {
  width: 100%;
  height: 100%; }

/* Transitions */
.nf-home-popular--large h3,
.nf-home-popular--large .nf-home-popular--price,
.nf-home-popular--large .nf-home-popular--cta {
  -webkit-transition: -webkit-transform ease 700ms;
  transition: -webkit-transform ease 700ms;
  transition: transform ease 700ms;
  transition: transform ease 700ms, -webkit-transform ease 700ms;
  -webkit-transform: translateX(-100%) translateZ(0);
          transform: translateX(-100%) translateZ(0);
  will-change: transform;
  left: 0; }

.nf-home-popular--large .lazyloaded h3,
.nf-home-popular--large .lazyloaded .nf-home-popular--price,
.nf-home-popular--large .lazyloaded .nf-home-popular--cta {
  -webkit-transform: translateX(0) translateZ(0);
          transform: translateX(0) translateZ(0); }

.nf-home-popular--large .lazyloaded .nf-home-popular--price {
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms; }

.nf-home-popular--large .lazyloaded .nf-home-popular--cta {
  -webkit-transition-delay: 600ms;
          transition-delay: 600ms; }

.nf-home-popular--large .preloader-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  margin-top: -18px;
  margin-left: -18px; }

.nf-home-popular--large .lazyloaded ~ .preloader-wrapper {
  display: none; }

/* Home page banner advert */
.nf-home-banner--advert {
  position: absolute;
  bottom: 4.5rem;
  /* This is the height of the USP section below so it shits flush */
  text-align: center;
  width: 100%; }

.nf-home-banner--advert a {
  display: inline-block;
  -webkit-transform: scale(0.5);
          transform: scale(0.5); }

.nf-home-banner--advert img {
  display: block;
  max-width: 100%; }

.nf-home-landscape-banner--advert {
  overflow: hidden;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #EEEEEE;
  padding-top: 1rem; }
  .nf-home-landscape-banner--advert .nf-home-landscape-banner-image {
    width: 100%;
    max-width: 100%;
    display: block; }

/* Carousels */
.nf-trending-primary .nf-carousel,
.nf-popular-cities-primary .nf-carousel,
.nf-top-airlines .nf-carousel,
.nf-popular-countries-primary .nf-carousel {
  height: 282px;
  overflow: hidden; }

.nf-trending-secondary .nf-carousel,
.nf-home-popular--cards .nf-carousel,
.nf-travel-blog-wrapper .nf-carousel {
  height: 287px;
  overflow: hidden; }

.nf-popular-hotels-wrapper-large .nf-carousel {
  overflow: hidden;
  margin-bottom: 1rem; }

.nf-top-airlines + .nf-home-popular--cards .nf-carousel {
  height: 121px; }

.nf-top-airlines + .nf-home-popular--cards .nf-carousel a {
  display: inline-block;
  float: left;
  margin-right: 1rem; }
  .nf-top-airlines + .nf-home-popular--cards .nf-carousel a svg {
    width: 208px;
    height: 120px;
    display: block; }

.nf-top-airlines + .nf-home-popular--cards .nf-carousel a:last-of-type {
  margin-right: 0; }

.nf-carousel--cards {
  height: 320px;
  overflow: hidden; }

.nf-carousel--cards .flickity-page-dots {
  bottom: 0; }

/* General Carousel Styles - Consolidated */
.nf-carousel-blocks--large {
  overflow: hidden;
  margin-bottom: 1rem;
  max-height: 340px; }
  .nf-carousel-blocks--large &gt; .nf-carousel.nf-carousel--nodots {
    margin-bottom: 0; }
  .nf-carousel-blocks--large .flickity-page-dots {
    bottom: -2.5rem; }
    .nf-carousel-blocks--large .flickity-page-dots .dot {
      margin: 0 1rem; }

.nf-carousel-blocks--large &gt; .nf-carousel {
  margin-bottom: 5rem; }

/* Destination page banner advert */
.nf-parallax.parallax-container.m--contains-ad {
  height: 690px; }

.nf-banner--advert {
  position: absolute;
  bottom: 4rem;
  text-align: center;
  width: 100%; }

.nf-banner--advert a {
  display: inline-block;
  -webkit-transform: scale(0.5);
          transform: scale(0.5); }

.nf-banner--advert img {
  display: block;
  max-width: 100%; }

main {
  position: relative; }

#hamburgerIcon {
  cursor: pointer; }

#react-sidebar {
  width: 0;
  height: 100%;
  background: rgba(51, 51, 51, 0.15);
  position: fixed;
  left: 0;
  top: 0;
  z-index: 999; }
  #react-sidebar .sidebar-extra {
    width: 0;
    height: 100%;
    position: fixed; }
  #react-sidebar .sidebar-container {
    position: fixed;
    width: 0px;
    right: 0;
    top: 0;
    bottom: 0;
    margin: 0;
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
    padding-bottom: 60px;
    background-color: #FFFFFF;
    z-index: 999;
    overflow-y: auto;
    will-change: transform;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    -webkit-transition: all ease 300ms;
    transition: all ease 300ms;
    max-width: 380px; }
    #react-sidebar .sidebar-container .sidebar-header {
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      background: #289ED1;
      fill: #FFFFFF;
      padding: 0 24px;
      height: 56px; }
    #react-sidebar .sidebar-container .sidebar-header-nav {
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      padding: 0 24px;
      height: 56px; }
      #react-sidebar .sidebar-container .sidebar-header-nav .sidenav-close {
        fill: #1A6788 !important; }
        #react-sidebar .sidebar-container .sidebar-header-nav .sidenav-close svg {
          fill: #1A6788 !important; }
    #react-sidebar .sidebar-container .sidebar-back {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      cursor: pointer; }
      #react-sidebar .sidebar-container .sidebar-back svg {
        height: 100%;
        margin-right: 8px; }
      #react-sidebar .sidebar-container .sidebar-back span {
        color: #1A6788;
        font-weight: 800;
        -webkit-align-self: center;
            -ms-flex-item-align: center;
                    -ms-grid-row-align: center;
                align-self: center; }
    #react-sidebar .sidebar-container .sidebar-logo svg {
      height: 100%;
      margin-right: 0 !important; }
    #react-sidebar .sidebar-container .sidenav-close {
      display: block;
      width: auto;
      padding: 0;
      fill: #FFFFFF;
      height: -webkit-fill-available; }
      #react-sidebar .sidebar-container .sidenav-close svg {
        fill: #FFFFFF !important;
        margin-right: 0 !important;
        height: -webkit-fill-available; }
    #react-sidebar .sidebar-container li {
      float: none;
      line-height: 48px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      border-bottom: 1px solid #EEE; }
      #react-sidebar .sidebar-container li span {
        width: -webkit-fill-available; }
      #react-sidebar .sidebar-container li:not(:first-child):hover {
        background-color: #eee; }
    #react-sidebar .sidebar-container li &gt; a {
      color: #454545;
      fill: #454545;
      display: block;
      width: 100%;
      font-size: 14px;
      height: 48px;
      line-height: 48px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      min-height: 48px;
      padding: 0px 24px; }
      #react-sidebar .sidebar-container li &gt; a img {
        margin-right: 8px; }
    #react-sidebar .sidebar-container li &gt; div {
      fill: #FFFFFF; }

@media only screen and (max-width: 600px) {
  #hamburgerIcon {
    display: none; }
  .sidebar-container {
    min-width: 100%;
    left: 0; } }

.flight .sidebar-container {
  border-top: 6px solid #289ED1 !important; }

.hotel .sidebar-container {
  border-top: 6px solid #289ED1 !important; }

.car .sidebar-container {
  border-top: 6px solid #289ED1 !important; }

.holiday .sidebar-container {
  border-top: 6px solid #289ED1 !important; }

.nf-flight-deal, .nf-image-card-wrapper {
  border-radius: 3px;
  border-bottom: 2px solid #CFCFCF;
  -webkit-box-shadow: 0 0 1px 0 #CFCFCF;
          box-shadow: 0 0 1px 0 #CFCFCF;
  background: #FFFFFF; }

.nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container {
  background: #FFFFFF;
  -webkit-box-shadow: 0 0.2rem 0.02rem #c2c2c2;
          box-shadow: 0 0.2rem 0.02rem #c2c2c2; }

.nf-ng-search {
  position: absolute;
  top: 20rem;
  z-index: 3;
  width: 100%; }

#react-flight-search .initial-calendar-loading {
  background: white;
  margin: 0 1rem;
  border-radius: 4px;
  padding: 1rem; }

.nf-home .nf-ng-search {
  top: 17rem; }

.nf-home .nf-ng-search--radio {
  border-top: 0;
  padding-top: 0; }

.nf-ng-search .container {
  overflow: visible; }

.nf-searchpanel-options {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  grid-area: sorting; }
  .nf-searchpanel-options .nf-search-cabin-class {
    margin-left: 1rem;
    text-align: left;
    width: 10%;
    z-index: 2; }
    .nf-searchpanel-options .nf-search-cabin-class .nf-form-field {
      margin-bottom: 0; }
      .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-1lao21-a11yText {
        display: none; }
      .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-1pahdxg-control,
      .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-yk16xz-control {
        border: none; }
        .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-1pahdxg-control .css-1hwfws3 .css-1uccc91-singleValue,
        .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-yk16xz-control .css-1hwfws3 .css-1uccc91-singleValue {
          color: #217FA8;
          font-size: 14px;
          font-weight: 600;
          line-height: 21px;
          letter-spacing: 0em;
          text-align: left; }
        .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-1pahdxg-control .css-1wy0on6 .css-1okebmr-indicatorSeparator,
        .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-yk16xz-control .css-1wy0on6 .css-1okebmr-indicatorSeparator {
          display: none; }
        .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-1pahdxg-control .css-1wy0on6 .css-tlfecz-indicatorContainer,
        .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-1pahdxg-control .css-1wy0on6 .css-1gtu0rj-indicatorContainer,
        .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-yk16xz-control .css-1wy0on6 .css-tlfecz-indicatorContainer,
        .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-yk16xz-control .css-1wy0on6 .css-1gtu0rj-indicatorContainer {
          color: #217FA8; }
          .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-1pahdxg-control .css-1wy0on6 .css-tlfecz-indicatorContainer svg,
          .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-1pahdxg-control .css-1wy0on6 .css-1gtu0rj-indicatorContainer svg,
          .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-yk16xz-control .css-1wy0on6 .css-tlfecz-indicatorContainer svg,
          .nf-searchpanel-options .nf-search-cabin-class .nf-form-field .nf-form-element .css-yk16xz-control .css-1wy0on6 .css-1gtu0rj-indicatorContainer svg {
            fill: #217FA8; }
  .nf-searchpanel-options .nf-search-direct-option {
    border-left: 1px solid #ECECEC;
    margin-left: 1rem;
    text-align: center;
    padding-left: 1rem; }

.nf-ng-search--radio {
  margin: 0 0 0 0.5rem;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  /*padding-top: 0.725rem;*/
  padding-right: 1rem;
  border-right: 1px solid #ECECEC; }

.nf-ng-search--radio input {
  display: block;
  position: absolute;
  height: 0;
  width: 0;
  visibility: hidden; }

.nf-ng-search--radio label {
  position: relative;
  cursor: pointer;
  padding: 0 1.5rem;
  color: #454545;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
  letter-spacing: 0em;
  text-align: left; }

.nf-ng-search--radio label:first-of-type {
  padding-left: 1.5rem; }

.nf-ng-search--radio label:last-of-type {
  padding-right: 0; }

.nf-ng-search--radio label span {
  display: inline-block;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -7px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  -webkit-box-shadow: 0 0 0 2px #362D2D;
          box-shadow: 0 0 0 2px #362D2D; }

.nf-ng-search--radio input[disabled] + span {
  -webkit-box-shadow: 0 0 0 2px #454545;
          box-shadow: 0 0 0 2px #454545; }

.nf-ng-search--radio input:checked[disabled] + span:before {
  background: #ACACAC; }

.nf-ng-search--radio input:checked[disabled] + span {
  -webkit-box-shadow: 0 0 0 2px #ACACAC;
          box-shadow: 0 0 0 2px #ACACAC; }

.nf-ng-search--radio label span:before {
  content: '';
  width: 10px;
  height: 10px;
  display: inline-block;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-top: -5px;
  margin-left: -5px;
  background: #217FA8;
  border-radius: 50%;
  -webkit-transition: all ease 100ms;
  transition: all ease 100ms;
  -webkit-transform: scale(0);
          transform: scale(0); }

.nf-ng-search--radio label span:hover {
  background: #ABDEF4; }

.nf-ng-search--radio label :checked + span:before {
  -webkit-transform: scale(1);
          transform: scale(1); }

.gm-autocomplete {
  display: block;
  position: relative; }

.gm-autocomplete input,
.nf-search-input--driverage input {
  font-size: 14px;
  font-weight: 800;
  color: #393939;
  line-height: 21px;
  border-bottom: 0;
  padding: 1.5rem 0 0.5rem 3rem;
  margin: 0;
  margin-right: 1px;
  width: 100%; }

.nf-search-input--driverage input {
  margin-right: 0; }

.nf-search-input-cabinclass {
  position: relative;
  font-size: 0.875rem;
  color: #2dace3;
  white-space: nowrap;
  overflow: hidden; }

.nf-search-input-cabinclass-wrapper {
  position: absolute;
  left: 3.25rem;
  bottom: 0.375rem;
  text-align: left; }

.nf-search-input-cabinclass-wrapper.nf-search-direct {
  left: 5.55rem;
  width: calc(100% - 8rem); }
  .nf-search-input-cabinclass-wrapper.nf-search-direct:after {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 2rem;
    height: 100%;
    background: -webkit-gradient(linear, left top, right top, from(transparent), to(#FFFFFF));
    background: linear-gradient(to right, transparent, #FFFFFF);
    overflow: hidden; }

.mat-form-field-label-wrapper {
  top: 0.5rem !important;
  /* Refactor */
  left: 3.25rem !important;
  /* Refactor */
  right: 0;
  height: auto !important;
  /* Refactor */
  width: auto !important;
  /* Fix to prevent breaking of layout */
  padding-top: 1em !important;
  /* Refactor */ }

.mat-form-field-label-wrapper .mat-form-field-label {
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
  letter-spacing: 0em;
  text-align: left;
  color: #676767;
  -webkit-transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.001px) !important;
          transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.001px) !important;
  /* Need to refactor */ }

input.mat-input-element {
  margin-top: 0 !important;
  /* Refactor */
  background: #FFFFFF;
  border-bottom: 0 !important;
  /* Refactor */
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  /* Refactor */
  height: 3.25rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-left: 3.125rem;
  text-align: left;
  font-size: 0.875rem; }

input.mat-input-element:focus {
  font-size: 0.875rem; }

input.mat-input-element.nf-search-invalid + .mat-form-field-label-wrapper label {
  color: #e40046; }

.mat-form-field {
  display: block !important;
  /* Refactor */ }

.mat-form-field-wrapper {
  padding-bottom: 0 !important;
  /* Refactor */ }

.mat-form-field-underline {
  display: none; }

.mat-form-field-infix {
  padding: 0 !important;
  /* Refactor */
  width: 100% !important;
  /* Refactor */
  border-top: 0 !important;
  /* Refactor */ }

.nf-search-input--first,
.nf-search-input--second,
.nf-search-input--departure,
.nf-search-input--return,
.nf-search-input--datepicker,
.nf-search-input--driverage {
  position: relative;
  margin: 0.5rem 0; }

.small-padding {
  padding: 0 0.25rem !important; }

.reduce-margin {
  margin-bottom: -2rem; }

.nf-search-input--first svg,
.nf-search-input--second svg,
.nf-search-input--driverage svg,
.nf-datepicker i {
  position: absolute;
  left: 0.75rem;
  top: 0.75rem;
  z-index: 1;
  fill: #217FA8;
  width: 24px;
  height: 24px;
  display: block; }

.nf-search-input--first i.nf-search-input--close,
.nf-search-input--second i.nf-search-input--close {
  position: absolute;
  left: initial;
  top: 0;
  right: 0px;
  z-index: 1;
  cursor: pointer;
  background: #F1F1F1;
  height: 100%;
  width: 2rem;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  line-height: 3.25rem; }
  .nf-search-input--first i.nf-search-input--close svg,
  .nf-search-input--second i.nf-search-input--close svg {
    fill: #CFCFCF;
    width: 1.25rem;
    height: 1.25rem;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    display: block; }

.nf-search-input--first i.nf-search-input--close:hover svg,
.nf-search-input--second i.nf-search-input--close:hover svg {
  fill: #2dace3; }

.nf-search-input--first input.mat-input-element,
.nf-search-input--second input.mat-input-element {
  border-radius: 4px;
  background: #F1F1F1; }

/*.nf-search-input--second input.mat-input-element {
    border-bottom-right-radius:$border-radius;
    border-top-right-radius:$border-radius;
}*/
.nf-search-input--departure input.mat-input-element,
.nf-search-input--driverage input.mat-input-element {
  border-radius: 4px; }

.nf-search-input--driverage input.mat-input-element {
  background: #F1F1F1; }

.nf-search-input--return input.mat-input-element {
  border-bottom-right-radius: 4px;
  border-top-right-radius: 4px; }

.nf-search-input-departure-destination-error {
  left: 0;
  text-align: center;
  top: -0.75rem;
  padding: 0.3125rem 0 0.25rem 3rem;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  color: #cd174f;
  background: #F1F1F1;
  font-size: 0.75rem;
  white-space: nowrap;
  width: 100%;
  text-overflow: ellipsis;
  overflow: hidden;
  z-index: 1; }
  .nf-search-input-departure-destination-error svg {
    display: none; }

.nf-search-input--multi {
  margin-top: 0.5rem; }

.mat-datepicker-toggle {
  color: #2dace3;
  position: absolute;
  left: 0.25rem;
  top: 0.35rem;
  font-size: 1.5rem !important; }

.nf-search-input--departure .mat-form-field-label-wrapper,
.nf-search-input--return .mat-form-field-label-wrapper {
  display: none; }

.nf-search-input--departure input.mat-input-element,
.nf-search-input--return input.mat-input-element {
  padding-left: 2.5rem; }

.nf-search-input--passengers {
  position: relative;
  margin: 0.5rem 0; }
  .nf-search-input--passengers &gt; label {
    position: absolute;
    left: 3rem;
    top: 0.5rem;
    z-index: 1;
    color: #676767;
    font-size: 12px;
    font-weight: 400;
    line-height: 18px; }

.nf-search-input--passengers input.mat-input-element {
  border-radius: 4px;
  width: 100%;
  border: 0;
  padding-top: 1rem;
  background-color: #F1F1F1;
  font-size: 14px;
  font-weight: 800;
  line-height: 21px;
  letter-spacing: 0em;
  text-align: left;
  color: #393939; }

.nf-search-input--passengers svg {
  position: absolute;
  left: 0.75rem;
  top: 1rem;
  z-index: 1;
  fill: #217FA8;
  width: 24px;
  height: 24px; }

.nf-search-input--submit {
  margin-top: 0.5rem;
  padding-left: 1rem; }
  .nf-search-input--submit button {
    background-color: #478330;
    font-size: 18px;
    font-weight: 800;
    line-height: 27px;
    letter-spacing: 0em;
    text-align: center; }
    .nf-search-input--submit button svg {
      margin-right: 8px; }

.nf-search-input--submit button {
  overflow: hidden;
  height: 3.25rem;
  /*line-height: 3.25rem;
    font-size: 1rem;*/ }
  .nf-search-input--submit button svg {
    vertical-align: middle; }

.nf-search-input--submit button:disabled,
.nf-search-input--submit button[disabled],
.nf-search-input--submit button[disabled]:hover {
  color: #65b146 !important;
  background-color: #65b146 !important; }
  .nf-search-input--submit button:disabled:after,
  .nf-search-input--submit button[disabled]:after,
  .nf-search-input--submit button[disabled]:hover:after {
    content: '';
    position: absolute;
    width: 38px;
    height: 38px;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='38' height='38' viewBox='0 0 38 38'%3E%3Cdefs%3E%3ClinearGradient x1='8.042%25' y1='0%25' x2='65.682%25' y2='23.865%25' id='a'%3E%3Cstop stop-color='%23fff' stop-opacity='0' offset='0%25'/%3E%3Cstop stop-color='%23fff' stop-opacity='.631' offset='63.146%25'/%3E%3Cstop stop-color='%23fff' offset='100%25'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(1 1)'%3E%3Cpath d='M36 18c0-9.94-8.06-18-18-18' id='Oval-2' stroke='url(%23a)' stroke-width='2'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 18 18' to='360 18 18' dur='0.9s' repeatCount='indefinite'/%3E%3C/path%3E%3Ccircle fill='%23fff' cx='36' cy='18' r='1'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 18 18' to='360 18 18' dur='0.9s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); }

.nf-search-input--submit.nf-m-multi button {
  width: 100%; }

.mat-autocomplete-panel::-webkit-scrollbar,
.react-autosuggest__suggestions-list::-webkit-scrollbar {
  width: 4px;
  padding: 0.5rem; }

.mat-autocomplete-panel::-webkit-scrollbar-track,
.react-autosuggest__suggestions-list::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, 0.4);
  border-radius: 4px; }

.mat-autocomplete-panel::-webkit-scrollbar-thumb,
.react-autosuggest__suggestions-list::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.3);
  border-radius: 4px; }

.mat-optgroup label {
  color: #FFFFFF; }

.mat-optgroup.no-label label {
  display: none; }

.nf-search-autocomplete--item {
  color: #CFCFCF;
  margin: 0;
  line-height: 1;
  padding: 0.35rem 0.5rem 0.3rem 1.125rem;
  border-radius: 4px;
  font-size: 0.875rem;
  display: block;
  width: 100%;
  margin-bottom: 0.5rem;
  white-space: initial;
  text-align: left; }

.nf-search-autocomplete .mat-active .nf-search-autocomplete--item {
  background: rgba(0, 0, 0, 0.1); }

.nf-search-autocomplete .mat-selected .nf-search-autocomplete--item {
  color: #FFFFFF;
  background: #2dace3; }

.nf-search-autocomplete .nf-search-autocomplete--item .nf-search-autocomplete--additional {
  font-size: 0.85rem;
  margin-top: 0.25rem;
  color: #676767; }

.nf-search-autocomplete .mat-selected .nf-search-autocomplete--item .nf-search-autocomplete--additional {
  color: #EEEEEE; }

.nf-search-autocomplete .mat-option {
  height: auto;
  line-height: 1; }

.nf-search-autocomplete .mat-optgroup .mat-option:not(.mat-option-multiple) {
  padding-left: 1rem; }

.mat-autocomplete-panel,
.react-autosuggest__suggestions-list {
  background-color: #454545;
  border-radius: 4px;
  border-right: 1rem solid #454545;
  border-top: 1rem solid #454545;
  border-bottom: 1rem solid #454545;
  max-height: 16.875rem;
  text-align: left; }

/* Search - Passengers */
.nf-search-input--passengerinput,
.nf-search-input--passengerval {
  cursor: pointer; }

.nf-search-input--passengerinput:focus,
.nf-search-input--passengerval:focus {
  outline: 0; }

.nf-search-popup--passengers {
  position: absolute;
  color: #CFCFCF;
  background: #484848;
  /* Refactor */
  top: 4rem;
  right: 0;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all ease 200ms;
  transition: all ease 200ms;
  z-index: 1;
  text-align: left;
  width: 320px;
  min-width: 100%;
  font-size: 0.875rem;
  border-radius: 4px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-box-shadow: 0 2px 0 0 #363636;
          box-shadow: 0 2px 0 0 #363636; }

.nf-search-popup--passengers h4 {
  color: #2dace3;
  margin-top: 1rem;
  padding-left: 1rem; }

.nf-search-popup--passengers.nf-m--open,
.nf-search-input--passengerinput.nf-m--open:after {
  opacity: 1;
  visibility: visible;
  z-index: 9; }

.nf-search-input--passengerinput:after {
  content: '';
  display: inline-block;
  position: absolute;
  bottom: -0.75rem;
  left: 1.5rem;
  width: 0;
  height: 0;
  border-bottom: 1rem solid #484848;
  border-left: 0.75rem solid transparent;
  border-right: 0.75rem solid transparent;
  margin-left: -0.75rem;
  opacity: 0;
  visibility: hidden; }

.nf-search-input--passengers.nf-search-direct &gt; label {
  display: none; }

.nf-search-input--passengers.nf-search-direct .nf-search-input--passengerval {
  padding-bottom: 1rem;
  padding-top: 0; }

.nf-search-input--passengers.nf-search-direct .nf-search-input--passengerval + span {
  position: absolute;
  left: 3.25rem;
  bottom: 0.375rem;
  font-size: 0.875rem;
  color: #2dace3; }

.nf-search-input--passengers .nf-search-popup--cross {
  display: none; }

.nf-search-popup--headertext {
  width: 100%;
  padding: 0.5rem 1.5rem 0rem;
  color: #f3f3f3; }

.nf-search-popup--adults,
.nf-search-popup--children,
.nf-search-popup--ages,
.nf-search-popup--agewarning,
.nf-search-popup--class,
.nf-search-popup--infantwarning,
.nf-search-popup--close,
.nf-search-popup--direct,
.nf-search-popup--infantcountwarning,
.nf-search-popup--agenotselectedwarning {
  width: 100%;
  padding: 1rem 1.5rem;
  border-bottom: 1px solid #595959;
  color: #EEEEEE;
  overflow: hidden;
  position: relative;
  line-height: 2.5rem; }

.nf-search-popup--passengers .nf-search-popup--class,
.nf-search-popup--ages {
  overflow: visible;
  color: #454545; }
  .nf-search-popup--passengers .nf-search-popup--class svg,
  .nf-search-popup--ages svg {
    position: relative;
    top: 0;
    left: 0;
    z-index: auto; }

.nf-search-popup--ages label {
  color: #FFFFFF;
  margin-right: 1em; }

.nf-search-popup--ages .inline {
  display: inline-block;
  width: 8rem;
  text-align: left; }

.nf-search-popup--agewarning,
.nf-search-popup--infantwarning,
.nf-search-popup--close,
.nf-search-popup--infantcountwarning,
.nf-search-popup--agenotselectedwarning {
  border-bottom: 0; }
  .nf-search-popup--agewarning svg,
  .nf-search-popup--infantwarning svg,
  .nf-search-popup--close svg,
  .nf-search-popup--infantcountwarning svg,
  .nf-search-popup--agenotselectedwarning svg {
    display: none; }

.nf-search-popup--passengers select,
.nf-search-popup--passengers input {
  color: #454545;
  -webkit-appearance: none;
  -moz-appearance: none;
  height: 2.375rem;
  line-height: 2.375rem;
  padding-left: 1.5rem;
  border: 0;
  border-radius: 4px;
  outline: 0;
  cursor: pointer;
  background-color: #FFFFFF; }

.nf-search-popup--passengers input {
  -moz-appearance: textfield; }

.nf-search-popup--passengers select,
.nf-search-popup--ages input[type=number] {
  background-image: url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOCAxOCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiMyY2FjZTM7fS5jbHMtMntmaWxsOm5vbmU7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5DYXJhdDwvdGl0bGU+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNNS41Niw2LjU2LDksMy4xMmwzLjQ0LDMuNDRMMTMuNSw1LjUsOSwxLDQuNSw1LjVaIi8+PHBhdGggY2xhc3M9ImNscy0yIiBkPSJNMCwySDE4VjIwSDBaIi8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTIuNDQsMTEsOSwxNC40Myw1LjU2LDExLDQuNSwxMi4wNiw5LDE2LjU2bDQuNS00LjVaIi8+PC9zdmc+);
  background-repeat: no-repeat;
  background-size: 22px;
  background-position: right 10px center; }

/*.nf-search-input--passengerinput input[type=text] {
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='21' viewBox='0 0 20 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_1609_3392)'%3E%3Cpath d='M13.825 7.65833L10 11.475L6.175 7.65833L5 8.83333L10 13.8333L15 8.83333L13.825 7.65833Z' fill='%23217FA8'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_1609_3392'%3E%3Crect width='20' height='20' fill='white' transform='translate(0 0.5)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
    background-repeat: no-repeat no-repeat;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    background-size: 20px;
    background-position: right 5px center;
}*/
.nf-search-popup--adults,
.nf-search-popup--children {
  text-align: left; }

.nf-search-popup--adults label,
.nf-search-popup--children label {
  vertical-align: middle;
  display: inline-block; }

.nf-search-popup--adults div.inline,
.nf-search-popup--children div.inline {
  display: inline-block; }

.nf-search-popup--adults input,
.nf-search-popup--children input {
  padding: 0;
  width: 3rem;
  text-align: center; }

.nf-search-popup--counter {
  float: right; }
  .nf-search-popup--counter .nf-form-field {
    margin-bottom: 0; }

.nf-search-popup--ageinc,
.nf-search-popup--agedec,
.ng-add-room--btn,
.ng-remove-room--btn {
  color: #FFFFFF;
  background: #2dace3;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  width: 2.375rem;
  height: 2.375rem;
  -webkit-box-shadow: 0 2px 0 0 #3a7295, 0 1px 1px rgba(0, 0, 0, 0.4);
          box-shadow: 0 2px 0 0 #3a7295, 0 1px 1px rgba(0, 0, 0, 0.4);
  position: relative;
  vertical-align: middle;
  cursor: pointer;
  -webkit-transition: all ease 100ms;
  transition: all ease 100ms; }

.nf-search-popup--ageinc:hover,
.nf-search-popup--agedec:hover,
.ng-add-room--btn:hover,
.ng-remove-room--btn:hover {
  background: #2592C1;
  /* Refactor */ }

.nf-search-popup--ageinc:active,
.nf-search-popup--agedec:active,
.ng-add-room--btn:active,
.ng-remove-room--btn:active {
  top: 1px;
  -webkit-box-shadow: 0 1px 0 0 #3a7295, 0 1px 1px rgba(0, 0, 0, 0.4);
          box-shadow: 0 1px 0 0 #3a7295, 0 1px 1px rgba(0, 0, 0, 0.4); }

.nf-search-popup--ageinc {
  margin-left: 0.5rem; }

.nf-search-popup--agedec {
  margin-right: 0.5rem; }

.nf-search-popup--ageinc:before,
.nf-search-popup--ageinc:after,
.nf-search-popup--agedec:before,
.ng-add-room--btn:before,
.ng-add-room--btn:after,
.ng-remove-room--btn:before {
  content: '';
  display: inline-block;
  width: 14px;
  height: 2px;
  background: #FFFFFF;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -7px;
  margin-top: -1px; }

.nf-search-popup--ageinc:after,
.ng-add-room--btn:after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg); }

.nf-search-popup--class select {
  width: 100%; }

.nf-search-popup--passengers select::-ms-expand {
  display: none; }

.nf-search-popup--agewarning p,
.nf-search-popup--infantwarning p,
.nf-search-popup--infantcountwarning p,
.nf-search-popup--agenotselectedwarning p {
  line-height: 1.3;
  margin: 0; }

.nf-search-popup--infantcountwarning.nf-form-field-error,
.nf-search-popup--agenotselectedwarning.nf-form-field-error {
  font-size: 0.875rem;
  position: static;
  background-color: #ef3a43;
  color: #FFFFFF;
  padding: 1rem 1.5rem;
  display: block;
  height: auto;
  line-height: 2.5rem; }

.nf-search-popup--ages {
  position: relative;
  text-align: right; }

.nf-search-popup--ages select {
  width: 6.25rem;
  margin-left: 1rem; }

.nf-search-popup--direct,
.nf-search-direct-option {
  line-height: 1; }
  .nf-search-popup--direct .nf-form-field,
  .nf-search-direct-option .nf-form-field {
    margin-bottom: 0; }

.nf-search-popup--direct label,
.nf-search-direct-option label {
  color: #393939;
  position: relative;
  padding-left: 1.5rem;
  height: 1.25rem;
  line-height: 18px;
  vertical-align: middle;
  cursor: pointer;
  display: inline-block;
  font-weight: 400;
  font-size: 12px;
  margin-bottom: 0; }

.nf-search-popup--direct label:before,
.nf-search-direct-option label:before {
  content: '';
  width: 16px;
  height: 16px;
  color: #454545;
  background: #FFFFFF;
  border: 2px solid #8A8A8A;
  border-radius: 3px;
  position: absolute;
  left: 0;
  top: 0;
  display: inline-block;
  -webkit-transition: all ease 150ms;
  transition: all ease 150ms;
  text-align: center; }
  .nf-search-popup--direct label:before:hover,
  .nf-search-direct-option label:before:hover {
    background: #EAF7FC; }

.nf-search-popup--direct label:hover:before,
.nf-search-direct-option label:hover:before {
  border: 2px solid #676767; }

.nf-search-popup--direct input:checked + label:before,
.nf-search-direct-option input:checked + label:before {
  background: #1A6788;
  border: none; }

.nf-search-popup--direct input:checked + label:after,
.nf-search-direct-option input:checked + label:after {
  content: '';
  display: block;
  width: 9px;
  height: 5px;
  border-bottom: 2px solid #FFFFFF;
  border-left: 2px solid #FFFFFF;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: -webkit-transform ease 0.25s;
  transition: -webkit-transform ease 0.25s;
  transition: transform ease 0.25s;
  transition: transform ease 0.25s, -webkit-transform ease 0.25s;
  position: absolute;
  top: 5px;
  left: 3.5px; }

.nf-search-popup--direct input:checked + label:hover:before,
.nf-search-direct-option input:checked + label:hover:before {
  background: #217FA8; }

.nf-search-popup--direct input[disabled] + label:before,
.nf-search-direct-option input[disabled] + label:before {
  border: 2px solid #ACACAC; }

.nf-search-popup--direct input:checked[disabled] + label:before,
.nf-search-direct-option input:checked[disabled] + label:before {
  border: none;
  background: #ACACAC; }

.nf-search-popup--direct input,
.nf-search-direct-option input {
  position: absolute;
  width: 0;
  height: 0;
  display: inline-block; }

.nf-holiday-search .ng-add-room,
.nf-holiday-search .ng-remove-room {
  position: relative;
  padding: 0.5rem 1rem;
  background: rgba(0, 0, 0, 0.1);
  cursor: pointer; }

.nf-holiday-search .ng-add-room--btn,
.nf-holiday-search .ng-remove-room--btn {
  margin-right: 0.75rem;
  width: 1.5rem;
  height: 1.5rem;
  -webkit-box-shadow: none;
          box-shadow: none; }

.mat-form-field-label-wrapper .mat-form-field-label {
  -webkit-transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.001px) !important;
          transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.001px) !important; }

/* MATERIAL INDIGO-PINK.CSS  */
.mat-form-field {
  font-size: inherit;
  font-weight: 400;
  line-height: 1.125;
  font-family: Roboto,"Helvetica Neue",sans-serif; }

.mat-form-field-wrapper {
  padding-bottom: 1.25em; }

.mat-form-field-prefix .mat-icon, .mat-form-field-suffix .mat-icon {
  font-size: 150%;
  line-height: 1.125; }

.mat-form-field-prefix .mat-icon-button, .mat-form-field-suffix .mat-icon-button {
  height: 1.5em;
  width: 1.5em; }

.mat-form-field-prefix .mat-icon-button .mat-icon, .mat-form-field-suffix .mat-icon-button .mat-icon {
  height: 1.125em;
  line-height: 1.125; }

.mat-form-field-infix {
  padding: .4375em 0;
  border-top: .84375em solid transparent; }

.mat-form-field-can-float .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label, .mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label {
  -webkit-transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.001px);
          transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.001px);
  -ms-transform: translateY(-1.28125em) scale(0.75);
  width: 133.33333%; }

.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill + .mat-form-field-label-wrapper .mat-form-field-label {
  -webkit-transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.00101px);
          transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.00101px);
  -ms-transform: translateY(-1.28124em) scale(0.75);
  width: 133.33334%; }

.mat-form-field-can-float .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper .mat-form-field-label {
  -webkit-transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.00102px);
          transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.00102px);
  -ms-transform: translateY(-1.28123em) scale(0.75);
  width: 133.33335%; }

.mat-form-field-label-wrapper {
  top: -.84375em;
  padding-top: .84375em; }

.mat-form-field-label {
  top: 1.28125em; }

.mat-form-field-underline {
  bottom: 1.25em; }

.mat-form-field-subscript-wrapper {
  font-size: 75%;
  margin-top: .54167em;
  top: calc(100% - 1.66667em); }

.mat-option {
  font-family: Roboto,"Helvetica Neue",sans-serif;
  font-size: 16px; }

.mat-optgroup-label {
  font: 500 14px/24px Roboto,"Helvetica Neue",sans-serif; }

.mat-option {
  color: rgba(0, 0, 0, 0.87); }

.mat-option:focus:not(.mat-option-disabled), .mat-option:hover:not(.mat-option-disabled) {
  background: rgba(0, 0, 0, 0.04); }

.mat-primary .mat-option.mat-selected:not(.mat-option-disabled) {
  color: #3f51b5; }

.mat-accent .mat-option.mat-selected:not(.mat-option-disabled) {
  color: #e40046; }

.mat-warn .mat-option.mat-selected:not(.mat-option-disabled) {
  color: #f44336; }

.mat-option.mat-selected:not(.mat-option-multiple):not(.mat-option-disabled) {
  background: rgba(0, 0, 0, 0.04); }

.mat-option.mat-active {
  background: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.87); }

.mat-option.mat-option-disabled {
  color: rgba(0, 0, 0, 0.38); }

.mat-form-field-label {
  color: rgba(0, 0, 0, 0.54); }

.mat-focused .mat-form-field-label {
  color: rgba(0, 0, 0, 0.54); }

.mat-focused .mat-form-field-label.mat-accent {
  color: #e40046; }

.mat-focused .mat-form-field-label.mat-warn {
  color: #f44336; }

.mat-focused .mat-form-field-required-marker {
  color: #e40046; }

.mat-form-field-underline {
  background-color: rgba(0, 0, 0, 0.42); }

.cdk-visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  outline: 0;
  -webkit-appearance: none;
  -moz-appearance: none; }

.cdk-global-overlay-wrapper, .cdk-overlay-container {
  pointer-events: none;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%; }

.cdk-overlay-container {
  position: fixed;
  z-index: 1000; }

.cdk-global-overlay-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  z-index: 1000; }

.cdk-overlay-pane {
  position: absolute;
  pointer-events: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 1000; }

.cdk-overlay-backdrop {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  pointer-events: auto;
  -webkit-tap-highlight-color: transparent;
  -webkit-transition: opacity 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
  transition: opacity 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
  opacity: 0; }

.cdk-overlay-backdrop.cdk-overlay-backdrop-showing {
  opacity: 1; }

.cdk-overlay-dark-backdrop {
  background: rgba(0, 0, 0, 0.288); }

.cdk-overlay-transparent-backdrop, .cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing {
  opacity: 0; }

.cdk-global-scrollblock {
  position: fixed;
  width: 100%;
  overflow-y: scroll; }

.mat-form-field-disabled .mat-form-field-underline {
  background-image: -webkit-gradient(linear, left top, right top, color-stop(0, rgba(0, 0, 0, 0.42)), color-stop(33%, rgba(0, 0, 0, 0.42)), color-stop(0, transparent));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.42) 0, rgba(0, 0, 0, 0.42) 33%, transparent 0);
  background-size: 4px 1px;
  background-repeat: repeat-x; }

.mat-form-field-ripple {
  background-color: #3f51b5; }

.mat-form-field-ripple.mat-accent {
  background-color: #e40046; }

.mat-form-field-invalid .mat-form-field-ripple {
  background-color: #f44336; }

.mat-form-field-invalid .mat-input-element,
.mat-list .mat-list-item,
.mat-nav-list .mat-list-item,
.mat-selection-list .mat-list-item {
  color: rgba(0, 0, 0, 0.87); }

.mat-list .mat-list-option,
.mat-nav-list .mat-list-option,
.mat-selection-list .mat-list-option {
  color: rgba(0, 0, 0, 0.87); }

.mat-progress-spinner circle,
.mat-spinner circle {
  stroke: #3f51b5; }

.mat-progress-spinner.mat-accent circle,
.mat-spinner.mat-accent circle {
  stroke: #e40046; }

.mat-progress-spinner.mat-warn circle,
.mat-spinner.mat-warn circle {
  stroke: #f44336; }

.mat-form-field.mat-focused.mat-primary .mat-select-arrow {
  color: #3f51b5; }

.mat-form-field.mat-focused.mat-accent .mat-select-arrow {
  color: #e40046; }

.mat-form-field.mat-focused.mat-warn .mat-select-arrow {
  color: #f44336; }

.mat-form-field .mat-select.mat-select-invalid .mat-select-arrow {
  color: #f44336; }

.mat-form-field .mat-select.mat-select-disabled .mat-select-arrow {
  color: rgba(0, 0, 0, 0.38); }

@media only screen and (min-width: 993px) {
  .nf-search-input--departure,
  .nf-search-input--multi {
    margin-left: 1rem;
    margin-right: 1rem; }
  .nf-search-input--submit.nf-m-multi {
    padding-left: 0; }
  .nf-search-input--return {
    margin-right: 1rem; }
  .nf-search-input-departure-destination-error {
    padding-left: 1rem; } }

@media only screen and (max-width: 1380px) {
  .nf-search-input--submit {
    /*padding-left: 0;*/ } }

@media only screen and (max-width: 992px) {
  .nf-search-input--passengers {
    margin-left: 1rem; }
  .nf-search-control {
    top: 9rem; }
  .nf-home .nf-ng-search {
    top: 8rem; }
  .nf-ng-search {
    top: 18rem; }
  /* Search Submit Button */
  .nf-search-input--submit {
    padding-left: 1rem; }
  /* Hotel Search */
  .nf-ng-holiday-search .nf-search-input--departure {
    margin-right: 0.25rem; }
  .nf-ng-holiday-search .nf-search-input--passengers {
    margin-left: 0.25rem; } }

@media only screen and (max-width: 600px) {
  .nf-search-input-cabinclass.nf-search-direct {
    background: white;
    -webkit-background-clip: text;
    -webkit-text-fill-color: #2dace3; }
  .nf-search-input-cabinclass-wrapper.nf-search-direct {
    max-width: 200px; }
  .nf-search-input--submit {
    padding-left: 0;
    margin-top: 1.25rem; }
  .nf-search-input--first,
  .nf-search-input--second {
    margin: 0; }
  .nf-search-input--first {
    /*border-bottom: 1px solid $grey-200;*/
    margin-top: 0.5rem;
    margin-bottom: 0.5rem; }
  .nf-search-input-departure-destination-error {
    border: 1px solid #cd174f;
    text-overflow: unset;
    white-space: pre-wrap;
    padding-left: 0; }
  .nf-search-input--first.nf-search-input-multi {
    margin-top: 1rem; }
  .nf-search-input--first input.mat-input-element {
    border-radius: 4px;
    /*border-top-left-radius: $border-radius;
        border-top-right-radius: $border-radius;*/
    border-right: 0; }
  .nf-search-input--second input.mat-input-element {
    border-radius: 4px;
    /*border-bottom-left-radius: $border-radius;
        border-bottom-right-radius: $border-radius;*/ }
  .nf-search-input--departure,
  .nf-search-input--return {
    margin: 0;
    margin-top: 1.25rem;
    text-align: left; }
  .nf-search-input--departure input.mat-input-element,
  .nf-search-input--return input.mat-input-element {
    padding-left: 3rem; }
  .nf-search-input--passengers {
    margin: 0;
    margin-top: 2rem; }
  .nf-search-popup--passengers {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: auto;
    padding-top: 3rem;
    overflow-y: scroll;
    border-radius: 0;
    z-index: 2; }
  .nf-search-input--passengers .nf-search-popup--cross {
    position: absolute;
    display: inline-block;
    left: initial;
    right: 1rem;
    top: 1rem; }
    .nf-search-input--passengers .nf-search-popup--cross svg {
      fill: #CFCFCF;
      position: static; }
  .nf-search-control {
    margin: 0;
    max-width: 100%;
    overflow: hidden;
    width: 100%;
    top: 3rem; }
  .nf-ng-search {
    top: 16rem; }
  .nf-searchpanel-options {
    display: block; }
    .nf-searchpanel-options .nf-search-cabin-class {
      width: 35%;
      float: left;
      margin-left: 0;
      position: relative; }
    .nf-searchpanel-options .nf-search-direct-option {
      width: 50%;
      border: none;
      margin-left: 0;
      padding-left: 0;
      float: right;
      position: absolute;
      left: 50%;
      bottom: 10%; }
  .nf-home .nf-ng-search--radio {
    text-align: center;
    margin: 0rem 1rem;
    border: none; }
  .nf-ng-search--radio {
    margin: 1rem -0.5rem; }
  .nf-ng-search--radio label {
    font-size: 0.75rem;
    padding: 0 1.25rem 0 1.5rem;
    margin-right: 0; }
  /* Refactor */
  .nf-ng-search &gt; .container &gt; .row &gt; .col {
    padding: 0 0.5rem; } }

/** NEW REACT SEARCH */
.nf-flight-search-dest {
  margin-top: -2.5rem; }
  .nf-flight-search-dest .nf-flight-search {
    border-top-left-radius: 4px; }

.nf-flight-search {
  color: #4a4a4a;
  margin: 0 1rem;
  background: #FFFFFF;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
  padding: 0.5rem 0; }
  .nf-flight-search .nf-form-field {
    margin-bottom: 0; }

.react-autosuggest__container {
  position: relative; }

.react-autosuggest__input {
  border-radius: 4px;
  border: 0;
  font-size: 0.875rem;
  height: 3.25rem;
  background: #F1F1F1; }

.react-autosuggest__input:focus {
  outline: 0; }

.nf-search-autocomplete-label {
  position: absolute;
  left: 3rem;
  top: 0.5rem;
  z-index: 1;
  color: #676767;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 18px; }

.nf-search-input--first .react-autosuggest__input {
  /*border-top-right-radius:0;
    border-bottom-right-radius:0;
    border-right:1px solid $grey-200;*/
  /*padding-right:1rem; */ }

.nf-search-input--second .react-autosuggest__input {
  /*border-top-left-radius:0;
    border-bottom-left-radius:0;*/
  /*padding-right:1rem;*/ }

.react-autosuggest__input--open {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.react-autosuggest__suggestions-container {
  display: none; }

.react-autosuggest__suggestions-container--open {
  display: block;
  position: absolute;
  width: 100%;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  z-index: 4; }

.react-autosuggest__suggestions-list-header {
  background: #454545;
  color: #FFFFFF;
  padding-top: 10px;
  padding-left: 10px;
  font-size: 14px; }

.react-autosuggest__suggestions-list {
  margin: 0;
  padding: 0;
  list-style-type: none;
  overflow-y: scroll; }

.react-autosuggest__suggestion {
  cursor: pointer; }

.react-autosuggest__suggestion--highlighted .nf-search-autocomplete--item {
  background: rgba(0, 0, 0, 0.1); }

.suggestion-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-repeat: no-repeat; }

.react-autosuggest__suggestion--focused .highlight {
  color: #120000; }

.gm-autocomplete .nf-form-field-error {
  position: absolute;
  left: 3rem;
  top: 0.6875rem;
  z-index: 2;
  color: #cd174f;
  background: #F1F1F1;
  font-size: 0.75rem;
  line-height: 1;
  white-space: nowrap;
  width: calc(100% - 5rem);
  text-overflow: ellipsis;
  overflow: hidden;
  height: auto;
  padding-top: 0; }
  .gm-autocomplete .nf-form-field-error svg {
    display: none; }

.react-autosuggest__container input::-webkit-input-placeholder {
  color: #d1d1d1;
  font-size: 0.8125rem; }

.react-autosuggest__container input::-moz-placeholder {
  color: #d1d1d1;
  font-size: 0.8125rem; }

.react-autosuggest__container input:-ms-input-placeholder {
  color: #d1d1d1;
  font-size: 0.8125rem; }

.react-autosuggest__container input::-ms-input-placeholder {
  color: #d1d1d1;
  font-size: 0.8125rem; }

.react-autosuggest__container input::placeholder {
  color: #d1d1d1;
  font-size: 0.8125rem; }

@media only screen and (max-width: 600px) {
  .nf-search-input--first .react-autosuggest__input {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    border-right: 0; }
  .nf-search-input--second .react-autosuggest__input {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px; }
  .nf-search-popup--close-icon {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    cursor: pointer; }
    .nf-search-popup--close-icon svg {
      fill: #CFCFCF;
      display: block;
      position: static; } }

@media only screen and (min-width: 601px) {
  .nf-search-popup--passengers .nf-search-popup--close-icon {
    display: none; } }

.nf-flight-search.m--fixed-departure .nf-search-input--second .react-autosuggest__input {
  border-radius: 4px; }

@media only screen and (max-width: 600px) {
  .nf-flight-search.m--fixed-departure .nf-search-input--first.nf-search-input-multi {
    border-bottom: 0; }
    .nf-flight-search.m--fixed-departure .nf-search-input--first.nf-search-input-multi .react-autosuggest__input {
      border-radius: 4px; }
  .nf-flight-search .nf-search-input--passengers {
    margin-top: 1rem; } }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-flight-search.m--fixed-departure .nf-search-input--second {
    margin-right: 0.5rem; }
  .nf-flight-search.m--fixed-departure .nf-search-input--departure {
    margin-left: 0.5rem; }
  .nf-flight-search.m--fixed-departure .nf-search-input--passengers {
    margin-left: 0;
    margin-right: 0.5rem; }
  .nf-flight-search.m--fixed-departure .nf-search-popup--passengers {
    right: auto;
    left: 0; }
  .nf-flight-search.m--fixed-departure .nf-search-input--submit {
    padding-left: 0.5rem; }
  .nf-multi .nf-search-input--departure,
  .nf-multi .nf-search-input--multi {
    margin-right: 0.5rem; }
  .nf-multi .nf-search-input--passengers {
    margin-left: 0.5rem; }
  .nf-multi .nf-search-input--submit {
    padding-left: 0.5rem; }
  .nf-multi .nf-flight-search.m--fixed-departure .nf-search-input--departure,
  .nf-multi .nf-flight-search.m--fixed-departure .nf-search-input--multi {
    margin-right: 0;
    margin-left: 0.5rem; }
  .nf-multi .nf-flight-search.m--fixed-departure .nf-search-input--first.nf-search-input-multi {
    width: calc(200% - 0.5rem); }
    .nf-multi .nf-flight-search.m--fixed-departure .nf-search-input--first.nf-search-input-multi .react-autosuggest__input {
      border-radius: 4px; }
  .nf-multi .nf-flight-search.m--fixed-departure .m--fixed-multi-pax &gt; .row &gt; .col {
    width: 50%; }
  .nf-multi .nf-flight-search.m--fixed-departure .nf-search-input--passengers {
    margin-top: 0.5rem; }
  .nf-multi .nf-flight-search.m--fixed-departure .nf-search-input--submit {
    padding-left: 0.5rem; }
  .nf-flight-search .nf-searchpanel-options .nf-search-cabin-class {
    width: 15%; } }

@media only screen and (min-width: 993px) {
  .nf-multi .nf-flight-search.m--fixed-departure .nf-search-input--first {
    width: 200%; }
    .nf-multi .nf-flight-search.m--fixed-departure .nf-search-input--first .react-autosuggest__input {
      border-right: 0;
      border-radius: 4px; } }

.nf-search-anywhere-option {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 3rem;
  -webkit-filter: drop-shadow(0 0.25rem 0.1875rem rgba(0, 0, 0, 0.1));
          filter: drop-shadow(0 0.25rem 0.1875rem rgba(0, 0, 0, 0.1)); }

.nf-search-anywhere-option-info {
  color: #FFFFFF;
  background: #2dace3;
  border-radius: 4px;
  padding: 0.5rem 1rem;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-search-anywhere-option-info svg {
    width: 1.5rem;
    height: 1.5rem;
    fill: #FFFFFF;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin-right: 1rem;
    position: static; }

.nf-search-anywhere-option-title {
  font-size: 0.9375rem; }

.nf-search-anywhere-option-desc {
  font-size: 0.75rem;
  color: #EEEEEE;
  display: none; }

.nf-search-anywhere-option-cta {
  position: relative;
  width: 3rem;
  background: #2dace3;
  border-radius: 4px; }
  .nf-search-anywhere-option-cta:before {
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    top: 45%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 0.75rem;
    height: 0.75rem;
    border-left: 2px solid #FFFFFF;
    border-bottom: 2px solid #FFFFFF;
    border-bottom-left-radius: 0.5rem; }
  .nf-search-anywhere-option-cta:after {
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    top: 45%;
    -webkit-transform: translate(-1px, 1px) rotate(-45deg);
            transform: translate(-1px, 1px) rotate(-45deg);
    width: 0.5rem;
    height: 0.5rem;
    border-right: 2px solid #FFFFFF;
    border-bottom: 2px solid #FFFFFF; }

.react-autosuggest__suggestion:last-of-type .nf-search-autocomplete--item {
  padding: 0;
  padding-left: 1.25rem;
  margin-top: 0.35rem; }

.react-autosuggest__suggestion--highlighted:last-of-type .nf-search-autocomplete--item {
  -webkit-box-shadow: 0 0.35rem 0 rgba(0, 0, 0, 0.1), 0 -0.35rem 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0.35rem 0 rgba(0, 0, 0, 0.1), 0 -0.35rem 0 rgba(0, 0, 0, 0.1); }

.react-autosuggest__suggestion + .react-autosuggest__suggestion .nf-search-anywhere-option {
  top: 100%;
  bottom: auto; }

.react-autosuggest__suggestion--highlighted .nf-search-anywhere-option-info,
.react-autosuggest__suggestion--highlighted .nf-search-anywhere-option-cta {
  background: #1da1da; }

.nf-flights-anywhere-header {
  color: #FFFFFF;
  background: #2dace3;
  font-size: 0.875rem;
  text-align: left;
  font-weight: normal;
  line-height: 2.3;
  padding: 0 1rem;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  position: relative; }

.nf-flights-anywhere-results {
  margin: 0; }

.nf-flights-anywhere-result {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  margin-bottom: 1.25rem;
  overflow: hidden; }
  .nf-flights-anywhere-result.m--expanded .nf-flights-anywhere-result-summary {
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    overflow: hidden; }
  .nf-flights-anywhere-result.m--expanded .nf-flights-anywhere-result-summary-country {
    padding: 0 1.5rem; }
  .nf-flights-anywhere-result.m--expanded .nf-flights-anywhere-result-summary-price span {
    display: none; }

.nf-flights-anywhere-result + .nf-flights-anywhere-result {
  border-radius: 4px; }

.nf-flights-anywhere-result-summary {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  min-height: 6.5rem; }

.nf-flights-anywhere-result-summary-img {
  width: 8.875rem;
  background: #CFCFCF;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-right: 1.25rem; }
  .nf-flights-anywhere-result-summary-img &gt; img {
    width: 100%;
    display: block; }

.nf-flights-anywhere-result-summary-info {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 45%;
  font-size: 1.125rem;
  background-color: #FFFFFF;
  margin-right: 0.5rem;
  font-weight: bold;
  line-height: 1.3; }
  .nf-flights-anywhere-result-summary-info:after {
    content: '';
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-top-right-radius: 0.625rem;
    border-bottom-right-radius: 0.625rem;
    width: 0.5rem;
    height: 100%;
    position: absolute;
    right: auto;
    left: 100%;
    top: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' viewBox='0 0 75 75'%3E%3Cpath d='M0 0v75h75V0H0zm37.5 57C26.2 57 17 47.8 17 36.5S26.2 16 37.5 16 58 25.2 58 36.5 48.8 57 37.5 57z' fill='%23fff'/%3E%3C/svg%3E");
    background-position: left top -0.5rem;
    background-position-x: 0;
    background-position-y: 0; }

.nf-flights-anywhere-result-summary-price {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 1.25rem;
  background-color: #FFFFFF;
  margin-left: 0.5rem;
  font-size: 0.8125rem;
  white-space: pre-wrap;
  line-height: 1; }
  .nf-flights-anywhere-result-summary-price strong {
    font-size: 1.5rem; }
  .nf-flights-anywhere-result-summary-price:before {
    content: '';
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: 0.625rem;
    border-bottom-left-radius: 0.625rem;
    width: 0.5rem;
    height: 100%;
    position: absolute;
    left: auto;
    right: 100%;
    top: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' viewBox='0 0 75 75'%3E%3Cpath d='M0 0v75h75V0H0zm37.5 57C26.2 57 17 47.8 17 36.5S26.2 16 37.5 16 58 25.2 58 36.5 48.8 57 37.5 57z' fill='%23fff'/%3E%3C/svg%3E");
    background-position: right top -0.5rem;
    background-position-x: -0.5rem;
    background-position-y: 0; }

.nf-flights-anywhere-result-summary-cta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 12.5rem;
  padding: 1.25rem;
  background: #FFFFFF; }

.nf-flights-anywhere-result-details {
  background: #FFFFFF;
  padding: 1.25rem;
  border-radius: 4px;
  border-top: 1px dashed #EEEEEE; }

.nf-flights-anywhere-result-details-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0; }
  .nf-flights-anywhere-result-details-wrap &gt; img {
    width: 20%;
    height: auto;
    max-width: 15.875rem;
    max-height: 15.875rem;
    display: block;
    margin-right: 1.5rem;
    background: #EEEEEE; }

.nf-flights-anywhere-result-details-items {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.nf-flights-anywhere-result-details-item &gt; .nf-flights-anywhere-result-details-link {
  color: inherit;
  text-decoration: none; }

.nf-flights-anywhere-result-details-item + .nf-flights-anywhere-result-details-item .nf-flights-anywhere-result-details-link {
  padding-top: 1rem; }

.nf-flights-anywhere-result-details-item + .nf-flights-anywhere-result-details-item {
  border-top: 1px dashed #EEEEEE; }

.nf-flights-anywhere-result-details-link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 1rem; }

.nf-flights-anywhere-result-details-info {
  font-size: 0.8125rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1.3; }
  .nf-flights-anywhere-result-details-info svg {
    width: 4rem;
    display: none; }

.nf-flights-anywhere-result-details-destination {
  font-size: 1.125rem;
  font-weight: bold; }

.nf-flights-anywhere-result-details-dates .m--mismatch {
  background-color: #f8e71e; }

.nf-flights-anywhere-result-details-airline {
  color: #979797;
  font-size: 0.75rem;
  margin: 0.375rem 0 1rem; }

.nf-flights-anywhere-result-details-price {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 0 1.5rem;
  font-size: 1.5rem;
  white-space: pre;
  font-weight: bold;
  margin-left: auto; }

.nf-flights-anywhere-result-details-cta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 10rem; }

.nf-flights-anywhere-result-details-more {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-top: 1px dashed #EEEEEE;
  padding-top: 1.5rem; }

@media only screen and (max-width: 992px) {
  .nf-flights-anywhere-header {
    margin-top: 1rem; }
  .nf-flights-anywhere-result-summary-price span,
  .nf-flights-anywhere-result-details-price span {
    text-align: center;
    white-space: pre-line; }
  .nf-flights-anywhere-result-summary-price strong,
  .nf-flights-anywhere-result-details-price strong {
    font-size: 1.25rem;
    line-height: 1.1; }
  .nf-flights-anywhere-result-details-price {
    font-size: 1.25rem; } }

@media only screen and (max-width: 600px) {
  .nf-flights-anywhere-result {
    position: relative;
    margin-bottom: 1.25rem;
    overflow: initial; }
    .nf-flights-anywhere-result.m--expanded .nf-flights-anywhere-result-summary-country {
      padding: 0; }
    .nf-flights-anywhere-result + .nf-flights-anywhere-result:before {
      content: "";
      display: block;
      border-top-left-radius: 0.625rem;
      border-top-right-radius: 0.625rem;
      width: 100%;
      height: 0.625rem;
      position: absolute;
      left: 0;
      bottom: 100%;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' viewBox='0 0 75 75'%3E%3Cpath d='M0 0v75h75V0H0zm37.5 57C26.2 57 17 47.8 17 36.5S26.2 16 37.5 16 58 25.2 58 36.5 48.8 57 37.5 57z' fill='%23fff'/%3E%3C/svg%3E");
      background-repeat: repeat;
      background-position: left top -0.5rem; }
    .nf-flights-anywhere-result:after {
      content: "";
      display: block;
      border-bottom-left-radius: 0.625rem;
      border-bottom-right-radius: 0.625rem;
      width: 100%;
      height: 0.625rem;
      position: absolute;
      left: 0;
      top: 100%;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' viewBox='0 0 75 75'%3E%3Cpath d='M0 0v75h75V0H0zm37.5 57C26.2 57 17 47.8 17 36.5S26.2 16 37.5 16 58 25.2 58 36.5 48.8 57 37.5 57z' fill='%23fff'/%3E%3C/svg%3E");
      background-repeat: repeat;
      background-position: left bottom -0.5rem;
      background-position-y: 0.125rem; }
  .nf-flights-anywhere-header {
    margin-top: 0; }
  .nf-flights-anywhere-result-summary,
  .nf-flights-anywhere-result-details-link {
    display: -ms-grid;
    display: grid;
    padding: 1rem;
    -ms-grid-rows: -webkit-max-content 1fr;
    -ms-grid-rows: max-content 1fr;
    -ms-grid-columns: 1fr 1rem minmax(0, 10rem);
        grid-template: "info price" -webkit-max-content "info cta" 1fr/1fr minmax(0, 10rem);
        grid-template: "info price" max-content "info cta" 1fr/1fr minmax(0, 10rem);
    grid-column-gap: 1rem;
    background: #FFFFFF;
    -webkit-flex-flow: wrap;
        -ms-flex-flow: wrap;
            flex-flow: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .nf-flights-anywhere-result-summary:after,
    .nf-flights-anywhere-result-details-link:after {
      content: none; }
  .nf-flights-anywhere-result-summary {
    grid-row-gap: 0.5rem; }
  .nf-flights-anywhere-result-details {
    padding: 1rem; }
  .nf-flights-anywhere-result-details-link {
    padding: 1rem 0; }
  .nf-flights-anywhere-result-summary-info,
  .nf-flights-anywhere-result-details-info {
    grid-area: info;
    margin: 0; }
    .nf-flights-anywhere-result-summary-info:after,
    .nf-flights-anywhere-result-details-info:after {
      content: none; }
  .nf-flights-anywhere-result-summary-img {
    display: none; }
  .nf-flights-anywhere-result-summary-price,
  .nf-flights-anywhere-result-details-price {
    grid-area: price;
    width: auto;
    margin: 0;
    padding: 0;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .nf-flights-anywhere-result-summary-price:before,
    .nf-flights-anywhere-result-details-price:before {
      content: none; }
  .nf-flights-anywhere-result-summary-cta,
  .nf-flights-anywhere-result-details-cta {
    grid-area: cta;
    padding: 0;
    width: auto; }
  .nf-flights-anywhere-result-details-price,
  .nf-flights-anywhere-result-details-cta {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .nf-flights-anywhere-result-details-wrap {
    display: block; }
    .nf-flights-anywhere-result-details-wrap &gt; img {
      width: 100%;
      max-width: none;
      max-height: none;
      max-width: -webkit-max-content;
      max-width: -moz-max-content;
      max-width: max-content;
      margin-right: 0; }
    .nf-flights-anywhere-result-details-wrap img + img {
      display: none; } }

@media only screen and (max-width: 600px) {
  .nf-flights-anywhere-result-summary-info,
  .nf-flights-anywhere-result-details-info {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1; }
  .nf-flights-anywhere-result-summary-price,
  .nf-flights-anywhere-result-details-price {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .nf-flights-anywhere-result-summary-cta,
  .nf-flights-anywhere-result-details-cta {
    -ms-grid-row: 2;
    -ms-grid-column: 3; } }

/*! Flickity v2.0.11
http://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative; }

.flickity-enabled:focus {
  outline: 0; }

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%; }

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%; }

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab; }

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.flickity-prev-next-button {
  position: absolute;
  top: 50%;
  width: 44px;
  height: 44px;
  border: none;
  border-radius: 50%;
  background: #fff;
  background: rgba(255, 255, 255, 0.75);
  cursor: pointer;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%); }

.flickity-prev-next-button:hover {
  background: #fff; }

.flickity-prev-next-button:focus {
  outline: 0;
  -webkit-box-shadow: 0 0 0 5px #09f;
          box-shadow: 0 0 0 5px #09f; }

.flickity-prev-next-button:active {
  opacity: .6; }

.flickity-prev-next-button.previous {
  left: 10px; }

.flickity-prev-next-button.next {
  right: 10px; }

.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px; }

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px; }

.flickity-prev-next-button:disabled {
  opacity: .3;
  cursor: auto; }

.flickity-prev-next-button svg {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%; }

.flickity-prev-next-button .arrow {
  fill: #333; }

.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }

.flickity-rtl .flickity-page-dots {
  direction: rtl; }

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: .25;
  cursor: pointer; }

.flickity-page-dots .dot.is-selected {
  opacity: 1; }

.nf-datepicker {
  line-height: 1;
  display: inline-block;
  position: relative;
  color: #f0f0f0;
  width: 100%;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.nf-datepicker * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
  margin: 0; }

.nf-datepicker thead {
  border: 0; }

.nf-datepicker .calendars {
  overflow: hidden;
  padding: 1rem;
  padding-top: 0.5rem;
  width: 3460px;
  /* Enough width for 14 months */
  border-bottom: 1px solid #595959;
  margin-bottom: 1rem; }

.nf-datepicker .calendars &gt; div {
  float: left;
  width: 234px;
  position: relative;
  display: block; }

.nf-datepicker .selector .nf-datepicker-cal-wrap {
  overflow: hidden;
  position: relative; }

.nf-datepicker .selector .nf-datepicker-cal-wrap .calnavigation {
  position: absolute;
  width: 100%;
  padding: 0 1rem;
  top: 2.85rem;
  z-index: 1; }

.nf-datepicker .selector {
  margin-top: 0.5rem;
  position: absolute;
  z-index: 100;
  -webkit-animation: selectorfadein 0.06s;
          animation: selectorfadein 0.06s;
  background-color: #464646;
  border-radius: 4px;
  width: 490px;
  /* Test */ }

.nf-datepicker .selector:before {
  content: '';
  width: 0;
  height: 0;
  display: inline-block;
  border-bottom: 0.75rem solid #464646;
  border-left: 0.75rem solid transparent;
  border-right: 0.75rem solid transparent;
  position: absolute;
  bottom: 100%;
  left: 1rem; }

.nf-datepicker .selector:focus {
  outline: none; }

@-webkit-keyframes selectorfadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes selectorfadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.nf-datepicker .selectorarrow {
  margin-top: 12px;
  padding: 0; }

.nf-datepicker .selectorarrow:after,
.nf-datepicker .selectorarrow:before {
  bottom: 100%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute; }

.nf-datepicker .selectorarrow:after {
  border-color: rgba(250, 250, 250, 0);
  border-bottom-color: #FFFFFF;
  border-width: 10px;
  margin-left: -10px; }

.nf-datepicker .selectorarrow:before {
  border-color: rgba(204, 204, 204, 0);
  border-bottom-color: #CCC;
  border-width: 11px;
  margin-left: -11px; }

.nf-datepicker .selectorarrow:focus:before {
  border-bottom-color: #ADD8E6; }

.nf-datepicker .selectorarrowleft:after,
.nf-datepicker .selectorarrowleft:before {
  left: 24px; }

.nf-datepicker .selectorarrowright:after,
.nf-datepicker .selectorarrowright:before {
  left: 224px; }

.nf-datepicker .alignselectorright {
  right: -1px; }

.nf-datepicker .selectiongroup {
  position: relative;
  display: table;
  border: none;
  border-spacing: 0;
  border-radius: 4px;
  cursor: pointer;
  height: 3.25rem; }

.nf-datepicker .selection {
  width: 100%;
  outline: none;
  display: table-cell;
  position: absolute;
  left: 0;
  padding-left: 3.25rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  border: none;
  color: #333333;
  border-radius: 4px;
  cursor: pointer;
  height: 3.25rem;
  font-size: 0.875rem; }

.nf-datepicker .invaliddaterange {
  background-color: #F1DEDE; }

.nf-datepicker ::-ms-clear {
  display: none; }

.nf-datepicker .selbtngroup {
  position: relative;
  vertical-align: middle;
  white-space: nowrap;
  width: 1%;
  display: table-cell;
  font-size: 0;
  z-index: 1;
  border-radius: 4px;
  overflow: hidden; }

.nf-datepicker .btnpicker,
.nf-datepicker .btnclear {
  height: 100%;
  width: 40px;
  border: none;
  padding: 0;
  outline: 0;
  font: inherit;
  -moz-user-select: none; }
  .nf-datepicker .btnpicker &gt; svg,
  .nf-datepicker .btnclear &gt; svg {
    width: 1.75rem;
    height: 1.75rem;
    margin-left: 0.5rem; }

.nf-datepicker .headerclearbtn,
.nf-datepicker .headerokbtn {
  border-radius: 2px;
  cursor: pointer;
  font-size: 11px;
  height: 20px;
  width: 28px;
  outline: none; }

.nf-datepicker .btnpickerenabled,
.nf-datepicker .btnclearenabled,
.nf-datepicker .headerbtnenabled,
.nf-datepicker .yearchangebtnenabled {
  cursor: pointer; }

.nf-datepicker .selectiondisabled,
.nf-datepicker .btnpickerdisabled,
.nf-datepicker .btncleardisabled,
.nf-datepicker .headerbtndisabled,
.nf-datepicker .clearbtndisabled,
.nf-datepicker .okbtndisabled,
.nf-datepicker .yearchangebtndisabled {
  cursor: not-allowed;
  opacity: 0.65; }

.nf-datepicker .selectiondisabled {
  background-color: #EEE; }

.nf-datepicker .btnpicker,
.nf-datepicker .btnclear,
.nf-datepicker .headerclearbtn,
.nf-datepicker .headerokbtn {
  background: #FFFFFF; }

.nf-datepicker .header {
  width: 100%;
  height: 30px;
  background-color: #FFFFFF; }

.nf-datepicker .header td {
  vertical-align: middle;
  border: none;
  line-height: 0; }

.nf-datepicker .header td:nth-child(1) {
  padding-left: 4px; }

.nf-datepicker .header td:nth-child(2) {
  text-align: center; }

.nf-datepicker .header td:nth-child(3) {
  padding-right: 4px; }

.nf-datepicker .nf-datepicker-title,
.nf-datepicker .nf-datepicker-duration {
  text-align: center; }

.nf-datepicker .nf-datepicker-duration {
  width: 110px;
  float: right; }

.nf-datepicker .nf-datepicker-duration span {
  display: block;
  height: 36px;
  line-height: 36px;
  background: #4D4D4D;
  border-bottom-left-radius: 4px;
  border-top-left-radius: 4px; }

.nf-datepicker .nf-datepicker-button {
  float: right;
  width: 110px;
  height: 36px;
  margin: 0 1rem 1rem 0;
  background: #4D4D4D; }

.nf-datepicker .nf-datepicker-button button:disabled {
  background: #3c3c3c;
  border-bottom: 0;
  border-radius: 0;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  color: #636466; }

.nf-datepicker .nf-datepicker-title {
  height: 40px;
  line-height: 40px;
  font-size: 0.825rem;
  border-bottom: 1px solid #595959;
  position: relative; }

.nf-datepicker .nf-datepicker-title .nf-datepicker-title--close {
  position: absolute;
  top: 0.5rem;
  left: auto;
  right: 1rem;
  cursor: pointer; }

.nf-datepicker .nf-datepicker-title .nf-datepicker-title--close:hover {
  color: #2dace3; }

.nf-datepicker .inline {
  position: relative;
  margin-top: -1px; }

.nf-datepicker .caltable,
.nf-datepicker .monthtable,
.nf-datepicker .yeartable {
  table-layout: fixed;
  width: 100%;
  font-size: 14px; }

.nf-datepicker .caltable,
.nf-datepicker .monthtable,
.nf-datepicker .yeartable,
.nf-datepicker .weekdaytitle,
.nf-datepicker .daycell,
.nf-datepicker .monthcell,
.nf-datepicker .yearcell {
  width: 210px;
  color: #FFFFFF;
  line-height: 2; }

.nf-datepicker .weekdaytitle,
.nf-datepicker .daycell,
.nf-datepicker .monthcell,
.nf-datepicker .yearcell {
  text-align: center;
  background: #494949; }

.nf-datepicker .caltable .nf-datepicker-cal--header {
  width: 210px;
  text-align: center;
  float: none; }

.nf-datepicker .weekdaytitle {
  color: #FFFFFF;
  font-size: 11px;
  font-weight: normal;
  vertical-align: middle;
  max-width: 36px;
  overflow: hidden;
  white-space: nowrap;
  background: none; }

.nf-datepicker .weekdaytitleweeknbr {
  width: 20px;
  border-right: 1px solid #BBB; }

.nf-datepicker .monthcell {
  background-color: #FAFAFA;
  overflow: hidden;
  white-space: nowrap; }

.nf-datepicker .yearcell {
  background-color: #FAFAFA;
  width: 20%; }

.nf-datepicker .daycellweeknbr {
  font-size: 10px;
  border-right: 1px solid #CCC;
  cursor: default;
  color: #FFFFFF; }

.nf-datepicker .prevmonth,
.nf-datepicker .nextmonth,
.nf-datepicker .sundayDim {
  color: #717171; }

.nf-datepicker .disabled {
  cursor: default !important;
  color: #717171 !important;
  background: #3c3c3c !important; }

.nf-datepicker .sunday {
  color: #003366; }

.nf-datepicker .currmonth {
  background-color: #565656;
  font-weight: normal; }

.nf-datepicker .range .datevalue {
  background-color: #4b7485; }

.nf-datepicker .range .datevalue.prevmonth,
.nf-datepicker .range .datevalue.nextmonth {
  background-color: inherit; }

.nf-datepicker .markcurrday,
.nf-datepicker .markcurrmonth,
.nf-datepicker .markcurryear {
  text-decoration: underline; }

.nf-datepicker .datevalue {
  background-color: inherit; }

.nf-datepicker .daycell:focus {
  outline: 0; }

.nf-datepicker .selectedday,
.nf-datepicker .selecteddaybegin,
.nf-datepicker .selecteddayend,
.nf-datepicker .selecteddaybegin.datevalue,
.nf-datepicker .selecteddayend.datevalue {
  border: none;
  background-color: #33b5e7; }

.nf-datepicker .selectedday.nextmonth,
.nf-datepicker .selectedday.prevmonth,
.nf-datepicker .selecteddaybegin.datevalue.prevmonth,
.nf-datepicker .selecteddayend.datevalue.nextmonth {
  background: inherit; }

.nf-datepicker .selecteddaybegin,
.nf-datepicker .selecteddayend {
  position: relative; }

.nf-datepicker .selecteddaybegin:after {
  content: '';
  width: 0;
  height: 0;
  display: inline-block;
  position: absolute;
  left: 100%;
  top: 0;
  border-left: 5px solid #33b5e7;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent; }

.nf-datepicker .selecteddayend:before {
  content: '';
  width: 0;
  height: 0;
  display: inline-block;
  position: absolute;
  right: 100%;
  top: 0;
  border-right: 5px solid #33b5e7;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent; }

.nf-datepicker .datevalue.prevmonth:after,
.nf-datepicker .datevalue.nextmonth:before,
.nf-datepicker .datevalue.prevmonth:before,
.nf-datepicker .datevalue.nextmonth:after {
  content: none; }

.nf-datepicker .headerbtncell {
  cursor: pointer;
  height: 4rem; }

.nf-datepicker .yearchangebtncell {
  text-align: center;
  background-color: #FAFAFA; }

.nf-datepicker .headerbtn,
.nf-datepicker .headerlabelbtn,
.nf-datepicker .yearchangebtn {
  color: #FFFFFF;
  border: none;
  height: 22px; }

.nf-datepicker .headerbtn {
  width: 16px; }

.nf-datepicker .headerlabelbtn {
  font-size: 0.9375rem;
  outline: none;
  cursor: default; }

.nf-datepicker .btnpicker,
.nf-datepicker .btnclear,
.nf-datepicker .headerbtn,
.nf-datepicker .headermonthtxt,
.nf-datepicker .headeryeartxt,
.nf-datepicker .headerclearbtn,
.nf-datepicker .headerokbtn,
.nf-datepicker .yearchangebtn {
  color: #2dace3;
  fill: #217FA8; }

.nf-datepicker .btnpicker {
  background: #F1F1F1; }

.nf-datepicker button::-moz-focus-inner {
  border: 0; }

.nf-datepicker .headermonthtxt,
.nf-datepicker .headeryeartxt {
  text-align: center;
  display: table-cell;
  vertical-align: middle;
  font-size: 14px;
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  padding-bottom: 0.25rem; }

.nf-datepicker .headermonthtxt {
  display: block; }

.nf-datepicker .headerbtn:focus,
.nf-datepicker .monthlabel:focus,
.nf-datepicker .yearlabel:focus,
.nf-datepicker .yearchangebtn:focus {
  color: #ADD8E6;
  outline: none; }

.nf-datepicker .daycell:focus,
.nf-datepicker .monthcell:focus,
.nf-datepicker .yearcell:focus {
  background: #33b5e7; }

.nf-datepicker .icon-mydrpcalendar,
.nf-datepicker .icon-mydrpok,
.nf-datepicker .icon-mydrpremove {
  font-size: 16px; }

.nf-datepicker .icon-mydrpleft,
.nf-datepicker .icon-mydrpright,
.nf-datepicker .icon-mydrpup,
.nf-datepicker .icon-mydrpdown {
  color: #f0f0f0;
  font-size: 1.75rem;
  background: none; }

.nf-datepicker table {
  display: table;
  border-spacing: 2px;
  border-collapse: unset; }

.nf-datepicker table td {
  padding: 0; }

.nf-datepicker table,
.nf-datepicker th,
.nf-datepicker td {
  border: none; }

.nf-datepicker .daycell:hover,
.nf-datepicker .monthcell:hover,
.nf-datepicker .yearcell:hover {
  background-color: #4b7485; }

.nf-datepicker .monthlabel,
.nf-datepicker .yearlabel,
.nf-datepicker .inputnoteditable,
.nf-datepicker .daycell,
.nf-datepicker .monthcell,
.nf-datepicker .yearcell {
  cursor: pointer; }

.nf-datepicker .headerbtnenabled:hover,
.nf-datepicker .yearchangebtnenabled:hover,
.nf-datepicker .monthlabel:hover,
.nf-datepicker .yearlabel:hover {
  color: #2dace3;
  fill: #2dace3; }

.nf-datepicker .icon-mydrpright:before {
  content: "\203A"; }

.nf-datepicker .icon-mydrpleft:before {
  content: "\2039"; }

.nf-datepicker .icon-mydrpup:before {
  content: "\e802"; }

.nf-datepicker .icon-mydrpdown:before {
  content: "\e803"; }

.nf-datepicker .icon-mydrpcalendar:before {
  content: "\e804"; }

.nf-datepicker .icon-mydrpok:before {
  content: "\e805"; }

.nf-datepicker .icon-mydrpremove:before {
  content: "\e806"; }

@media only screen and (max-width: 600px) {
  /* Date Picker - Temp styling to refactor */
  .nf-datepicker {
    text-align: center; }
  .nf-datepicker .calendars {
    overflow-y: auto; }
  .nf-datepicker .selector {
    position: fixed;
    width: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0;
    z-index: 10001;
    overflow-y: auto;
    border-radius: 0; }
  .nf-datepicker .nf-datepicker-button {
    width: 300px;
    max-width: 100%;
    margin: 2rem auto;
    float: none;
    background: none; }
  .nf-datepicker .nf-datepicker-duration {
    position: absolute;
    bottom: 3.25rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
  .nf-datepicker .nf-datepicker-duration span {
    background: #464646;
    display: inline-block;
    padding: 0 1.5rem;
    white-space: nowrap; }
  .nf-datepicker .nf-datepicker-title {
    height: 48px;
    line-height: 48px; }
  .nf-datepicker .selector .nf-datepicker-cal-wrap .calnavigation {
    position: relative;
    top: initial;
    overflow: hidden;
    height: 4rem; }
  .nf-datepicker .selector:before {
    content: none; }
  .nf-datepicker .selector .nf-datepicker-cal-wrap {
    overflow: visible; }
  .nf-datepicker .calendars {
    width: 100%;
    height: auto;
    -webkit-transform: none !important;
            transform: none !important;
    /* Override transform on mobile devices */
    padding-top: 0.75rem;
    margin-top: -4rem;
    padding-bottom: 2rem; }
  .nf-datepicker .caltable,
  .nf-datepicker .monthtable,
  .nf-datepicker .yeartable,
  .nf-datepicker .weekdaytitle,
  .nf-datepicker .daycell,
  .nf-datepicker .monthcell,
  .nf-datepicker .yearcell {
    width: 100%; }
  .nf-datepicker .calendars &gt; div {
    float: none;
    width: auto;
    max-width: 320px;
    max-width: 300px;
    /* Possible fix for iphone 4*/
    margin: 0 auto; }
  .nf-datepicker .calendars &gt; div + div {
    display: none; }
  .nf-datepicker .caltable {
    margin-top: 0.75rem; }
  .nf-datepicker .icon-mydrpleft,
  .nf-datepicker .icon-mydrpright {
    color: #2dace3;
    font-size: 4rem;
    width: 2.5rem;
    height: 100%;
    position: relative; }
  .nf-datepicker .icon-mydrpleft:before,
  .nf-datepicker .icon-mydrpright:before {
    position: absolute;
    height: 4rem;
    display: inline-block;
    top: 50%;
    margin-top: -2rem;
    left: 0; }
  .nf-datepicker .icon-mydrpright:before {
    left: auto;
    right: 0; }
  .nf-datepicker .headermonthtxt {
    padding-bottom: 0;
    margin-bottom: 0.75rem; } }

.nf-date-picker {
  height: 3.25rem;
  position: relative;
  cursor: pointer;
  text-align: left; }
  .nf-date-picker .DateRangePickerInput .DateInput,
  .nf-date-picker .SingleDatePickerInput .DateInput {
    width: 100%;
    border-radius: 4px 0 0 4px;
    background-color: #F1F1F1; }
    .nf-date-picker .DateRangePickerInput .DateInput .DateInput_input,
    .nf-date-picker .SingleDatePickerInput .DateInput .DateInput_input {
      width: 100%;
      text-indent: 3rem;
      border-radius: 4px 0 0 4px;
      background: transparent url("data:image/svg+xml,%3Csvg width='18' height='20' viewBox='0 0 18 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 12.5C4.71667 12.5 4.47917 12.4042 4.2875 12.2125C4.09583 12.0208 4 11.7833 4 11.5C4 11.2167 4.09583 10.9792 4.2875 10.7875C4.47917 10.5958 4.71667 10.5 5 10.5C5.28333 10.5 5.52083 10.5958 5.7125 10.7875C5.90417 10.9792 6 11.2167 6 11.5C6 11.7833 5.90417 12.0208 5.7125 12.2125C5.52083 12.4042 5.28333 12.5 5 12.5ZM9 12.5C8.71667 12.5 8.47917 12.4042 8.2875 12.2125C8.09583 12.0208 8 11.7833 8 11.5C8 11.2167 8.09583 10.9792 8.2875 10.7875C8.47917 10.5958 8.71667 10.5 9 10.5C9.28333 10.5 9.52083 10.5958 9.7125 10.7875C9.90417 10.9792 10 11.2167 10 11.5C10 11.7833 9.90417 12.0208 9.7125 12.2125C9.52083 12.4042 9.28333 12.5 9 12.5ZM13 12.5C12.7167 12.5 12.4792 12.4042 12.2875 12.2125C12.0958 12.0208 12 11.7833 12 11.5C12 11.2167 12.0958 10.9792 12.2875 10.7875C12.4792 10.5958 12.7167 10.5 13 10.5C13.2833 10.5 13.5208 10.5958 13.7125 10.7875C13.9042 10.9792 14 11.2167 14 11.5C14 11.7833 13.9042 12.0208 13.7125 12.2125C13.5208 12.4042 13.2833 12.5 13 12.5ZM2 20.5C1.45 20.5 0.979167 20.3042 0.5875 19.9125C0.195833 19.5208 0 19.05 0 18.5V4.5C0 3.95 0.195833 3.47917 0.5875 3.0875C0.979167 2.69583 1.45 2.5 2 2.5H3V0.5H5V2.5H13V0.5H15V2.5H16C16.55 2.5 17.0208 2.69583 17.4125 3.0875C17.8042 3.47917 18 3.95 18 4.5V18.5C18 19.05 17.8042 19.5208 17.4125 19.9125C17.0208 20.3042 16.55 20.5 16 20.5H2ZM2 18.5H16V8.5H2V18.5Z' fill='%23217FA8'/%3E%3C/svg%3E") no-repeat 0.75rem center;
      font-size: 14px;
      font-weight: 800;
      line-height: 21px;
      color: #393939; }
  .nf-date-picker .DateRangePickerInput .DateInput ~ .DateInput,
  .nf-date-picker .SingleDatePickerInput .DateInput ~ .DateInput {
    border-radius: 0 4px 4px 0; }
    .nf-date-picker .DateRangePickerInput .DateInput ~ .DateInput .DateInput_input,
    .nf-date-picker .SingleDatePickerInput .DateInput ~ .DateInput .DateInput_input {
      border-radius: 0 4px 4px 0; }
  .nf-date-picker .SingleDatePickerInput .DateInput {
    border-radius: 4px; }
    .nf-date-picker .SingleDatePickerInput .DateInput .DateInput_input {
      border-radius: 4px; }
  .nf-date-picker .DateRangePickerInput_calendarIcon,
  .nf-date-picker .SingleDatePickerInput_calendarIcon {
    display: none;
    border: 0;
    background: none;
    padding: 0.75rem;
    border-radius: 4px;
    height: 3.25rem; }
    .nf-date-picker .DateRangePickerInput_calendarIcon svg,
    .nf-date-picker .SingleDatePickerInput_calendarIcon svg {
      fill: #217FA8;
      width: 1.5rem;
      height: 1.5rem; }
  .nf-date-picker .DateRangePickerInput_calendarIcon:focus,
  .nf-date-picker .SingleDatePickerInput_calendarIcon:focus {
    outline: none; }
  .nf-date-picker .nf-form-field-error {
    position: absolute;
    left: 0;
    top: -0.75rem;
    padding: 0.3125rem 0 0.25rem 3rem;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    z-index: 2;
    color: #cd174f;
    background: #FFFFFF;
    font-size: 0.75rem;
    line-height: 1;
    white-space: nowrap;
    width: 100%;
    text-overflow: ellipsis;
    overflow: hidden; }
    .nf-date-picker .nf-form-field-error svg {
      display: none; }

.DateRangePicker,
.SingleDatePicker {
  position: relative;
  height: 3.25rem; }

.DateRangePickerInput_arrow {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  display: none;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 0.375rem; }
  .DateRangePickerInput_arrow svg {
    fill: #4a4a4a;
    width: 1.5rem;
    height: 1.5rem;
    display: block; }

.PresetDateRangePicker_panel {
  padding: 0 22px 11px; }

.PresetDateRangePicker_button {
  position: relative;
  height: 100%;
  text-align: center;
  background: 0 0;
  border: 2px solid #00a699;
  color: #00a699;
  padding: 4px 12px;
  margin-right: 8px;
  font: inherit;
  font-weight: 700;
  line-height: normal;
  overflow: visible;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer; }

.PresetDateRangePicker_button:active {
  outline: 0; }

.PresetDateRangePicker_button__selected {
  color: #FFFFFF;
  background: #00a699; }

.SingleDatePickerInput__rtl {
  direction: rtl; }

.SingleDatePickerInput__disabled {
  background-color: #F2F2F2; }

.SingleDatePickerInput__block {
  display: block; }

.SingleDatePickerInput__showClearDate {
  padding-right: 30px; }

.SingleDatePickerInput_clearDate {
  background: 0 0;
  border: 0;
  color: inherit;
  font: inherit;
  line-height: normal;
  overflow: visible;
  cursor: pointer;
  padding: 10px;
  margin: 0 10px 0 5px;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%); }

.SingleDatePickerInput_clearDate__default:focus,
.SingleDatePickerInput_clearDate__default:hover {
  background: #dbdbdb;
  border-radius: 50%; }

.SingleDatePickerInput_clearDate__small {
  padding: 6px; }

.SingleDatePickerInput_clearDate__hide {
  visibility: hidden; }

.SingleDatePickerInput_clearDate_svg__small {
  height: 9px; }

.SingleDatePickerInput_calendarIcon:focus {
  outline: none; }

.SingleDatePickerInput_calendarIcon_svg {
  fill: #82888a;
  height: 15px;
  width: 14px;
  vertical-align: middle; }

.SingleDatePicker {
  position: relative;
  width: 100%; }

.SingleDatePicker__block {
  display: block; }

.SingleDatePicker_picker {
  z-index: 10;
  position: absolute; }

.SingleDatePicker_picker__rtl {
  direction: rtl; }

.SingleDatePicker_picker__directionLeft {
  left: 0; }

.SingleDatePicker_picker__directionRight {
  right: 0; }

.DayPickerKeyboardShortcuts_buttonReset {
  background: 0 0;
  border: 0;
  border-radius: 0;
  color: inherit;
  font: inherit;
  line-height: normal;
  overflow: visible;
  padding: 0;
  cursor: pointer;
  font-size: 14px; }

.DayPickerKeyboardShortcuts_buttonReset:active {
  outline: 0; }

.DayPickerKeyboardShortcuts_show {
  width: 33px;
  height: 26px;
  position: absolute;
  z-index: 2; }

.DayPickerKeyboardShortcuts_show::before {
  content: "";
  display: block;
  position: absolute; }

.DayPickerKeyboardShortcuts_show__bottomRight {
  bottom: 0;
  right: 0; }

.DayPickerKeyboardShortcuts_show__bottomRight::before {
  border-top: 26px solid transparent;
  border-right: 33px solid #00a699;
  bottom: 0;
  right: 0; }

.DayPickerKeyboardShortcuts_show__bottomRight:hover::before {
  border-right: 33px solid #008489; }

.DayPickerKeyboardShortcuts_show__topRight {
  top: 0;
  right: 0; }

.DayPickerKeyboardShortcuts_show__topRight::before {
  border-bottom: 26px solid transparent;
  border-right: 33px solid #00a699;
  top: 0;
  right: 0; }

.DayPickerKeyboardShortcuts_show__topRight:hover::before {
  border-right: 33px solid #008489; }

.DayPickerKeyboardShortcuts_show__topLeft {
  top: 0;
  left: 0; }

.DayPickerKeyboardShortcuts_show__topLeft::before {
  border-bottom: 26px solid transparent;
  border-left: 33px solid #00a699;
  top: 0;
  left: 0; }

.DayPickerKeyboardShortcuts_show__topLeft:hover::before {
  border-left: 33px solid #008489; }

.DayPickerKeyboardShortcuts_showSpan {
  color: #FFFFFF;
  position: absolute; }

.DayPickerKeyboardShortcuts_showSpan__bottomRight {
  bottom: 0;
  right: 5px; }

.DayPickerKeyboardShortcuts_showSpan__topRight {
  top: 1px;
  right: 5px; }

.DayPickerKeyboardShortcuts_showSpan__topLeft {
  top: 1px;
  left: 5px; }

.DayPickerKeyboardShortcuts_panel {
  overflow: auto;
  background: #464646;
  border: 1px solid #dbdbdb;
  border-radius: 2px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 2;
  padding: 22px;
  margin: 33px;
  text-align: left; }

.DayPickerKeyboardShortcuts_title {
  font-size: 16px;
  font-weight: 700;
  margin: 0; }

.DayPickerKeyboardShortcuts_list {
  list-style: none;
  padding: 0;
  font-size: 14px; }

.DayPickerKeyboardShortcuts_close {
  position: absolute;
  right: 22px;
  top: 22px;
  z-index: 2; }

.DayPickerKeyboardShortcuts_close:active {
  outline: 0; }

.DayPickerKeyboardShortcuts_closeSvg {
  height: 15px;
  width: 15px;
  fill: #cacccd; }

.DayPickerKeyboardShortcuts_closeSvg:focus,
.DayPickerKeyboardShortcuts_closeSvg:hover {
  fill: #82888a; }

.CalendarDay {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
  font-size: 14px;
  text-align: center;
  padding: 0;
  outline: 0; }

.CalendarDay:active {
  outline: 0; }

.CalendarDay__defaultCursor {
  cursor: default; }

.CalendarDay__default {
  border: 3px solid #FFFFFF;
  color: #000000;
  background: #FFFFFF; }

.CalendarDay__default:hover {
  background: #e4e7e7;
  border: 3px solid #FFFFFF;
  color: inherit; }

.CalendarDay__outside {
  border: 0;
  background: #464646;
  color: #484848; }

.CalendarDay__outside:hover {
  border: 0; }

.CalendarDay__blocked_minimum_nights {
  background: #464646;
  border: 1px solid #eceeee;
  color: #cacccd; }

.CalendarDay__blocked_minimum_nights:active,
.CalendarDay__blocked_minimum_nights:hover {
  background: #464646;
  color: #cacccd; }

.CalendarDay__highlighted_calendar {
  background: #ffe8bc;
  color: #484848; }

.CalendarDay__highlighted_calendar:active,
.CalendarDay__highlighted_calendar:hover {
  background: #ffce71;
  color: #484848; }

.CalendarDay__selected_span,
.CalendarDay__selected_span:active,
.CalendarDay__selected_span:hover {
  background: #EAF7FC;
  color: #454545; }

.CalendarDay__selected,
.CalendarDay__selected:active,
.CalendarDay__selected:hover,
.CalendarDay__selected:focus {
  background: #217FA8;
  color: #FFFFFF;
  outline: 0; }

.CalendarDay__hovered_span,
.CalendarDay__hovered_span:hover {
  background: #EAF7FC; }

.CalendarDay__blocked_out_of_range,
.CalendarDay__blocked_out_of_range:active,
.CalendarDay__blocked_out_of_range:hover {
  cursor: default;
  color: #ACACAC;
  background: #F1F1F1; }

.CalendarMonth {
  background: #FFFFFF;
  text-align: center;
  vertical-align: top;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.CalendarMonth_table {
  border-collapse: collapse;
  border-spacing: 0; }

.CalendarMonth_verticalSpacing {
  border-collapse: separate; }

.CalendarMonth_caption {
  color: #000000;
  font-size: 16px;
  text-align: center;
  padding-top: 22px;
  padding-bottom: 36px;
  caption-side: initial; }

.CalendarMonth_caption__verticalScrollable {
  padding-top: 12px;
  padding-bottom: 7px; }

.CalendarMonthGrid {
  background: #FFFFFF;
  text-align: left;
  z-index: 0; }

.CalendarMonthGrid__animating {
  z-index: 1; }

.CalendarMonthGrid__horizontal {
  position: absolute;
  left: 9px; }

.CalendarMonthGrid__vertical {
  margin: 0 auto; }

.CalendarMonthGrid__vertical_scrollable {
  margin: 0 auto;
  overflow-y: scroll; }

.CalendarMonthGrid_month__horizontal {
  display: inline-block;
  vertical-align: top;
  min-height: 100%; }

.CalendarMonthGrid_month__hideForAnimation {
  position: absolute;
  z-index: -1;
  opacity: 0;
  pointer-events: none; }

.CalendarMonthGrid_month__hidden {
  visibility: hidden; }

.DayPickerNavigation__horizontal {
  height: 0; }

.DayPickerNavigation__verticalScrollableDefault {
  position: relative; }

.DayPickerNavigation_nextButton__verticalScrollableDefault {
  width: 100%; }

.DayPickerNavigation_svg__vertical {
  height: 2.5rem;
  width: 2.5rem;
  fill: #FFFFFF;
  display: block; }

.DayPicker {
  background: #FFFFFF;
  position: relative;
  text-align: left; }

.DayPicker__verticalScrollable {
  height: 100%; }

.DayPicker__hidden {
  visibility: hidden; }

.DayPicker_focusRegion {
  outline: 0; }

.DayPicker_calendarInfo__horizontal,
.DayPicker_wrapper__horizontal {
  display: inline-block;
  vertical-align: top; }

.DayPicker_weekHeaders {
  position: relative; }

.DayPicker_weekHeaders__horizontal {
  margin-left: 9px; }

.DayPicker_weekHeader {
  color: #757575;
  position: absolute;
  top: 62px;
  z-index: 2;
  text-align: left; }

.DayPicker_weekHeader__vertical {
  left: 50%; }

.DayPicker_weekHeader__verticalScrollable {
  top: 0;
  display: table-row;
  border-bottom: 1px solid #dbdbdb;
  background: #464646;
  margin-left: 0;
  left: 0;
  width: 100%;
  text-align: center; }

.DayPicker_weekHeader_ul {
  list-style: none;
  margin: 1px 0;
  padding-left: 0;
  padding-right: 0;
  font-size: 14px; }

.DayPicker_weekHeader_li {
  display: inline-block;
  text-align: center;
  color: #676767; }

.DayPicker_transitionContainer {
  position: relative;
  overflow: hidden;
  border-radius: 3px; }

.DayPicker_transitionContainer__horizontal {
  -webkit-transition: height .2s ease-in-out;
  transition: height .2s ease-in-out; }

.DayPicker_transitionContainer__vertical {
  width: 100%; }

.DayPicker_transitionContainer__verticalScrollable {
  padding-top: 20px;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  overflow-y: scroll; }

.DateRangePickerInput,
.SingleDatePickerInput {
  border-radius: 4px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 3.25rem;
  cursor: pointer;
  gap: 4px; }

.DateInput {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.DateInput__small {
  width: 97px; }

.DateInput__block {
  width: 100%; }

.DateInput__disabled {
  background: #f2f2f2;
  color: #dbdbdb; }

.DateInput_input {
  border: 0;
  padding: 0;
  width: 3rem;
  padding-top: 1rem;
  -webkit-transition: border 200ms ease;
  transition: border 200ms ease;
  cursor: pointer;
  z-index: 1; }

.DateInput_input__focused {
  outline: 0;
  -webkit-box-shadow: inset 0 0 0 3px #217FA8;
          box-shadow: inset 0 0 0 3px #217FA8;
  z-index: 2; }

.DateInput_input__disabled {
  background: #f2f2f2;
  font-style: italic; }

.DateInput_input__small {
  font-size: 15px;
  line-height: 18px;
  letter-spacing: .2px;
  padding: 7px 7px 5px; }

.DateInput_input__readOnly {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.DateInput_screenReaderMessage {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.DateRangePickerInput__disabled {
  background: #f2f2f2; }

.DateRangePickerInput__rtl {
  direction: rtl; }

.DateRangePickerInput__block {
  display: block; }

.DateRangePickerInput__showClearDates {
  padding-right: 30px; }

.DateRangePickerInput_clearDates {
  background: 0 0;
  border: 0;
  color: inherit;
  font: inherit;
  line-height: normal;
  overflow: visible;
  cursor: pointer;
  padding: 10px;
  margin: 0 10px 0 5px;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%); }

.DateRangePickerInput_clearDates__small {
  padding: 6px; }

.DateRangePickerInput_clearDates_default:focus,
.DateRangePickerInput_clearDates_default:hover {
  background: #dbdbdb;
  border-radius: 50%; }

.DateRangePickerInput_clearDates__hide {
  visibility: hidden; }

.DateRangePickerInput_clearDates_svg {
  fill: #82888a;
  height: 12px;
  width: 15px;
  vertical-align: middle; }

.DateRangePickerInput_clearDates_svg__small {
  height: 9px; }

.DateRangePicker__block {
  display: block; }

.DateRangePicker_picker {
  cursor: default;
  z-index: 10;
  position: absolute;
  border-radius: var(--border-radius, 4px);
  border: 1px solid var(--Greyscale-greyscale-100, #F1F1F1); }

.DateRangePicker_picker__rtl {
  direction: rtl; }

.DateRangePicker_picker__directionLeft {
  left: 0; }

.DateRangePicker_picker__directionRight {
  right: 0; }

.nf-datepicker-info {
  text-align: center; }

.nf-datepicker-title {
  color: #000000;
  font-size: 0.875rem;
  padding: 1.125rem 2rem 0.5rem;
  line-height: 1.5; }

.nf-datepicker-duration {
  color: #000000;
  padding: 0 1.5rem;
  font-size: 0.8125rem;
  height: 2.25rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.nf-datepicker-duration:empty {
  padding: 0; }

.nf-datepicker-button {
  position: fixed;
  left: 0;
  bottom: 0;
  padding: 1.5rem;
  width: 100%;
  text-align: center;
  z-index: 1;
  color: var(--Default-btn-txt, #FFFFFF);
  text-align: center;
  font-size: 16px; }
  .nf-datepicker-button button {
    font-weight: 800 !important; }

.nf-datepicker-close-icon {
  display: none; }

.DateRangePicker_picker__portal {
  position: fixed;
  top: 0;
  left: 0 !important;
  height: 100%;
  width: 100%;
  background: #FFFFFF; }

.DateRangePicker_closeButton {
  position: fixed;
  top: 1.125rem;
  right: 1.125rem;
  border: 0;
  background: none;
  padding: 0;
  fill: #454545;
  -webkit-appearance: none;
  outline: 0;
  z-index: 3; }

.DateRangePicker_closeButton:focus,
.DateRangePicker_closeButton:hover {
  fill: #217FA8; }

.DateRangePicker_closeButton_svg {
  width: 1.125rem;
  height: 1.125rem;
  display: block; }

.DayPickerNavigation {
  position: relative;
  z-index: 2; }

.DayPickerNavigation_button {
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border: 0;
  padding: 0;
  margin: 0;
  position: relative; }

.DayPickerNavigation_button__default {
  border-radius: 4px;
  fill: #1A6788;
  padding: 0.5rem; }

.DayPickerNavigation_button__default:focus,
.DayPickerNavigation_button__default:hover {
  fill: #217FA8;
  outline: 0; }

.DayPickerNavigation_button__default:active {
  background: var(--Greyscale-greyscale-100, #F1F1F1);
  -webkit-tap-highlight-color: transparent; }

.DayPickerNavigation_button__disabled,
.DayPickerNavigation_button__disabled:focus,
.DayPickerNavigation_button__disabled:hover {
  fill: #454545;
  cursor: default;
  opacity: 0.3; }

.DayPickerNavigation_button__disabled:active {
  top: 0; }

.DayPicker__horizontal {
  padding-bottom: 4rem;
  border-radius: 4px; }

.DayPickerNavigation_button__horizontalDefault {
  position: absolute;
  top: 1rem; }

.DayPickerNavigation_leftButton__horizontalDefault {
  left: 1.25rem; }

.DayPickerNavigation_rightButton__horizontalDefault {
  right: 1.25rem; }

.DayPickerNavigation_svg__horizontal {
  fill: inherit;
  height: 1.25rem;
  width: 1.25rem;
  display: block;
  cursor: pointer; }

@-webkit-keyframes iconPulse {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  50% {
    -webkit-transform: scale(1.2);
            transform: scale(1.2); }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); } }

@keyframes iconPulse {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  50% {
    -webkit-transform: scale(1.2);
            transform: scale(1.2); }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); } }

.nf-datepicker-legs {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  top: -1px;
  background: #FFFFFF;
  margin-bottom: 0.5rem; }

.nf-datepicker-legs span {
  width: 8rem;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 2.5rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: normal;
  font-size: 0.9375rem;
  white-space: nowrap;
  color: #676767;
  fill: #676767;
  cursor: pointer;
  top: 1px;
  -webkit-tap-highlight-color: transparent; }
  .nf-datepicker-legs span svg {
    fill: inherit;
    width: 1.25rem;
    height: 1.25rem;
    display: block;
    margin-right: 0.5rem;
    cursor: pointer; }
  .nf-datepicker-legs span.m--active {
    color: #217FA8;
    fill: #217FA8;
    font-weight: bold;
    border-bottom: 1px solid #217FA8; }
    .nf-datepicker-legs span.m--active svg {
      -webkit-animation: iconPulse 500ms forwards;
              animation: iconPulse 500ms forwards; }

.nf-datepicker-labels {
  position: absolute;
  width: 100%;
  left: 0; }

.nf-datepicker-start-label,
.nf-datepicker-end-label,
.nf-datepicker-general-label {
  position: absolute;
  left: 3rem;
  top: 0.5rem;
  z-index: 1;
  color: #676767;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 18px; }

.nf-datepicker-end-label {
  left: calc(50% + 3rem); }

.nf-datepicker-depart-return-error-wrap {
  position: relative; }

.nf-datepicker-depart-return-error {
  position: absolute;
  left: 0;
  top: -0.75rem;
  padding: 0.3125rem 0 0.25rem 3rem;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  z-index: 2;
  color: #cd174f;
  background: #FFFFFF;
  font-size: 0.75rem;
  line-height: 1;
  white-space: nowrap;
  width: 100%;
  text-overflow: ellipsis;
  overflow: hidden;
  z-index: 1; }
  .nf-datepicker-depart-return-error svg {
    display: none; }

@media only screen and (min-width: 601px) {
  .DateRangePicker_picker {
    top: 52px !important; }
  .DateInput .DateInput_fang {
    display: none; }
  .nf-datepicker-title {
    padding: 0.75rem 1.5rem;
    line-height: 1.4; }
  .nf-datepicker-duration {
    position: absolute;
    bottom: 1.5rem;
    background: var(--Greyscale-greyscale-100, #F1F1F1);
    right: 9rem;
    border-radius: var(--border-radius, 4px);
    color: #000000; }
  .nf-datepicker-button {
    position: absolute;
    left: auto;
    right: 1.5rem;
    bottom: 1.5rem;
    padding: 0;
    width: 7rem; }
  span.nf-datepicker-close-icon {
    display: block;
    position: absolute;
    top: 0.625rem;
    right: 0.625rem;
    fill: #000000;
    cursor: pointer;
    z-index: 1; }
    span.nf-datepicker-close-icon &gt; svg {
      fill: inherit;
      width: 1.5rem;
      height: 1.5rem;
      display: block;
      cursor: pointer; }
  .nf-datepicker-close-icon:focus,
  .DateInput_input__focused .nf-datepicker-close-icon:hover {
    fill: #000000; } }

@media only screen and (min-width: 993px) {
  .nf-datepicker-depart-return-error {
    left: 1rem;
    width: calc(100% - 2rem);
    padding-left: 1rem; } }

/* IAIN'S CHANGES - DISREGARD IF POOR */
.DayPicker_portal__horizontal.DayPicker__horizontal {
  width: 100% !important;
  margin-left: 0 !important;
  margin-top: 0 !important;
  padding-bottom: 0;
  border-radius: 0; }
  .DayPicker_portal__horizontal.DayPicker__horizontal:after {
    bottom: 0; }
  .DayPicker_portal__horizontal.DayPicker__horizontal &gt; div {
    position: relative; }
  .DayPicker_portal__horizontal.DayPicker__horizontal .DayPicker_focusRegion {
    padding: 0.5rem 0; }

.DayPicker_portal__horizontal &gt; div &gt; div:nth-of-type(2) {
  margin: 0 auto; }

.DayPicker_portal__horizontal .nf-datepicker-duration {
  color: #464646;
  background: var(--Greyscale-greyscale-100, #F1F1F1);
  font-size: 0.875rem;
  position: absolute;
  bottom: -1.125rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1; }

.DayPicker_portal__horizontal .nf-datepicker-title {
  padding: 1.125rem 2.5rem 0.75rem; }

.DayPicker_portal__horizontal .nf-datepicker-button {
  position: absolute;
  top: 100%;
  bottom: auto;
  padding: 2.5rem 1.5rem; }

/* THESE ARE COPIED FROM ABOVE AND CHANGED */
.SingleDatePicker_closeButton {
  position: fixed;
  top: 1.125rem;
  right: 1.125rem;
  border: 0;
  background: none;
  padding: 0;
  fill: #EEEEEE;
  -webkit-appearance: none;
  outline: 0;
  z-index: 3; }

.SingleDatePicker_closeButton:focus,
.SingleDatePicker_closeButton:hover {
  fill: #217FA8; }

.SingleDatePicker_closeButton_svg {
  width: 1.125rem;
  height: 1.125rem;
  display: block; }

.SingleDatePicker_picker__portal {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: #464646; }

.nf-ng-search .nf-datepicker .nf-datepicker-title {
  padding: 0; }

.nf-ng-search .nf-datepicker .nf-datepicker-duration {
  bottom: 3.75rem; }

.nf-ng-search .nf-datepicker .nf-datepicker-button {
  position: static; }

@media only screen and (min-width: 601px) {
  .nf-ng-search .nf-datepicker .nf-datepicker-duration {
    position: static;
    padding: 0;
    background: none;
    display: block; }
  .nf-ng-search .nf-datepicker .nf-datepicker-button {
    position: static; } }

@-webkit-keyframes cache-price-load {
  0% {
    -webkit-transform: scaleX(0) translateX(-50%);
            transform: scaleX(0) translateX(-50%); }
  100% {
    -webkit-transform: scaleX(1) translateX(-50%);
            transform: scaleX(1) translateX(-50%); } }

@keyframes cache-price-load {
  0% {
    -webkit-transform: scaleX(0) translateX(-50%);
            transform: scaleX(0) translateX(-50%); }
  100% {
    -webkit-transform: scaleX(1) translateX(-50%);
            transform: scaleX(1) translateX(-50%); } }

@-webkit-keyframes cache-band-load {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0); }
  100% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1); } }

@keyframes cache-band-load {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0); }
  100% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1); } }

.nf-datepicker-cache-bands {
  position: absolute;
  top: calc(100% + 1.75rem);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background: #F1F1F1;
  padding: 0.375rem 1rem;
  border-radius: 4px; }
  .nf-datepicker-cache-bands ~ .nf-datepicker-button {
    top: calc(100% + 3.25rem); }

.nf-datepicker-cache-band {
  color: #000000;
  font-size: 0.875rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-datepicker-cache-band + .nf-datepicker-cache-band {
    margin-left: 1rem; }

.nf-datepicker-cache-band:before,
.nf-datepicker-cache-price:before {
  content: '';
  width: 1rem;
  height: 0.1875rem;
  display: block;
  margin-right: 0.5rem;
  border-radius: 0.125rem;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: left;
          transform-origin: left; }

.nf-datepicker-cache-band.m--low:before,
.nf-datepicker-cache-price.m--low:before {
  background: #8CC277; }

.nf-datepicker-cache-band.m--medium:before,
.nf-datepicker-cache-price.m--medium:before {
  background: #EF931C; }

.nf-datepicker-cache-band.m--high:before,
.nf-datepicker-cache-price.m--high:before {
  background: #A82A30; }

.nf-datepicker-cache-price {
  position: relative; }
  .nf-datepicker-cache-price:before {
    position: absolute;
    bottom: -0.0625rem;
    left: 50%;
    margin: 0;
    -webkit-transform: scaleX(0) translateX(-50%);
            transform: scaleX(0) translateX(-50%); }

.nf-cache-prices .nf-datepicker-cache-band:before {
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-animation: cache-band-load forwards 500ms 500ms;
          animation: cache-band-load forwards 500ms 500ms; }

.nf-cache-prices .nf-datepicker-cache-price:before {
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-animation: cache-price-load forwards 500ms 500ms;
          animation: cache-price-load forwards 500ms 500ms; }

@media only screen and (min-width: 601px) {
  .nf-datepicker-cache-bands {
    top: auto;
    bottom: 1.5rem;
    left: 1.5rem;
    -webkit-transform: none;
            transform: none; }
    .nf-datepicker-cache-bands ~ .nf-datepicker-button {
      top: auto; } }

/* General &amp; 404 error pages */
.nf-error {
  padding-top: 6rem;
  text-align: center; }
  .nf-error h1 {
    margin: 1rem 0 2rem;
    font-family: azo-sans-uber;
    font-display: auto;
    font-style: normal;
    font-weight: 400;
    font-stretch: normal;
    color: #B5E2F5; }

.nf-error-404 {
  padding: 3.5rem 0 0;
  text-align: center;
  position: relative; }
  .nf-error-404 h1 {
    margin-top: 5rem;
    font-family: azo-sans-uber;
    font-display: auto;
    font-style: normal;
    font-weight: 400;
    font-stretch: normal;
    color: #B5E2F5; }
  .nf-error-404 .nf-ticker {
    -webkit-perspective: 1000px;
            perspective: 1000px;
    width: 100%;
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    text-align: center;
    padding: 3rem 0 8rem 0;
    margin-top: 2rem;
    background: #222222; }
  .nf-error-404 .nf-ticker ~ p {
    position: absolute;
    color: #ffe110;
    background: #0c0c0c;
    background: radial-gradient(ellipse at center, #111111 0%, #0c0c0c 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#111111', endColorstr='#0c0c0c',GradientType=1 );
    display: inline-block;
    letter-spacing: 1px;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    text-transform: uppercase;
    text-shadow: 0 0 1px #000000;
    padding: 0.25rem 1rem;
    font-size: 1.25rem;
    font-weight: 100;
    bottom: 1.5rem;
    left: 50%;
    border-radius: 3px;
    margin: 0; }
  .nf-error-404 .nf-ticker-letter--wrap {
    width: 210px;
    max-width: 32%;
    display: inline-block;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    font-size: 0;
    background: #0c0c0c;
    background: radial-gradient(ellipse at center, #222222 0%, #0c0c0c 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#222222', endColorstr='#0c0c0c',GradientType=1 );
    border-radius: 15px;
    padding: 1px 0 2px;
    padding: 1px;
    -webkit-box-shadow: inset 0 0 4px #000000, 0 10px 20px -10px #605c5c;
            box-shadow: inset 0 0 4px #000000, 0 10px 20px -10px #605c5c; }
  .nf-error-404 .nf-ticker-letter {
    color: rgba(255, 225, 16, 0.9);
    font-size: 12rem;
    font-weight: bold;
    height: 140px;
    line-height: 280px;
    display: inline-block;
    border: 1px solid #171616;
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-transition: -webkit-transform ease 1000ms;
    transition: -webkit-transform ease 1000ms;
    transition: transform ease 1000ms;
    transition: transform ease 1000ms, -webkit-transform ease 1000ms;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    overflow: hidden;
    -webkit-transform-origin: bottom;
            transform-origin: bottom;
    background: -webkit-gradient(linear, left bottom, left top, from(#3c3535), to(#0a0a0a)), radial-gradient(ellipse at center, #0e0e0e 0%, #383232 100%);
    background: linear-gradient(to top, #3c3535 0%, #0a0a0a 100%), radial-gradient(ellipse at center, #0e0e0e 0%, #383232 100%);
    -webkit-box-shadow: inset 0 3px 3px #6b6767, inset 0 0 5px 1px #0a0a0a;
            box-shadow: inset 0 3px 3px #6b6767, inset 0 0 5px 1px #0a0a0a;
    border-radius: 15px;
    text-shadow: 0 -1px 0 #a07909;
    text-shadow: -1px -1px 0 #000000, 1px -1px 0 #000000, -1px 1px 0 #000000, 1px 1px 0 #000000;
    border-bottom-width: 1px;
    border-bottom-color: #403a3a; }
  .nf-error-404 .nf-ticker-letter + .nf-ticker-letter {
    background: -webkit-gradient(linear, left top, left bottom, from(#3c3535), to(#0a0a0a));
    background: linear-gradient(to bottom, #3c3535 0%, #0a0a0a 100%); }
  .nf-error-404 .nf-ticker-letter--a {
    -webkit-transition-delay: 100ms;
            transition-delay: 100ms; }
  .nf-error-404 .nf-ticker-letter--b {
    -webkit-transition-delay: 200ms;
            transition-delay: 200ms; }
  .nf-error-404 .nf-ticker-letter--c {
    -webkit-transition-delay: 300ms;
            transition-delay: 300ms; }
  .nf-error-404 .nf-ticker-letter--d {
    -webkit-transition-delay: 400ms;
            transition-delay: 400ms; }
  .nf-error-404 .nf-ticker-letter--e {
    -webkit-transition-delay: 500ms;
            transition-delay: 500ms; }
  .nf-error-404 .nf-ticker-letter--f {
    -webkit-transition-delay: 600ms;
            transition-delay: 600ms; }
  .nf-error-404 .nf-ticker-letter + .nf-ticker-letter {
    line-height: 0;
    -webkit-transform-origin: top;
            transform-origin: top; }
  .nf-error-404 .nf-ticker.animate .nf-ticker-letter {
    -webkit-transform: rotateX(2160deg);
            transform: rotateX(2160deg); }

@media only screen and (max-width: 992px) {
  /* 404 Error Page */
  .nf-error-404 h1 {
    margin-top: 2rem; }
  .nf-error-404 h1, .nf-error h1 {
    font-size: 2rem; } }

@media only screen and (max-width: 600px) {
  /* 404 Error Page */
  .nf-error-404 .nf-ticker {
    padding-left: 1rem;
    padding-right: 1rem; }
  .nf-error-404 .nf-ticker ~ p {
    font-size: 1rem; }
  .nf-error-404 .nf-ticker-letter--wrap {
    width: 125px;
    border-radius: 10px; }
  .nf-error-404 .nf-ticker-letter {
    height: 80px;
    border-radius: 10px;
    line-height: 160px;
    font-size: 7rem;
    font-size: 23vmin; } }

/* COOKIE POLICY */
#pnl_cookie_policy_popup {
  position: fixed;
  width: 100%;
  bottom: 0;
  left: 0;
  color: #FFFFFF;
  background: #283E5A;
  z-index: 100000;
  -webkit-transition: -webkit-transform 600ms ease;
  transition: -webkit-transform 600ms ease;
  transition: transform 600ms ease;
  transition: transform 600ms ease, -webkit-transform 600ms ease;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  font-size: 0.8125rem; }

#pnl_cookie_policy_popup.cookie-hide {
  -webkit-transform: translateY(100%);
          transform: translateY(100%); }

#pnl_cookie_policy_popup.cookie-show {
  -webkit-transition-delay: 1000ms;
          transition-delay: 1000ms; }

.cookie-policy-wrapper {
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
  padding: 0.5rem 1rem;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

#cookie_policy_content a {
  color: #2dace3;
  text-decoration: underline; }

#cookie_policy_content_mobile {
  display: none; }

#cookie_policy_agree {
  font-size: 1rem;
  font-weight: bold;
  margin-left: 2rem;
  color: #FFFFFF;
  background: #2dace3;
  min-width: 100px;
  max-width: 170px;
  padding: 0.625rem;
  text-align: center;
  display: inline-block;
  border-radius: 5px;
  border: 0;
  position: relative;
  cursor: pointer; }

#cookie_policy_agree:hover,
#cookie_policy_agree:focus {
  background: #1da1da;
  outline: 0; }

#cookie_policy_agree:active {
  top: 1px; }

/* END OF COOKIE POLICY */
@media only screen and (max-width: 992px) {
  /* Cookie Policy */
  .cookie-policy-wrapper {
    width: 100%; }
  #cookie_policy_agree {
    width: 35%;
    padding-right: 1rem; }
  #cookie_policy_content_mobile {
    display: block;
    width: 65%;
    margin-left: 0; }
  #cookie_policy_content {
    display: none; } }

/* BRANDED FARES */
.nf-journey-wrapper {
  padding-top: 3.5rem;
  background: #F1F1F1; }
  .nf-journey-wrapper .nf-svg-defs {
    display: none; }

.nf-flight-details h2 {
  text-align: left;
  font-size: 2rem; }

.nf-flight-details .nf-flight-details-overview h3 {
  color: #2dace3;
  font-size: 0.9375rem;
  margin-bottom: 0.5rem;
  display: inline-block;
  margin-right: 1rem; }
  .nf-flight-details .nf-flight-details-overview h3 span {
    color: #454545; }

.nf-flight-details .nf-flight-details--backlink {
  float: right; }
  .nf-flight-details .nf-flight-details--backlink svg {
    display: none; }

.nf-flight-details .nf-flight-details--backlink .nf-flight-details-overview h4 {
  color: #2dace3;
  font-weight: bold;
  border-bottom: 0.0625rem solid #EEEEEE;
  line-height: 1.75rem;
  margin-bottom: 1rem; }

.nf-flight-details .nf-flight-details-overview--passengers {
  margin-top: 1rem;
  background: #EEEEEE;
  padding: 0.5rem 0; }
  .nf-flight-details .nf-flight-details-overview--passengers .nf-flight-details-cta-btn {
    width: -webkit-fill-available;
    font-size: 14px; }

.nf-flight-details.nf-holiday-details .nf-flight-details-overview--passengers .nf-flight-details-cta-btn {
  display: block; }

.nf-flight-details .passengers &gt; p {
  color: #454545;
  font-size: 0.9375rem;
  line-height: 2.25rem;
  margin: 0;
  padding-left: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-flight-details .passengers &gt; p svg {
    width: 1.5rem;
    height: 1.5rem;
    margin-right: 0.5rem; }

.nf-flight-details .nf-flight-details-overview-legs {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 1.5rem; }
  .nf-flight-details .nf-flight-details-overview-legs:after {
    content: '';
    display: block;
    width: 0.0625rem;
    position: absolute;
    top: 1rem;
    bottom: 0;
    left: 50%;
    background: #EEEEEE; }

.nf-flight-details .nf-flight-details-overview-leg {
  position: relative;
  width: 346px;
  margin: 0 1rem;
  text-align: left;
  background: #FFFFFF;
  z-index: 1; }
  .nf-flight-details .nf-flight-details-overview-leg h4 {
    color: #2dace3;
    font-weight: bold;
    border-bottom: 0.0625rem solid #EEEEEE;
    line-height: 1.75rem;
    padding-top: 1rem;
    margin-bottom: 1rem;
    text-align: left; }
  .nf-flight-details .nf-flight-details-overview-leg .airline {
    height: 4.75rem;
    line-height: 4.5rem;
    display: inline-block;
    width: 5.625rem;
    margin-right: 0.75rem; }
    .nf-flight-details .nf-flight-details-overview-leg .airline img {
      vertical-align: middle;
      width: 100%; }
    .nf-flight-details .nf-flight-details-overview-leg .airline svg {
      vertical-align: middle;
      width: 100%; }
  .nf-flight-details .nf-flight-details-overview-leg .depart,
  .nf-flight-details .nf-flight-details-overview-leg .arrival {
    color: #EEEEEE;
    background: #283E5A;
    text-align: center;
    padding: 0.5rem;
    width: 4.75rem;
    display: inline-block;
    vertical-align: middle;
    margin-right: 0.5rem; }
    .nf-flight-details .nf-flight-details-overview-leg .depart span,
    .nf-flight-details .nf-flight-details-overview-leg .arrival span {
      display: block;
      line-height: 1.25rem;
      white-space: nowrap; }
    .nf-flight-details .nf-flight-details-overview-leg .depart span:nth-child(1),
    .nf-flight-details .nf-flight-details-overview-leg .arrival span:nth-child(1) {
      font-size: 0.8125rem;
      text-transform: uppercase; }
    .nf-flight-details .nf-flight-details-overview-leg .depart span:nth-child(2),
    .nf-flight-details .nf-flight-details-overview-leg .arrival span:nth-child(2) {
      font-size: 1.125rem;
      font-weight: bold;
      letter-spacing: 0.0625rem;
      color: #FFFFFF; }
  .nf-flight-details .nf-flight-details-overview-leg .arrival {
    margin-right: 0; }
  .nf-flight-details .nf-flight-details-overview-leg .stops {
    text-align: center;
    width: 4.75rem;
    display: inline-block;
    vertical-align: middle;
    margin-right: 0.5rem; }
    .nf-flight-details .nf-flight-details-overview-leg .stops span {
      display: block;
      line-height: 1.25rem;
      font-size: 0.875rem;
      margin: 0.25rem 0; }
    .nf-flight-details .nf-flight-details-overview-leg .stops .transport-type {
      position: relative;
      height: 0.0625rem;
      background: #2dace3;
      margin: 0.9375rem 0.35rem; }
      .nf-flight-details .nf-flight-details-overview-leg .stops .transport-type svg {
        fill: #2dace3;
        background: #FFFFFF;
        width: 1.5rem;
        height: 1.5rem;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translateX(-50%) translateY(-50%);
                transform: translateX(-50%) translateY(-50%); }
      .nf-flight-details .nf-flight-details-overview-leg .stops .transport-type.plane svg {
        -webkit-transform: translateX(-50%) translateY(-50%) rotate(90deg);
                transform: translateX(-50%) translateY(-50%) rotate(90deg); }
    .nf-flight-details .nf-flight-details-overview-leg .stops .direct,
    .nf-flight-details .nf-flight-details-overview-leg .stops .indirect {
      font-size: 0.8125rem;
      font-weight: bold;
      margin-bottom: 0;
      color: #78b543; }
    .nf-flight-details .nf-flight-details-overview-leg .stops .indirect {
      color: #e40046; }

.nf-flight-details .return .nf-flight-details-overview-leg:after {
  content: none; }

.nf-flight-details .nf-flight-attributes {
  position: relative;
  margin-top: 2rem;
  padding: 0.5rem 0; }
  .nf-flight-details .nf-flight-attributes.nf-flight-score-7 {
    color: #007c44;
    background: #007c44; }
  .nf-flight-details .nf-flight-attributes.nf-flight-score-6 {
    color: #4fa900;
    background: #4fa900; }
  .nf-flight-details .nf-flight-attributes.nf-flight-score-5 {
    color: #78b543;
    background: #78b543; }
  .nf-flight-details .nf-flight-attributes.nf-flight-score-4 {
    color: #f89e1c;
    background: #f89e1c; }
  .nf-flight-details .nf-flight-attributes.nf-flight-score-3 {
    color: #ef3a43;
    background: #ef3a43; }
  .nf-flight-details .nf-flight-attributes.nf-flight-score-2 {
    color: #b81e42;
    background: #b81e42; }
  .nf-flight-details .nf-flight-attributes.nf-flight-score-1 {
    color: #cd1e20;
    background: #cd1e20; }
  .nf-flight-details .nf-flight-attributes p {
    margin: 0;
    color: #FFFFFF;
    line-height: 1.4;
    font-size: 0.8125rem; }
  .nf-flight-details .nf-flight-attributes .nf-flight-score-data {
    position: relative;
    color: #FFFFFF;
    font-size: 1.35rem;
    line-height: 1.2;
    margin-right: 0.5rem; }
    .nf-flight-details .nf-flight-attributes .nf-flight-score-data span {
      display: block;
      position: absolute;
      bottom: -0.5rem;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%); }
  .nf-flight-details .nf-flight-attributes .nf-flight-score-desc {
    color: #FFFFFF;
    float: right;
    font-size: 0.75rem;
    margin-right: 1rem; }
  .nf-flight-details .nf-flight-attributes .nf-flight-score-desc--detail {
    display: block;
    font-size: 1.125rem;
    line-height: 0.9; }

.nf-flight-details .nf-flight-attributes:before {
  content: '';
  width: 0;
  height: 0;
  display: block;
  border-bottom-width: 0.75rem;
  border-bottom-style: solid;
  border-right: 0.75rem solid transparent;
  border-left: 0.75rem solid transparent;
  position: absolute;
  bottom: 100%;
  left: 50%;
  margin-left: -0.75rem;
  margin-bottom: -0.0625rem; }

.nf-flight-details .nf-flight-details-branded-fares h2 {
  margin-bottom: 0.5rem;
  text-align: center; }

.nf-flight-details .nf-flight-details-branded-fares h3 {
  font-size: 0.9375rem;
  color: #2dace3;
  font-weight: bold;
  margin-bottom: 1.25rem;
  text-align: center; }
  .nf-flight-details .nf-flight-details-branded-fares h3 span {
    color: #676767;
    font-weight: normal; }

.nf-flight-details .nf-branded-fare-wrap {
  background: #EEEEEE;
  padding: 1rem 0.5rem;
  padding-bottom: 0;
  text-align: center; }

.nf-flight-details .nf-branded-fare-extras {
  padding: 0; }

.nf-flight-details .nf-branded-fare-extras-hidden {
  height: 0;
  overflow: hidden;
  padding-bottom: 0; }
  .nf-flight-details .nf-branded-fare-extras-hidden .nf-branded-fare {
    opacity: 0;
    -webkit-transform: translateY(3rem);
            transform: translateY(3rem); }

.nf-flight-details .nf-branded-fare-extras--reveal {
  color: #2dace3;
  position: relative;
  text-align: center;
  text-decoration: underline;
  cursor: pointer;
  line-height: 1;
  font-size: 0.8125rem;
  margin: 0;
  padding: 0.75rem 1rem;
  -webkit-box-shadow: 0 3px 10px #CFCFCF;
          box-shadow: 0 3px 10px #CFCFCF; }

.nf-flight-details .nf-branded-fare {
  width: 14.625rem;
  min-height: 20rem;
  position: relative;
  display: inline-block;
  margin: 0 0.5rem;
  margin-bottom: 1rem;
  background: #FFFFFF;
  vertical-align: top;
  text-align: left;
  cursor: pointer;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  -webkit-box-shadow: 0 0 0 1px #CFCFCF;
          box-shadow: 0 0 0 1px #CFCFCF;
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0); }
  .nf-flight-details .nf-branded-fare .btn:disabled, .nf-flight-details .nf-branded-fare .btn-large:disabled {
    color: #579410 !important;
    border: 2px solid #579410 !important;
    background-color: #FFFFFF !important; }

.nf-flight-details .nf-branded-fare.mixed-brand {
  min-height: 40rem; }
  .nf-flight-details .nf-branded-fare.mixed-brand .nf-branded-fare-details--header {
    padding: 0.5rem 0.75rem; }

.nf-flight-details .nf-branded-fare.selected {
  cursor: default;
  -webkit-box-shadow: 0 0 20px #b6b6b6;
          box-shadow: 0 0 20px #b6b6b6; }

.nf-flight-details .nf-branded-fare-most-popular--text {
  color: #78b543;
  background: #FFFFFF;
  font-size: 0.8125rem;
  position: absolute;
  left: 0;
  top: 0;
  padding-left: 3rem;
  font-weight: bold;
  display: block;
  width: 100%;
  height: 2.25rem;
  line-height: 2.125rem; }

.nf-flight-details .nf-branded-fare-most-popular--ico {
  width: 1.75rem;
  height: 1.65rem;
  display: inline-block;
  position: absolute;
  top: -0.5625rem;
  left: 0.625rem;
  background: #78b543;
  -webkit-filter: drop-shadow(2px 1px 0 rgba(207, 207, 207, 0.5));
          filter: drop-shadow(2px 1px 0 rgba(207, 207, 207, 0.5)); }
  .nf-flight-details .nf-branded-fare-most-popular--ico span {
    width: 0;
    height: 0;
    position: absolute;
    left: 100%;
    top: 0;
    display: block;
    border-bottom: 0.5rem solid #5f9035;
    border-right: 0.35rem solid transparent; }
  .nf-flight-details .nf-branded-fare-most-popular--ico:after, .nf-flight-details .nf-branded-fare-most-popular--ico:before {
    content: '';
    width: 0;
    height: 0;
    display: block;
    border-left: 0.875rem solid #78b543;
    border-bottom: 0.875rem solid transparent;
    position: absolute;
    top: 100%;
    left: 0; }
  .nf-flight-details .nf-branded-fare-most-popular--ico:after {
    border-left: none;
    border-right: 0.875rem solid #78b543;
    left: initial;
    right: 0; }

.nf-flight-details .nf-branded-fare-details--header {
  padding: 0.75rem; }
  .nf-flight-details .nf-branded-fare-details--header h4 {
    color: #FFFFFF;
    font-size: 0.875rem;
    font-weight: bold;
    margin-bottom: 0.25rem; }
  .nf-flight-details .nf-branded-fare-details--header h5 {
    color: #FFFFFF;
    font-size: 0.8125rem;
    line-height: 1.6;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }
  .nf-flight-details .nf-branded-fare-details--header h6 {
    color: #FFFFFF;
    font-size: 1rem;
    line-height: 1.3;
    font-weight: bold;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }

.nf-flight-details .nf-branded-fare-details.ob .nf-branded-fare-details--header {
  padding-top: 2.725rem; }

.nf-flight-details .nf-branded-fare-extras .nf-branded-fare-details.ob .nf-branded-fare-details--header {
  padding-top: 0.5rem; }

.nf-flight-details .nf-branded-fare-extras .nf-branded-fare-most-popular .nf-branded-fare-details.ob .nf-branded-fare-details--header {
  padding-top: 2.725rem; }

.nf-flight-details .nf-branded-fare-details.cabin-1 {
  background: #2dace3; }

.nf-flight-details .nf-branded-fare-details.cabin-2 {
  background: #989898; }

.nf-flight-details .nf-branded-fare-details.cabin-3 {
  background: #e4b20c; }

.nf-flight-details .nf-branded-fare-details.cabin-4 {
  background: #bb7f4a; }

.nf-flight-details .nf-branded-fare-details ul {
  background: #FFFFFF;
  padding: 1rem 0.5rem;
  margin: 0;
  min-height: 11.375rem; }

.nf-flight-details .nf-branded-fare-details li {
  font-size: 0.8125rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.25rem 0;
  padding-left: 0.25rem;
  background: #fcf7af;
  margin-bottom: 0.125rem; }
  .nf-flight-details .nf-branded-fare-details li a {
    text-decoration: underline; }

.nf-flight-details .nf-branded-fare-details li.included {
  background: transparent; }

.nf-flight-details .nf-branded-fare-details li svg {
  margin-right: 0.5rem;
  width: 1.25rem;
  height: 1.25rem;
  fill: #454545; }

.nf-flight-details .nf-branded-fare-select {
  width: 100%;
  padding: 1rem;
  position: absolute;
  bottom: 0;
  left: 0; }

.nf-flight-details .nf-branded-fare-price {
  margin: 0;
  font-size: 1rem;
  font-weight: bold;
  margin-top: 0.25rem; }

.nf-flight-details .nf-flight-details-itinerary {
  background: #EEEEEE;
  padding: 1rem; }
  .nf-flight-details .nf-flight-details-itinerary h2 {
    margin: 0.25rem 0 1.5rem 0; }

.nf-flight-details .nf-flight-details-cta-btn {
  width: -webkit-fill-available;
  font-size: 14px; }
  .nf-flight-details .nf-flight-details-cta-btn span {
    font-weight: bold; }

.nf-flight-details .nf-flight-details-leg {
  position: relative;
  padding: 1rem;
  padding-bottom: 1.5rem;
  background: #FFFFFF;
  -webkit-box-shadow: 0 0 0 0.0625rem #CFCFCF;
          box-shadow: 0 0 0 0.0625rem #CFCFCF;
  margin-bottom: 1rem;
  overflow: hidden; }

.nf-flight-details .nf-flight-details-leg h3 {
  color: #2dace3;
  font-weight: bold;
  border-bottom: 0.0625rem solid #CFCFCF;
  padding-bottom: 0.75rem;
  padding-right: 7rem; }

.nf-flight-details .nf-flight-details-leg--brandtitle {
  font-size: 0.8125rem;
  color: #9c9c9c;
  font-weight: normal;
  margin-left: 0.75rem;
  vertical-align: bottom; }

.nf-flight-details .nf-flight-details-leg--localtext {
  color: #9c9c9c;
  font-size: 0.875rem;
  position: absolute;
  top: 0.875rem;
  right: 1rem; }

.nf-flight-details .nf-flight-details-segment--wrap {
  padding-top: 1.5rem;
  text-align: center;
  position: relative; }

.nf-flight-details .nf-flight-details-itinerary-segment {
  text-align: center; }
  .nf-flight-details .nf-flight-details-itinerary-segment .operated-by {
    color: #CFCFCF;
    font-size: 0.8125rem;
    display: block;
    clear: both;
    padding-top: 0.5rem; }

.nf-flight-details .nf-flight-details-overview-leg--wrap {
  display: inline-block; }

.nf-flight-details .nf-flight-details-itinerary-segment--depart,
.nf-flight-details .nf-flight-details-itinerary-segment--stops,
.nf-flight-details .nf-flight-details-itinerary-segment--arrival {
  text-align: right; }
  .nf-flight-details .nf-flight-details-itinerary-segment--depart &gt; span,
  .nf-flight-details .nf-flight-details-itinerary-segment--stops &gt; span,
  .nf-flight-details .nf-flight-details-itinerary-segment--arrival &gt; span {
    display: block;
    line-height: 1.4; }
  .nf-flight-details .nf-flight-details-itinerary-segment--depart .time,
  .nf-flight-details .nf-flight-details-itinerary-segment--stops .time,
  .nf-flight-details .nf-flight-details-itinerary-segment--arrival .time {
    font-weight: bold; }

.nf-flight-details .nf-flight-details-itinerary-segment--arrival {
  text-align: left; }

.nf-flight-details .nf-flight-details-itinerary-segment--departdate,
.nf-flight-details .nf-flight-details-itinerary-segment--arrivaldate {
  text-transform: uppercase;
  font-size: 0.9375rem; }

.nf-flight-details .nf-flight-details-itinerary-segment--departtime,
.nf-flight-details .nf-flight-details-itinerary-segment--arrivaltime {
  font-weight: bold;
  font-size: 1.375rem; }

.nf-flight-details .nf-flight-details-itinerary-segment--departtime {
  margin-left: -1rem; }

.nf-flight-details .nf-flight-details-itinerary-segment--arrivaltime {
  margin-right: -1rem; }

.nf-flight-details .nf-flight-details-itinerary-segment--departcode,
.nf-flight-details .nf-flight-details-itinerary-segment--arrivalcode {
  font-weight: normal;
  display: inline-block; }

.nf-flight-details .nf-flight-details-itinerary-segment--departcode.airport-mismatch,
.nf-flight-details .nf-flight-details-itinerary-segment--arrivalcode.airport-mismatch {
  background: #f8e71e; }

.nf-flight-details .nf-flight-details-itinerary-segment--departname,
.nf-flight-details .nf-flight-details-itinerary-segment--arrivalname {
  font-size: 0.8125rem; }

.nf-flight-details .nf-flight-details-itinerary-segment--stops {
  text-align: center;
  padding: 0 1rem; }
  .nf-flight-details .nf-flight-details-itinerary-segment--stops .duration {
    font-size: 0.9375rem;
    font-weight: bold;
    white-space: nowrap; }
  .nf-flight-details .nf-flight-details-itinerary-segment--stops .transport-type {
    position: relative;
    height: 0.0625rem;
    background: #2dace3;
    margin: 0.9375rem 0; }
    .nf-flight-details .nf-flight-details-itinerary-segment--stops .transport-type svg {
      fill: #2dace3;
      background: #FFFFFF;
      width: 1.125rem;
      height: 1.125rem;
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translateX(-50%) translateY(-50%);
              transform: translateX(-50%) translateY(-50%);
      -webkit-box-shadow: 0 0 0 0.375rem #FFFFFF;
              box-shadow: 0 0 0 0.375rem #FFFFFF; }
    .nf-flight-details .nf-flight-details-itinerary-segment--stops .transport-type.plane svg {
      -webkit-transform: translateX(-50%) translateY(-50%) rotate(90deg);
              transform: translateX(-50%) translateY(-50%) rotate(90deg); }
  .nf-flight-details .nf-flight-details-itinerary-segment--stops .flight-number {
    color: #9c9c9c;
    font-size: 0.8125rem; }
  .nf-flight-details .nf-flight-details-itinerary-segment--stops .operated-by {
    color: #CFCFCF; }

.nf-flight-details .nf-flight-details-itinerary-segment--baggage {
  text-align: right;
  font-size: 0.8125rem;
  padding-left: 1rem;
  margin-top: 1rem; }
  .nf-flight-details .nf-flight-details-itinerary-segment--baggage i {
    font-size: 1.25rem;
    vertical-align: bottom;
    margin-right: 0.125rem; }

.nf-flight-details .nf-flight-details-leg--airlineimg {
  max-width: 6rem;
  display: block;
  margin: 0.5rem auto 1rem; }

.nf-flight-details .nf-flight-details-leg--airlinesvg svg {
  max-width: 6rem;
  display: block;
  margin: 0.5rem auto 1rem; }

.nf-flight-details .nf-flight-attributes-segment {
  font-size: 0.8125rem;
  color: #9c9c9c;
  border-top: 0.0625rem solid #CFCFCF;
  padding-top: 1rem;
  text-align: left;
  clear: both;
  margin-top: 2rem; }

.nf-flight-details .nf-flight-attributes-segment--item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
  padding-right: 0.5rem;
  margin-bottom: 0.75rem; }
  .nf-flight-details .nf-flight-attributes-segment--item svg {
    fill: #2dace3;
    margin-right: 0.5rem;
    width: 1.125rem;
    height: 1.125rem; }

.nf-flight-details .error {
  background: #e40046;
  color: #FFFFFF;
  padding: 10px 20px; }

.nf-flight-details .nf-flight-stopover {
  padding: 0.5rem;
  border-radius: 4px;
  background: #EFF6EC;
  margin: 16px 0; }
  .nf-flight-details .nf-flight-stopover svg {
    width: 1.5rem;
    height: 1.5rem;
    margin-right: 0.75rem; }
  .nf-flight-details .nf-flight-stopover p {
    display: inline;
    color: #283E5A;
    font-size: 12px;
    font-weight: 400; }

.nf-flight-details .nf-flight-details-links {
  overflow: hidden; }
  .nf-flight-details .nf-flight-details-links p {
    color: #2dace3;
    fill: #2dace3;
    float: left;
    margin: 0 1.5rem 0 0; }
  .nf-flight-details .nf-flight-details-links svg {
    width: 1.5rem;
    height: 1.5rem; }
  .nf-flight-details .nf-flight-details-links a {
    font-size: 0.8125rem;
    margin-left: 0.5rem;
    border-bottom: 0.0625rem solid #2dace3;
    line-height: 1.1; }

.nf-flight-details .nf-flight-details-continue {
  padding: 1rem;
  border-top: 0.0625rem solid #CFCFCF;
  text-align: right;
  margin-bottom: 6rem; }
  .nf-flight-details .nf-flight-details-continue &gt; span {
    font-weight: bold;
    font-size: 0.8725rem;
    margin-right: 2rem; }

/* END OF BRANDED FARES */
/* MODAL */
/* MODAL STYLES
-------------------------------*/
gm-modal {
  /* modals are hidden by default */
  display: none; }
  gm-modal .gm-modal {
    /* modal container fixed across whole screen */
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    /* z-index must be higher than .jw-modal-background */
    z-index: 1000;
    /* enables scrolling for tall modals */
    overflow: auto; }
    gm-modal .gm-modal .gm-modal-body {
      position: relative;
      padding: 1.25rem 2rem;
      background: #FFFFFF;
      /* margin exposes part of the modal background */
      margin: 4rem auto;
      width: 90%;
      max-width: 64rem; }
      gm-modal .gm-modal .gm-modal-body h2 {
        font-size: 1.4rem;
        padding: 0;
        margin-right: 2rem; }
      gm-modal .gm-modal .gm-modal-body .gm-close {
        fill: #676767;
        cursor: pointer;
        position: absolute;
        right: 1rem;
        top: 1rem;
        z-index: 2; }
      gm-modal .gm-modal .gm-modal-body .fare-rules-model-contents &gt; .row {
        margin-top: 2rem; }
      gm-modal .gm-modal .gm-modal-body .fare-rules-model-contents h3 {
        clear: both;
        font-size: 1.3rem;
        margin: 0 0 0.5rem 0;
        color: #2dace3; }
      gm-modal .gm-modal .gm-modal-body .fare-rules-model-contents .row .col dl {
        margin: 0 0 2rem 0;
        padding: 0;
        clear: both;
        overflow: hidden; }
        gm-modal .gm-modal .gm-modal-body .fare-rules-model-contents .row .col dl dt {
          font-weight: bold;
          display: block;
          float: left;
          clear: both;
          margin: 0;
          padding: 0.25rem 0.75rem;
          border-top: 2px solid #EEEEEE; }
        gm-modal .gm-modal .gm-modal-body .fare-rules-model-contents .row .col dl dt:nth-of-type(1) {
          border-top: 0; }
        gm-modal .gm-modal .gm-modal-body .fare-rules-model-contents .row .col dl dd {
          display: block;
          float: left;
          margin: 0;
          padding: 0.25rem 0.75rem;
          border-top: 2px solid #EEEEEE; }
        gm-modal .gm-modal .gm-modal-body .fare-rules-model-contents .row .col dl dd:nth-of-type(1) {
          border-top: 0; }
  gm-modal .gm-modal-background {
    /* modal background fixed across whole screen */
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    /* semi-transparent black  */
    background-color: #000000;
    opacity: 0.75;
    /* z-index must be below .jw-modal and above everything else  */
    z-index: 900; }
  gm-modal .baggage-info-modal-wrapper .baggage-description {
    white-space: pre-wrap; }

body.gm-modal-open {
  /* body overflow is hidden to hide main scrollbar when modal window is open */
  overflow: hidden; }

/* END OF MODAL */
/* Flight already in basket modal */
.nf-basket-continue .nf-basket-continue-error {
  color: #e40046;
  fill: #e40046;
  background: #ffe4ec;
  border: 1px solid #e40046;
  margin: 1.5rem 0 1rem; }
  .nf-basket-continue .nf-basket-continue-error p {
    margin: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 1rem; }
  .nf-basket-continue .nf-basket-continue-error svg {
    margin-right: 1rem; }

.nf-basket-continue .nf-basket-continue-product-overview {
  margin-bottom: 1rem; }
  .nf-basket-continue .nf-basket-continue-product-overview h3 {
    color: #2dace3;
    font-size: 1.25rem; }
  .nf-basket-continue .nf-basket-continue-product-overview svg {
    width: 2.25rem;
    height: 2.25rem;
    fill: #2dace3;
    margin-right: 0.25rem;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg); }
  .nf-basket-continue .nf-basket-continue-product-overview svg + svg {
    -webkit-transform: none;
            transform: none;
    fill: #AF3694;
    margin-right: 1rem; }

.nf-basket-continue .nf-basket-continue-product-details li:last-of-type {
  margin-top: 1rem; }

.nf-basket-continue .nf-basket-continue-product-details .value {
  font-size: 0.9375rem;
  font-weight: bold; }

.nf-basket-continue .nf-basket-continue-product-message {
  color: #e40046;
  text-align: center; }

.nf-basket-continue .nf-basket-continue-cta {
  text-align: right; }
  .nf-basket-continue .nf-basket-continue-cta .btn, .nf-basket-continue .nf-basket-continue-cta .btn-large {
    margin-right: 1rem; }
  .nf-basket-continue .nf-basket-continue-cta .btn + .btn, .nf-basket-continue .nf-basket-continue-cta .btn-large + .btn, .nf-basket-continue .nf-basket-continue-cta .btn + .btn-large, .nf-basket-continue .nf-basket-continue-cta .btn-large + .btn-large {
    margin-right: 0; }

/* Baggage Upsell Modal */
.gm-modal.nf-flight-baggage-upsell-modal .gm-modal-body {
  width: 300px; }
  .gm-modal.nf-flight-baggage-upsell-modal .gm-modal-body .nf-flight-baggage-upsell {
    text-align: center; }
    .gm-modal.nf-flight-baggage-upsell-modal .gm-modal-body .nf-flight-baggage-upsell .nf-flight-baggage-upsell--svgimage {
      margin: 0 auto;
      display: block;
      margin-top: -1rem; }
    .gm-modal.nf-flight-baggage-upsell-modal .gm-modal-body .nf-flight-baggage-upsell .nf-flight-baggage-upsell--title {
      font-weight: bold;
      margin: 1rem 0rem;
      background-color: #FCF7AF;
      padding: 0.1rem 1rem;
      border-radius: 0.7rem;
      font-size: 1.15rem; }
    .gm-modal.nf-flight-baggage-upsell-modal .gm-modal-body .nf-flight-baggage-upsell .nf-flight-baggage-upsell--stay {
      margin: 1rem 0rem;
      width: 100%;
      display: block;
      font-size: 1.15rem; }
    .gm-modal.nf-flight-baggage-upsell-modal .gm-modal-body .nf-flight-baggage-upsell .nf-flight-baggage-upsell--continue {
      color: #2dace3;
      cursor: pointer;
      text-decoration: underline; }

/* Holiday Details Page */
.nf-flight-details-included-hotel {
  padding-bottom: 1rem;
  border-bottom: 1px solid #EEEEEE;
  font-size: 0.9375rem; }
  .nf-flight-details-included-hotel .nf-flight-details-included-hotel--title {
    color: #2cace3;
    margin-bottom: 0.75rem; }
    .nf-flight-details-included-hotel .nf-flight-details-included-hotel--title &gt; span {
      display: inline-block;
      font-size: inherit;
      font-weight: bold; }
  .nf-flight-details-included-hotel .nf-flight-details-included-hotel--rating {
    color: #F89E1E;
    margin-left: 1rem;
    vertical-align: middle; }
  .nf-flight-details-included-hotel .nf-flight-details-included-hotel--img {
    width: 5.125rem;
    padding: 0.25rem;
    border: 0.0625rem solid #676767;
    margin: 0.375rem 1rem 0 0; }
  .nf-flight-details-included-hotel .nf-flight-details-included-hotel--details {
    float: right;
    width: calc(100% - 6.125rem); }
    .nf-flight-details-included-hotel .nf-flight-details-included-hotel--details .row {
      margin-bottom: 1rem; }

.nf-flight-details-included-hotel-price {
  background: #EEEEEE;
  padding: 1rem;
  padding-bottom: 1.5rem; }
  .nf-flight-details-included-hotel-price p {
    font-size: 1.125rem;
    margin: 0;
    line-height: 1.4;
    text-align: right; }
  .nf-flight-details-included-hotel-price p + p {
    font-size: 0.75rem; }
  .nf-flight-details-included-hotel-price .nf-flight-details-included-hotel-price--total {
    font-size: 1.5rem;
    font-weight: bold; }
  .nf-flight-details-included-hotel-price + .nf-flight-attributes {
    margin-top: 0; }

.nf-branded-fare-single-wrap {
  background: #EEEEEE;
  padding: 1rem 0; }
  .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container {
    padding-left: 0.5rem; }
    .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container &gt; .row {
      -webkit-box-align: stretch;
      -webkit-align-items: stretch;
          -ms-flex-align: stretch;
              align-items: stretch; }
    .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-details {
      padding: 1.5rem 0; }
      .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-details h4 {
        font-size: 0.90625rem;
        font-weight: bold;
        color: #9c9c9c;
        padding: 0.25rem 0; }
      .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-details h5 {
        font-size: 0.90625rem;
        font-weight: bold;
        padding: 0.25rem 0 0.5rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis; }
      .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-details ul {
        list-style: disc;
        margin: 0;
        padding: 0 0 0 1.125rem; }
        .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-details ul li {
          list-style: disc;
          font-size: 0.90625rem;
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          padding: 0.25rem 0;
          padding-left: 0.25rem;
          background: #fcf7af; }
          .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-details ul li a {
            text-decoration: underline; }
        .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-details ul li.included {
          background: transparent; }
    .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-price-panel {
      background: #2dace3;
      color: #FFFFFF;
      height: 100%;
      text-align: center;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-price-panel p {
        font-style: italic;
        font-size: 0.9125rem;
        margin: 0 0 0.5em 0; }
      .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-price-panel p.nf-branded-fare-single-wrap--price {
        font-style: normal;
        font-size: 2.5rem;
        padding: 0;
        line-height: 2.5rem; }
        .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-price-panel p.nf-branded-fare-single-wrap--price span {
          padding-left: 0.25rem;
          font-size: 1.5rem; }
      .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-price-panel button.nf-flight-details-add-bag-btn {
        color: #2dace3;
        background: #FFFFFF;
        font-weight: bold; }

.nf-baggage-option-detail {
  margin-top: 12px; }
  .nf-baggage-option-detail .nf-baggage-option-detail--text {
    color: #676767;
    font-size: 12px;
    font-style: normal;
    font-weight: 400; }
  .nf-baggage-option-detail .nf-baggage-quantity-selector-text {
    color: #454545;
    text-align: center;
    font-family: "Open Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 700; }
  .nf-baggage-option-detail .nf-baggage-quantity-selector-decrement-button,
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button {
    color: #FFFFFF;
    background: #478330;
    display: inline-block;
    width: 3rem;
    height: 3rem;
    position: relative;
    vertical-align: middle;
    cursor: pointer;
    -webkit-transition: all ease 100ms;
    transition: all ease 100ms;
    max-width: 33%;
    position: relative;
    border-radius: 100px;
    border: 2px solid var(--Default-btn-stroke, rgba(255, 255, 255, 0));
    background: #478330; }
    .nf-baggage-option-detail .nf-baggage-quantity-selector-decrement-button.disabled,
    .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button.disabled {
      background: #F1F1F1;
      cursor: default; }
  .nf-baggage-option-detail .nf-baggage-quantity-selector-decrement-button:hover,
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:hover,
  .nf-baggage-option-detail .nf-baggage-quantity-selector-decrement-button:focus,
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:focus {
    background: #1da1da; }
    .nf-baggage-option-detail .nf-baggage-quantity-selector-decrement-button:hover.disabled,
    .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:hover.disabled,
    .nf-baggage-option-detail .nf-baggage-quantity-selector-decrement-button:focus.disabled,
    .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:focus.disabled {
      background: #F1F1F1; }
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button {
    border-radius: 0; }
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:before,
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:after,
  .nf-baggage-option-detail .nf-baggage-quantity-selector-decrement-button:before {
    content: '';
    display: inline-block;
    width: 14px;
    height: 2px;
    background: #FFFFFF;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -7px;
    margin-top: -1px; }
    .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:before.disabled,
    .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:after.disabled,
    .nf-baggage-option-detail .nf-baggage-quantity-selector-decrement-button:before.disabled {
      color: #CFCFCF; }
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg); }
  .nf-baggage-option-detail input {
    display: none; }
  .nf-baggage-option-detail .nf-baggage-option-detail-most-popular {
    float: right; }
  .nf-baggage-option-detail .nf-hand-baggage {
    border: 1px solid; }
    .nf-baggage-option-detail .nf-hand-baggage .nf-hand-baggage-header {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }

/* Baggage and seat plan */
.nf-flight-details-baggage-options {
  padding-bottom: 1rem;
  gap: 16px; }
  .nf-flight-details-baggage-options .nf-hand-baggage img {
    width: 78x;
    height: 80px;
    margin-left: 24px; }
  .nf-flight-details-baggage-options .nf-hold-baggage img {
    width: 50px;
    height: 80px;
    margin-left: 24px; }
  .nf-flight-details-baggage-options .nf-hand-baggage-container {
    margin-bottom: 10px; }
  .nf-flight-details-baggage-options .nf-flight-details-baggage-info {
    border: var(--item-number, 1px) solid var(--Core-Tertiary-200, #F1EDE9);
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    border-radius: 4px;
    min-height: 300px; }
    .nf-flight-details-baggage-options .nf-flight-details-baggage-info .nf-hand-baggage-header {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      border-radius: var(--border-radius, 4px) var(--border-radius, 4px) 0px 0px;
      background: #217FA8;
      fill: #FFFFFF;
      padding: 0 20px; }
      .nf-flight-details-baggage-options .nf-flight-details-baggage-info .nf-hand-baggage-header p {
        color: #FFFFFF;
        margin-left: 10px;
        color: #FFFFFF;
        font-size: 12px;
        font-weight: 800; }
      .nf-flight-details-baggage-options .nf-flight-details-baggage-info .nf-hand-baggage-header svg {
        width: 16px;
        height: 16px; }
    .nf-flight-details-baggage-options .nf-flight-details-baggage-info .nf-hand-baggage {
      padding: 20px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .nf-flight-details-baggage-options .nf-flight-details-baggage-info .nf-hand-baggage h3 {
        font-family: var(--Font-Family-Body, Roboto);
        color: var(--Semantic-Content-content_primary, #03263B);
        font-size: 16px;
        font-weight: 800; }
      .nf-flight-details-baggage-options .nf-flight-details-baggage-info .nf-hand-baggage p {
        color: #0A2033;
        font-size: 12px;
        font-weight: 400;
        margin: 8px 0; }
    .nf-flight-details-baggage-options .nf-flight-details-baggage-info .nf-hold-baggage {
      padding: 20px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .nf-flight-details-baggage-options .nf-flight-details-baggage-info .nf-hold-baggage p {
        color: #0A2033 !important;
        font-size: 12px !important;
        font-weight: 400 !important;
        margin: 8px 0 !important; }

.nf-flight-details-baggage-options,
.nf-flight-details-seat-plan-select,
.nf-flight-details-seat-plan-selected {
  position: relative;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  margin-top: 20px; }

.nf-flight-details-seat-plan-select {
  text-align: center;
  padding: 1.5rem 3rem; }
  .nf-flight-details-seat-plan-select button {
    padding: 0 4rem; }

.nf-flight-details-seat-plan-selected {
  text-align: center; }

.nf-flight-details-extras-cost {
  overflow: hidden;
  font-size: 0.875rem;
  text-align: right;
  margin: 0.5rem 1rem;
  margin-bottom: 0;
  border-top: 1px solid #EEEEEE;
  padding: 1rem 0; }
  .nf-flight-details-extras-cost .m--bold {
    font-weight: bold; }
  .nf-flight-details-extras-cost .nf-flight-details-extras-cost-title {
    display: inline-block; }
  .nf-flight-details-extras-cost .nf-flight-details-extras-cost-amount {
    min-width: 7rem;
    display: inline-block; }
  .nf-flight-details-extras-cost .nf-flight-details-extras-cost-total {
    font-weight: bold;
    font-size: 0.9375rem; }
    .nf-flight-details-extras-cost .nf-flight-details-extras-cost-total .nf-flight-details-extras-cost-amount {
      font-size: 1.0625rem; }

.nf-flight-details-baggage-options--header,
.nf-flight-details-seat-plan--header {
  border-bottom: 2px solid #F7F4F3;
  padding-bottom: 12px; }
  .nf-flight-details-baggage-options--header p,
  .nf-flight-details-seat-plan--header p {
    color: #03263B !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    margin: 0 !important; }
  .nf-flight-details-baggage-options--header h3,
  .nf-flight-details-seat-plan--header h3 {
    color: var(--Semantic-Content-content_primary, #03263B) !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    margin: 0 !important;
    font-family: "Roboto" !important;
    line-height: 24px; }

.nf-flight-details-baggage-options--body {
  padding-top: 1rem; }

.nf-baggage-option-detail--weight {
  color: #0A2033;
  line-height: 21px;
  font-size: 12px;
  font-weight: 400; }
  .nf-baggage-option-detail--weight svg {
    margin-right: 8px; }
  .nf-baggage-option-detail--weight span {
    color: #289ED1;
    font-size: 20px;
    width: 24px;
    display: inline-block; }

.nf-baggage-option-detail--price {
  display: block;
  color: #289ED1;
  font-family: Roboto;
  font-size: 22px;
  font-weight: 800; }

.nf-flight-details-baggage-options--warning {
  color: #e40046;
  text-align: center;
  font-size: 0.875rem; }

.nf-flight-details-seat-plan--info {
  padding: 0 1.5rem;
  margin-bottom: 0.5rem; }

.nf-baggage-option-detail--clearbags,
.nf-flight-details-seat-plan--clearseats {
  text-align: right;
  margin-top: 1.25rem;
  min-height: 1.375rem; }
  .nf-baggage-option-detail--clearbags span,
  .nf-flight-details-seat-plan--clearseats span {
    color: #2dace3;
    text-decoration: underline;
    cursor: pointer; }

.nf-flight-details-seat-plan--clearseats {
  float: right; }

.nf-flight-details-seat-plan-change button {
  float: right;
  margin-top: 1rem;
  padding: 0 2rem;
  margin-left: 2rem; }

/* Seat Plans - Need to change this SASS partial to flight details instead of branded fares */
.nf-flight-details-extras-wrap {
  border-radius: 4px;
  background: #FFFFFF;
  padding: 24px;
  margin-bottom: 56px; }

.nf-flight-details-extras {
  padding-bottom: 1rem; }
  .nf-flight-details-extras h3 {
    color: #217FA8;
    font-weight: 400;
    overflow: hidden;
    font-family: "azo-sans-uber";
    font-size: 22px;
    margin-bottom: 12px; }
  .nf-flight-details-extras p {
    color: #676767;
    font-size: 14px;
    font-weight: 400; }

gm-modal.nf-flight-details-seat-plan-modal .gm-modal .gm-modal-body {
  background: #464646;
  padding: 0;
  width: 100%;
  max-width: 52rem; }

gm-modal.nf-flight-details-seat-plan-modal .gm-modal .gm-modal-body .gm-close {
  fill: #FFFFFF; }

gm-modal.nf-flight-details-seat-plan-modal .gm-modal-background {
  background-color: #FFFFFF; }

.nf-flight-details-seat-plan {
  color: #EEEEEE;
  padding: 1rem 2rem;
  position: relative; }

.nf-flight-details-seat-plan--title {
  position: relative;
  padding-bottom: 0.75rem; }
  .nf-flight-details-seat-plan--title p {
    font-size: 1rem;
    font-weight: bold;
    margin: 0; }
  .nf-flight-details-seat-plan--title:after {
    content: '';
    display: block;
    position: absolute;
    background: #979797;
    height: 1px;
    bottom: 0;
    left: -2rem;
    right: -2rem; }

.nf-flight-details-seat-plan--instruction {
  padding: 0.5rem 0; }

.nf-flight-details-seat-plan--wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.nf-flight-details-seat-plan--totalprice {
  text-align: center;
  font-size: 0.875rem; }
  .nf-flight-details-seat-plan--totalprice span {
    display: block;
    font-size: 2rem;
    line-height: 1.1; }

.nf-flight-details-seat-plan--sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 3rem;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start;
  z-index: 1; }

.nf-seat-select-leg {
  position: relative;
  color: #FFFFFF;
  border: 1px solid transparent;
  background: #2c2c2c;
  margin-bottom: 2rem;
  -webkit-transition: all ease 200ms;
  transition: all ease 200ms;
  opacity: 0.7; }
  .nf-seat-select-leg.m--active {
    border: 1px solid #979797;
    opacity: 1; }
    .nf-seat-select-leg.m--active .nf-seat-select-pax-option.m--current {
      background: #2dace3;
      font-size: 1.125rem; }
      .nf-seat-select-leg.m--active .nf-seat-select-pax-option.m--current .nf-seat-select-pax-option--arrow {
        display: block; }
      .nf-seat-select-leg.m--active .nf-seat-select-pax-option.m--current .nf-seat-select-pax--price {
        color: #FFFFFF; }
  .nf-seat-select-leg.m--active:after {
    content: none; }

.nf-seat-select-leg--header {
  padding-left: 1.5rem;
  margin-top: 1.25rem;
  color: #FFFFFF;
  font-size: 1.125rem; }
  .nf-seat-select-leg--header span {
    color: #2dace3;
    font-size: 0.9375rem;
    display: block;
    margin-top: 0.25rem; }

.nf-seat-select-titles {
  padding: 1rem 1.5rem; }

.nf-seat-select-titles--header {
  font-weight: bold;
  font-size: 1.0625rem; }

.nf-seat-select-pax-options {
  margin: 0; }

.nf-seat-select-pax-option {
  position: relative;
  display: block;
  font-size: 1rem;
  padding: 0.875rem 1.5rem;
  border-bottom: 1px solid #464646;
  cursor: pointer; }
  .nf-seat-select-pax-option.m--selected .nf-seat-select-pax--price {
    color: #2dace3; }
  .nf-seat-select-pax-option.m--current .nf-seat-select-pax-option--arrow {
    display: block; }
  .nf-seat-select-pax-option .row {
    margin: 0; }
  .nf-seat-select-pax-option p {
    margin: 0;
    font-size: 0.8125rem;
    line-height: 1.3;
    margin-top: 0.125rem;
    color: #979797; }

.nf-seat-select-pax-option--tick {
  width: 21px;
  height: 21px;
  vertical-align: text-bottom;
  margin-right: 0.375rem;
  display: none; }

.nf-flight-details-seat-plan.m--fully-selected .nf-seat-select-pax-option.m--current {
  background: #272727;
  -webkit-box-shadow: inset 0 0 1px 1px #2dace3;
          box-shadow: inset 0 0 1px 1px #2dace3; }
  .nf-flight-details-seat-plan.m--fully-selected .nf-seat-select-pax-option.m--current .nf-seat-select-pax-option--arrow {
    display: none; }
  .nf-flight-details-seat-plan.m--fully-selected .nf-seat-select-pax-option.m--current .nf-seat-select-pax--price {
    color: #2dace3; }

.nf-seat-select-pax-option--arrow {
  fill: #2dace3;
  position: absolute;
  left: 100%;
  top: 0;
  width: 2.125rem;
  height: 100%;
  display: none; }

.nf-seat-select-pax-option:last-child {
  border-bottom: 0; }

.nf-flight-details-seat-plan.m--fully-selected .nf-seat-select-leg {
  opacity: 1;
  border-color: #979797; }
  .nf-flight-details-seat-plan.m--fully-selected .nf-seat-select-leg .nf-seat-select-pax-option--arrow {
    display: none; }

.nf-flight-details-seat-plan-segment-warning {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(103, 103, 103, 0.7);
  z-index: 4; }

.nf-flight-details-seat-plan-segment-warning--content {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80%;
  max-width: 48rem;
  -webkit-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  background: #2c2c2c;
  border: 1px solid #979797;
  padding: 1.5rem 2rem; }
  .nf-flight-details-seat-plan-segment-warning--content button {
    min-width: 10rem;
    margin-top: 1rem;
    margin-left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }

.nf-flight-details-seat-plan-segment-warning--title {
  margin: 0;
  font-weight: bold; }
  .nf-flight-details-seat-plan-segment-warning--title svg {
    vertical-align: bottom;
    margin-right: 0.5rem; }

.nf-flight-details-seat-plan--continue {
  padding: 1.5rem 1rem 4rem; }

.nf-seat-select-plane {
  width: 21.5rem;
  margin-left: 1.75rem; }
  .nf-seat-select-plane .nf-seat-select-plane--message,
  .nf-seat-select-plane .nf-seat-select-plane--key {
    padding: 1rem;
    line-height: 1.2;
    text-align: center;
    color: #FFFFFF;
    background: #2c2c2c; }
  .nf-seat-select-plane .nf-seat-select-plane--message {
    position: relative;
    border: 1px solid #5a5a5a;
    border-bottom: 0; }
    .nf-seat-select-plane .nf-seat-select-plane--message span {
      line-height: 1.1;
      display: block; }
    .nf-seat-select-plane .nf-seat-select-plane--message span:nth-of-type(1) {
      color: #CFCFCF;
      font-size: 0.875rem; }
    .nf-seat-select-plane .nf-seat-select-plane--message span:nth-of-type(2) {
      margin-top: 0.375rem; }
    .nf-seat-select-plane .nf-seat-select-plane--message span:nth-of-type(3) {
      color: #2dace3;
      font-size: 1.125rem;
      font-weight: bold;
      margin-top: 0.375rem; }
  .nf-seat-select-plane .nf-seat-select-plane--back,
  .nf-seat-select-plane .nf-seat-select-plane--next {
    display: none; }
  .nf-seat-select-plane .nf-seat-select-plane--key {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: space-evenly;
    -webkit-justify-content: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 0.75rem;
    margin-bottom: 1rem;
    padding-top: 1.125rem;
    border-bottom: 1px solid #676767;
    border: 1px solid #979797; }
    .nf-seat-select-plane .nf-seat-select-plane--key.m--mobile {
      display: none; }
  .nf-seat-select-plane .nf-seat-select-plane--keytitle {
    position: absolute;
    left: 1rem;
    top: 0.5rem;
    font-size: 0.875rem;
    font-weight: bold; }
  .nf-seat-select-plane .nf-seat-select-plane--keydesc {
    font-size: 0.75rem;
    display: block;
    line-height: 1.1; }
  .nf-seat-select-plane .nf-seat-select-plane-body {
    border: 1px solid #5a5a5a;
    padding: 0 0.75rem; }
  .nf-seat-select-plane .nf-seat-select-nose {
    position: relative;
    width: 100%;
    height: 250px;
    background: #2c2c2c;
    border-top-left-radius: 500px 1000px;
    border-top-right-radius: 500px 1000px;
    padding: 20px; }
    .nf-seat-select-plane .nf-seat-select-nose:before, .nf-seat-select-plane .nf-seat-select-nose:after {
      content: '';
      width: 75%;
      height: 70px;
      display: inline-block;
      border: 1px solid #979797;
      border-bottom: 0;
      border-radius: 25% 25% 48% 47% / 100% 100% 0% 0%;
      position: absolute;
      left: 50%;
      top: 70px;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%); }
    .nf-seat-select-plane .nf-seat-select-nose:after {
      height: 50px;
      top: 90px;
      border-radius: 50% 50% 0% 0% / 100% 100% 0% 0%; }
  .nf-seat-select-plane .nf-seat-select-fuselage {
    width: 100%;
    padding: 0 1rem;
    color: #FFFFFF;
    background: #2c2c2c;
    overflow: hidden; }
  .nf-seat-select-plane .nf-seat-select-aisle-number {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 1.25rem; }
    .nf-seat-select-plane .nf-seat-select-aisle-number span {
      font-size: 1.25rem;
      width: 1.75rem;
      font-weight: bold; }
  .nf-seat-select-plane .nf-seat-select-row-group {
    position: relative;
    border-top: 0.125rem solid #2dace3;
    width: 100%;
    padding: 1.5rem 0;
    clear: both;
    float: left; }
  .nf-seat-select-plane .nf-seat-select-row-group--toggle {
    fill: #FFFFFF;
    font-size: 1.75rem;
    position: absolute;
    left: 50%;
    top: -1rem;
    background: #2c2c2c;
    width: 2rem;
    height: 2rem;
    text-align: center;
    margin-left: -1rem;
    cursor: pointer;
    text-shadow: 0 2px 0 #000000;
    -webkit-transition: all ease 300ms;
    transition: all ease 300ms; }
    .nf-seat-select-plane .nf-seat-select-row-group--toggle.m--rotate {
      -webkit-transform: rotate(-180deg);
              transform: rotate(-180deg); }
  .nf-seat-select-plane .nf-seat-select-row {
    float: left;
    min-height: 52px;
    padding-bottom: 1rem; }
  .nf-seat-select-plane .nf-seat-select-row--seat {
    float: left;
    margin-right: 0.75rem;
    position: relative; }
  .nf-seat-select-plane .nf-seat-select-row--seat:nth-child(3),
  .nf-seat-select-plane .nf-seat-select-row--seat:nth-child(4) {
    margin-right: 0; }
  .nf-seat-select-plane .nf-seat-select-row--seat:last-of-type {
    margin-right: 0; }
  .nf-seat-select-plane .nf-seat-select-price {
    color: #2dace3;
    background: #2c2c2c;
    font-size: 1rem;
    line-height: 1.25rem;
    padding-left: 1rem;
    position: absolute;
    top: -0.6875rem;
    right: 0; }
  .nf-seat-select-plane .nf-seat-select-price--info {
    font-size: 0.875rem;
    margin: -0.75rem 0 1.25rem 0;
    color: #979797;
    line-height: 1.4; }
    .nf-seat-select-plane .nf-seat-select-price--info svg {
      width: 0.75rem;
      height: 0.75rem;
      margin-right: 0.25rem; }
  .nf-seat-select-plane .nf-plane-seat {
    fill: #FFFFFF;
    stroke: #979797;
    position: relative;
    z-index: 1;
    width: 34px;
    height: 34px;
    -webkit-transition: all ease 200ms;
    transition: all ease 200ms;
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }

@-webkit-keyframes seatSelect {
  0% {
    -webkit-filter: drop-shadow(0 0 0 #2c2c2c);
            filter: drop-shadow(0 0 0 #2c2c2c);
    -webkit-transform: scale(1);
            transform: scale(1); }
  50% {
    -webkit-filter: drop-shadow(0 0 0.5rem #65b146);
            filter: drop-shadow(0 0 0.5rem #65b146);
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  100% {
    -webkit-filter: drop-shadow(0 0 1rem #2c2c2c);
            filter: drop-shadow(0 0 1rem #2c2c2c);
    -webkit-transform: scale(1);
            transform: scale(1); } }

@keyframes seatSelect {
  0% {
    -webkit-filter: drop-shadow(0 0 0 #2c2c2c);
            filter: drop-shadow(0 0 0 #2c2c2c);
    -webkit-transform: scale(1);
            transform: scale(1); }
  50% {
    -webkit-filter: drop-shadow(0 0 0.5rem #65b146);
            filter: drop-shadow(0 0 0.5rem #65b146);
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  100% {
    -webkit-filter: drop-shadow(0 0 1rem #2c2c2c);
            filter: drop-shadow(0 0 1rem #2c2c2c);
    -webkit-transform: scale(1);
            transform: scale(1); } }

@-webkit-keyframes currentSeat {
  0% {
    -webkit-filter: drop-shadow(0 0 0 #2c2c2c);
            filter: drop-shadow(0 0 0 #2c2c2c); }
  50% {
    -webkit-filter: drop-shadow(0 0 0.5rem #65b146);
            filter: drop-shadow(0 0 0.5rem #65b146); }
  100% {
    -webkit-filter: drop-shadow(0 0 1rem #2c2c2c);
            filter: drop-shadow(0 0 1rem #2c2c2c); } }

@keyframes currentSeat {
  0% {
    -webkit-filter: drop-shadow(0 0 0 #2c2c2c);
            filter: drop-shadow(0 0 0 #2c2c2c); }
  50% {
    -webkit-filter: drop-shadow(0 0 0.5rem #65b146);
            filter: drop-shadow(0 0 0.5rem #65b146); }
  100% {
    -webkit-filter: drop-shadow(0 0 1rem #2c2c2c);
            filter: drop-shadow(0 0 1rem #2c2c2c); } }

@-webkit-keyframes pulse {
  0% {
    opacity: 1; }
  50% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes pulse {
  0% {
    opacity: 1; }
  50% {
    opacity: 0; }
  100% {
    opacity: 1; } }
    .nf-seat-select-plane .nf-plane-seat.m--available {
      cursor: pointer; }
    .nf-seat-select-plane .nf-plane-seat.m--unavailable {
      fill: #2c2c2c;
      opacity: 0.6; }
    .nf-seat-select-plane .nf-plane-seat.m--selected {
      fill: #65b146;
      stroke: #2c2c2c; }
    .nf-seat-select-plane .nf-plane-seat.m--selected.m--current &gt; svg {
      -webkit-animation: currentSeat 1000ms infinite;
              animation: currentSeat 1000ms infinite; }
    .nf-seat-select-plane .nf-plane-seat.m--extra-legroom {
      height: 52px; }
      .nf-seat-select-plane .nf-plane-seat.m--extra-legroom .svg-plane-seat--extra-legroom {
        display: block; }
    .nf-seat-select-plane .nf-plane-seat .svg-plane-seat--extra-legroom {
      display: none; }
    .nf-seat-select-plane .nf-plane-seat .svg-plane-seat--exit-row {
      display: none; }
    .nf-seat-select-plane .nf-plane-seat.m--exit-row .svg-plane-seat--exit-row {
      display: block; }
    .nf-seat-select-plane .nf-plane-seat.missingSeat {
      display: none; }
    .nf-seat-select-plane .nf-plane-seat + .nf-seat-select-row-number, .nf-seat-select-plane .nf-plane-seat.separator {
      display: none;
      /* Hide row number when not a seperator. Hide seat when seperator */ }
    .nf-seat-select-plane .nf-plane-seat.separator + .nf-seat-select-row-number {
      display: block;
      width: 2.125rem;
      height: 1.75rem;
      line-height: 2.625rem;
      text-align: center;
      font-size: 1rem;
      font-weight: bold;
      padding-top: 0.75rem; }

@media only screen and (max-width: 992px) {
  /* Branded Fares */
  .nf-flight-details h2 {
    margin-bottom: 0.25rem; }
  .nf-flight-details .nf-flight-details-branded-fares h2,
  .nf-flight-details .nf-flight-details-branded-fares h3 {
    text-align: left; }
  .nf-flight-details .nf-flight-details-itinerary-segment--depart .nf-flight-details-itinerary-segment--departname {
    white-space: normal; }
  .nf-flight-details .nf-flight-details-itinerary-segment--arrival .nf-flight-details-itinerary-segment--arrivalname {
    white-space: normal; }
  .nf-flight-details .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container {
    padding-left: 0; }
    .nf-flight-details .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container &gt; .row {
      display: block; }
    .nf-flight-details .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-details {
      min-height: 0;
      padding-bottom: 1rem; }
    .nf-flight-details .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-price-panel {
      min-height: 0;
      padding: 1.5rem 0; }
      .nf-flight-details .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-price-panel p.nf-branded-fare-single-wrap--price {
        margin: 0; }
      .nf-flight-details .nf-branded-fare-single-wrap .nf-branded-fare-single-wrap--container .nf-branded-fare-single-price-panel button.nf-flight-details-add-bag-btn {
        margin-top: 0.3rem; }
  gm-modal .gm-modal .gm-modal-body .fare-rules-model-contents .row .col dl dt {
    padding-left: 0;
    padding-right: 0; }
  gm-modal .gm-modal .gm-modal-body .fare-rules-model-contents .row .col dl dd {
    padding-left: 0;
    padding-right: 0; }
  gm-modal .gm-modal .gm-modal-body {
    padding-left: 0.75rem;
    padding-right: 0.75rem; }
  .nf-flight-details-seat-plan {
    padding: 1rem; }
  .nf-flight-details-seat-plan--title:after {
    left: -1rem;
    right: -1rem; } }

@media only screen and (max-width: 600px) {
  /* Branded Fares */
  .nf-flight-details .nf-flight-details--backlink {
    float: none;
    overflow: hidden;
    width: 1.5rem;
    height: 1.5rem;
    display: inline-block;
    vertical-align: top; }
    .nf-flight-details .nf-flight-details--backlink svg {
      display: block;
      fill: #FFFFFF;
      background: #2dace3;
      font-size: 1rem;
      padding: 0.25rem;
      border-radius: 4px; }
  .nf-flight-details .nf-branded-fare-wrap {
    padding: 1rem;
    padding-bottom: 0; }
  .nf-flight-details .nf-branded-fare-extras {
    padding-top: 0; }
  .nf-flight-details .nf-branded-fare-extras--reveal {
    text-align: left; }
  .nf-flight-details .nf-branded-fare {
    width: 100%;
    min-height: initial;
    margin: 0;
    margin-bottom: 1rem;
    padding-bottom: 4.25rem; }
  .nf-flight-details .nf-branded-fare-details ul {
    min-height: initial;
    padding-bottom: 0.5rem; }
  .nf-flight-details .nf-flight-details-overview--passengers {
    padding-bottom: 0;
    border-bottom: 1px solid #CFCFCF; }
    .nf-flight-details .nf-flight-details-overview--passengers .nf-flight-details-cta-btn {
      margin: 0.5rem 1rem 0; }
  .nf-flight-details .passengers &gt; p {
    line-height: 2.5rem;
    margin-bottom: 0; }
  .nf-flight-details .nf-flight-details-leg--brandtitle {
    display: block;
    margin-left: 0; }
  .nf-flight-details .nf-flight-details-overview-legs {
    display: block;
    padding: 0 1rem; }
    .nf-flight-details .nf-flight-details-overview-legs:after {
      content: none; }
  .nf-flight-details .nf-flight-details-overview-leg {
    width: 100%;
    margin: 0;
    text-align: center;
    padding-bottom: 2rem; }
    .nf-flight-details .nf-flight-details-overview-leg .depart,
    .nf-flight-details .nf-flight-details-overview-leg .arrival {
      width: 4.5rem; }
    .nf-flight-details .nf-flight-details-overview-leg h4 {
      line-height: 2.25rem;
      padding-top: 0.25rem; }
    .nf-flight-details .nf-flight-details-overview-leg:after {
      content: '';
      position: absolute;
      display: block;
      width: auto;
      height: 0.0625rem;
      top: initial;
      bottom: 0;
      left: -1rem;
      right: -1rem;
      background: #CFCFCF; }
  .nf-flight-details .return .nf-flight-details-overview-leg:after {
    content: ''; }
  .nf-flight-details .nf-flight-details-leg--airlineimg {
    margin-top: 0; }
  .nf-flight-details .nf-flight-details-leg--airlinesvg svg {
    margin-top: 0; }
  .nf-flight-details .nf-flight-details-continue {
    padding: 0;
    text-align: center; }
    .nf-flight-details .nf-flight-details-continue span {
      line-height: 2.25rem; }
    .nf-flight-details .nf-flight-details-continue .btn, .nf-flight-details .nf-flight-details-continue .btn-large {
      display: block;
      border-radius: 0;
      width: 100%; }
  .nf-flight-details .nf-flight-details-itinerary-segment--baggage {
    text-align: center;
    padding-left: 0; }
  .nf-flight-details .nf-flight-details-itinerary-segment .operated-by {
    padding-top: 0; }
  .nf-flight-details .nf-flight-details-branded-fares h2 {
    margin-bottom: 0.75rem; }
  .nf-flight-details .nf-flight-details-branded-fares h3 span {
    display: block;
    margin-top: 0.5rem; }
  .nf-flight-details .nf-flight-details-itinerary .nf-flight-details-cta-btn {
    margin-bottom: 1rem;
    font-size: 14px; }
  /* Seat plan for mobile devices */
  .nf-baggage-option-detail--clearbags {
    border-bottom: 1px solid #EEEEEE;
    padding: 1rem 0;
    margin: 0; }
  .nf-flight-details-seat-plan-change button {
    display: none; }
  .nf-flight-details-seat-plan-change .nf-flight-details-seat-plan--clearseats {
    margin-right: 0; }
  .nf-flight-details-seat-plan {
    padding: 0; }
    .nf-flight-details-seat-plan.m--hide-passenger-panel .nf-flight-details-seat-plan--sticky {
      display: none; }
    .nf-flight-details-seat-plan.m--hide-plane-panel .nf-flight-details-seat-plan--sticky + div {
      display: none; }
    .nf-flight-details-seat-plan .nf-flight-details-seat-plan--title {
      display: none; }
    .nf-flight-details-seat-plan .nf-seat-select-plane {
      margin: 0; }
    .nf-flight-details-seat-plan .nf-flight-details-extras {
      -webkit-box-shadow: 0 0.2rem 1rem #CFCFCF;
              box-shadow: 0 0.2rem 1rem #CFCFCF; }
    .nf-flight-details-seat-plan .nf-flight-details-seat-plan--wrapper {
      display: block; }
    .nf-flight-details-seat-plan .nf-flight-details-seat-plan--instruction {
      display: none; }
    .nf-flight-details-seat-plan .nf-flight-details-seat-plan--plane {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .nf-flight-details-seat-plan .nf-seat-select-leg {
      border-left: 0;
      border-right: 0;
      margin-bottom: 1.375rem; }
      .nf-flight-details-seat-plan .nf-seat-select-leg:after {
        content: none; }
    .nf-flight-details-seat-plan .nf-seat-select-leg--header {
      padding-left: 1rem; }
    .nf-flight-details-seat-plan .nf-seat-select-plane--header {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 3; }
      .nf-flight-details-seat-plan .nf-seat-select-plane--header.m--pulse .nf-seat-select-plane--message span:nth-of-type(2) {
        -webkit-animation: pulse 500ms;
                animation: pulse 500ms; }
    .nf-flight-details-seat-plan .nf-seat-select-pax-option.m--selected .nf-seat-select-pax-option--tick {
      display: inline-block; }
    .nf-flight-details-seat-plan .nf-seat-select-plane--message,
    .nf-flight-details-seat-plan .nf-seat-select-plane--key {
      background: #464646;
      -webkit-box-shadow: inset 0 -0.5rem 0.75rem rgba(44, 44, 44, 0.3);
              box-shadow: inset 0 -0.5rem 0.75rem rgba(44, 44, 44, 0.3);
      margin-bottom: 0; }
    .nf-flight-details-seat-plan .nf-seat-select-plane--message {
      padding: 0.875rem 3rem 1rem; }
    .nf-flight-details-seat-plan .nf-seat-select-plane--back,
    .nf-flight-details-seat-plan .nf-seat-select-plane--next {
      display: inline-block;
      position: absolute;
      left: 1.25rem;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%); }
    .nf-flight-details-seat-plan .nf-seat-select-plane--next {
      left: auto;
      right: 1.25rem;
      -webkit-transform: translateY(-50%) rotate(180deg);
              transform: translateY(-50%) rotate(180deg); }
    .nf-flight-details-seat-plan .nf-seat-select-plane--key {
      display: none;
      -webkit-box-shadow: 0 0.5rem 0.75rem #2c2c2c;
              box-shadow: 0 0.5rem 0.75rem #2c2c2c; }
      .nf-flight-details-seat-plan .nf-seat-select-plane--key.m--mobile {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; }
    .nf-flight-details-seat-plan .nf-seat-select-titles--header {
      font-size: 1.125rem;
      font-weight: normal; }
  .nf-flight-details-seat-plan.m--fully-selected .nf-seat-select-pax-option.m--current {
    background: inherit;
    font-size: 1rem;
    -webkit-box-shadow: none;
            box-shadow: none; }
  gm-modal.nf-flight-details-seat-plan-modal .gm-modal .gm-modal-body .gm-close {
    display: none; }
  gm-modal.nf-flight-details-seat-plan-modal .gm-modal .gm-modal-body {
    margin: 0; } }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-flight-details-extras h3 {
    min-height: 2.5rem; }
  .nf-flight-details-cta-btn {
    font-size: 10px !important; } }

.nf-price-calendar {
  text-align: center;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

@-webkit-keyframes widget-loading {
  0% {
    left: -2rem; }
  100% {
    left: calc(100% + 2rem); } }

@keyframes widget-loading {
  0% {
    left: -2rem; }
  100% {
    left: calc(100% + 2rem); } }

.nf-price-calender-container {
  position: relative;
  min-height: 25.9375rem;
  overflow: hidden; }

.nf-price-calendar-loading {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  padding-top: 2.75rem; }
  .nf-price-calendar-loading ~ div {
    opacity: 0.45;
    mix-blend-mode: luminosity;
    -webkit-transition: all ease 100ms;
    transition: all ease 100ms; }
    .nf-price-calendar-loading ~ div .nf-monthly-price:after {
      content: ''; }

.nf-price-calendar-header {
  font-size: 1rem;
  font-weight: normal;
  margin-bottom: 1.25rem; }

.nf-price-calendar-disclaimer {
  font-size: 0.75rem;
  padding: 1rem;
  margin: 0; }

.nf-price-calendar-col {
  padding: 0 0.5rem; }

.nf-monthly-price:hover,
.nf-monthly-price:focus {
  border-color: #2dace3; }

.nf-monthly-price {
  position: relative;
  width: 100%;
  border: 1px solid #CFCFCF;
  border-bottom: 0;
  overflow: hidden;
  cursor: pointer;
  background: #FFFFFF;
  padding: 1rem;
  -webkit-transition: all ease 100ms;
  transition: all ease 100ms; }
  .nf-monthly-price a {
    color: #454545; }
  .nf-monthly-price:after {
    content: none;
    display: inline-block;
    position: absolute;
    left: -6rem;
    top: 0;
    bottom: 0;
    width: 6rem;
    background: rgba(0, 0, 0, 0.05);
    background: -webkit-gradient(linear, left top, right top, from(transparent), to(rgba(0, 0, 0, 0.1)));
    background: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.1) 100%);
    -webkit-animation: widget-loading 1.5s 1s ease-out infinite;
            animation: widget-loading 1.5s 1s ease-out infinite;
    -webkit-transform: translateZ(0);
            transform: translateZ(0); }

.nf-monthly-price-date {
  text-align: left; }

.nf-monthly-price-month,
.nf-monthly-price-year {
  font-size: 0.875rem;
  line-height: 1.2;
  font-weight: bold; }

.nf-monthly-price-weather {
  font-size: 0.8125rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.nf-monthly-price-weather span {
  vertical-align: middle;
  display: inline-block;
  margin-left: 0.125rem; }

.nf-monthly-price-weather i {
  font-size: 1.25rem;
  position: relative;
  margin: 0 0 0 0.5rem;
  vertical-align: middle; }

.nf-monthly-price-weather.Sunny i {
  color: goldenrod; }

.nf-monthly-price-weather.Rainy i {
  color: darkgray; }

.nf-monthly-price-weather.Cloudy i {
  color: lightgray; }

.nf-monthly-price-weather.Icy i {
  color: lightblue; }

.nf-monthly-price-price {
  width: auto;
  font-weight: bold;
  font-size: 1.25rem;
  text-align: left;
  line-height: 1; }

.nf-monthly-price-no-price {
  font-size: 0.8125rem;
  text-align: left; }

.nf-monthly-price-price span {
  display: block;
  font-size: 0.8125rem;
  line-height: 1;
  text-align: left;
  font-weight: normal;
  margin-bottom: 0.125rem; }

.nf-monthly-price-price span ~ span {
  display: inline;
  line-height: 1;
  margin-top: 0;
  margin-left: 0.125rem; }

.nf-price-calendar-col &gt; div:last-of-type .nf-monthly-price {
  border-bottom: 1px solid #CFCFCF; }

.nf-price-calendar-col &gt; div:last-of-type .nf-monthly-price:hover,
.nf-price-calendar-col &gt; div:last-of-type .nf-monthly-price:focus {
  border-color: #2dace3; }

.nf-price-calendar-col &gt; div:hover + div .nf-monthly-price,
.nf-price-calendar-col &gt; div:focus + div .nf-monthly-price {
  border-top-color: #2dace3; }

/* Duration Selector*/
.nf-duration-selector input {
  display: none; }

.nf-duration-selector .nf-duration-selector-text {
  font-size: 1rem;
  font-weight: bold;
  width: 2.5rem;
  display: inline-block;
  background-color: #FFFFFF;
  height: 2.375rem;
  text-align: center;
  vertical-align: middle;
  line-height: 2.375rem; }

.nf-duration-selector .nf-duration-selector-increment-button, .nf-duration-selector .nf-duration-selector-decrement-button {
  color: #FFFFFF;
  background: #2dace3;
  border: 0;
  display: inline-block;
  width: 2.375rem;
  height: 2.375rem;
  position: relative;
  vertical-align: middle;
  cursor: pointer;
  -webkit-transition: all ease 100ms;
  transition: all ease 100ms; }

.nf-duration-selector .nf-duration-selector-increment-button {
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px; }

.nf-duration-selector .nf-duration-selector-decrement-button {
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px; }

.nf-duration-selector .nf-duration-selector-increment-button:before,
.nf-duration-selector .nf-duration-selector-increment-button:after,
.nf-duration-selector .nf-duration-selector-decrement-button:before {
  content: '';
  display: inline-block;
  width: 14px;
  height: 2px;
  background: #FFFFFF;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -7px;
  margin-top: -1px; }

.nf-duration-selector .nf-duration-selector-increment-button:after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg); }

.nf-duration-selector .nf-duration-selector-prefix,
.nf-duration-selector .nf-duration-selector-suffix {
  margin: 0.315rem; }

@media only screen and (max-width: 992px) {
  /* Price Widget CSS*/
  .nf-price-calendar-col &gt; div:last-of-type .nf-monthly-price {
    border-bottom: 0; }
  .nf-price-calendar-disclaimer {
    padding-bottom: 0;
    border-top: 1px solid #CFCFCF; } }

@media only screen and (max-width: 600px) {
  /* Price Widget CSS */
  .nf-price-calendar .nf-monthly-price {
    height: auto;
    padding: 1rem;
    width: 100%;
    border: 0;
    margin-bottom: 0.5rem;
    border-bottom: 1px solid #e1e1e1; }
    .nf-price-calendar .nf-monthly-price a {
      width: 100%; }
    .nf-price-calendar .nf-monthly-price .row {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
  .nf-price-calendar .nf-btn-wrap {
    position: relative; }
  .nf-price-calendar .nf-btn-wrap &gt; span {
    color: #2dace3;
    display: inline-block;
    line-height: 1.2;
    height: auto;
    text-align: left;
    font-size: .9375rem;
    padding: 0;
    background: none; }
  .nf-price-calendar .nf-monthly-price-weather {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .nf-price-calendar-disclaimer {
    border-top: 0; }
  .nf-monthly-price-price,
  .nf-monthly-price-no-price {
    padding-left: 1rem; }
  .nf-price-calendar .nf-price-calendar-col {
    padding: 0 1rem; }
  .calendar-modal {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: 0;
    -webkit-transform: none;
            transform: none;
    height: 100%;
    max-height: 100%;
    width: 100%;
    border-radius: 0;
    z-index: 1002; }
  .calendar-selected-day-wrapper {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    -webkit-box-shadow: 0 0 10px #636466;
            box-shadow: 0 0 10px #636466;
    background: #FFFFFF;
    margin: 0; }
  .calendar-selected-day-wrapper .returning,
  .calendar-selected-day-wrapper .departing {
    margin: 0;
    padding: 0.75rem;
    text-align: left;
    font-size: 15px;
    width: 50%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-bottom: 1px solid #cccccc; }
  .calendar-selected-day-wrapper .departing {
    border-right: 1px solid #cccccc; }
  .calendar-selected-day-wrapper .returning span,
  .calendar-selected-day-wrapper .departing span {
    display: inline-block;
    font-size: 15px;
    color: #629137; }
  .calendar-selected-day-wrapper .calendar-duration-and-price {
    float: left;
    width: 100%;
    text-align: center;
    margin: 0;
    padding: 0;
    position: relative;
    padding-bottom: 46px;
    /* Need to base this on rems when properly done - same height as link below */ }
  .calendar-selected-day-wrapper .calendar-duration-and-price .duration,
  .calendar-selected-day-wrapper .calendar-duration-and-price .price {
    padding: 0.5rem 0;
    font-size: 15px; }
  .calendar-selected-day-wrapper .calendar-duration-and-price .price {
    padding-top: 0;
    font-size: 18px; }
  .calendar-selected-day-wrapper .calendar-duration-and-price .price span {
    font-size: 12px; }
  .calendar-selected-day-wrapper .view-flights-link {
    top: initial;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 46px;
    line-height: 46px;
    display: block;
    border-bottom: 0; } }

/*
.calendar-modal {
    display: table;
    position: relative;
    left: 0;
    right: 0;
    top: -100px;
    transform: translateY(-50%);
    background-color: #fafafa;
    padding: 0;
    max-height: 90%;
    min-width: 400px;
    margin: auto;
    overflow-y: auto;
    border-radius: 2px;
    will-change: top,opacity;
    z-index: 1002;
}

.calendar-modal-bg {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0,0,0,0.5);
    width: 100%;
    height: 100%;
    z-index: 1001;
}

.close-calendar {
    position: absolute;
    top: 10px;
    right: 10px;
    display: inline-block;
    border: 2px solid #ef3a43;
    background: $white;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    text-indent: 100%;
    overflow: hidden;
}

.close-calendar {
    position: absolute;
    top: 10px;
    right: 10px;
    display: inline-block;
    border: 2px solid #ef3a43;
    background: $white;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    text-indent: 100%;
    transition: all ease 400ms;
}

.close-calendar:before,
.close-calendar:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -9px;
    margin-top: -1px;
    border-radius: 50%;
    transform: rotate(45deg);
    width: 18px;
    height: 2px;
    background: #ef3a43;
    display: inline-block;
}

.close-calendar:after {
    transform: rotate(-45deg);
}


.close-calendar:hover {
    background: #ef3a43;
}

.close-calendar:hover:before,
.close-calendar:hover:after {
    background: $white;
}

.calendar-modal {
    padding: 1rem 2rem;
    background: #f7f7f7;
}

.calendar-modal .previous-month,
.calendar-modal .next-month {
    color: #3c3c3c;
    float: left;
}

.calendar-modal .next-month {
    float: right;
}

.calendar-modal .previous-month span,
.calendar-modal .next-month span {
    position: absolute;
    text-indent: 100%;
    overflow: hidden;
    width: 10px;
    display: inline-block;
}

.calendar-modal table {
    width: auto;
    margin-top: 5px;
}

.calendar-modal th {
    padding: 5px;
    text-transform: uppercase;
    font-size: 12px;
}

.calendar-modal td {
    padding: 0;
    background: $white;
    border-left: 1px solid #dddddd;
}

.calendar-modal td:last-child {
    border-right: 1px solid #dddddd;
}

.calendar-modal .day-container {
    padding: 5px 8px;
    background: $white;
    height: 75px;
    width: 50px;
}

.calendar-modal .day-container.selected {
    background: #1f708f;
    color: $white;
}

.calendar-modal .day-container.in-duration {
    background: lightblue;
    color: $white;
}

.calendar-modal .day-container.return-date {
    background: lightgray;
    color: #000;
}

.calendar-modal .day-container.calendar-outofmonth {
    background: #e9e9e9;
    color: $grey-200;
}

.calendar-modal .calendar-day {
    display: block;
    font-weight: normal;
    margin-bottom: 10px;
    font-size: 16px;
}

.calendar-modal .calendar-price {
    font-size: 16px;
    font-weight: bold;
}

.calendar-modal .day-container.calendar-cheapest {
    color: $white;
    background-color: $nf-spring-green;
}

.calendar-modal .calendar-cheapest .calendar-price {
}

.calendar-modal .calendar-outofmonth.calendar-cheapest .calendar-price {
    color: $grey-200;
}



.month-calendar-wrapper {
    position: relative;
    min-height: 470px;
}


.month-calendar-loading .overlay {
    z-index: 30;
    width: 100%;
    background: Transparent;
    opacity: 0.2;
    position: absolute;
}

.month-calendar-loading .waiting {
    width: 100%;
    background: Transparent;
    padding: 250px 0;
    opacity: 1;
    position: absolute;
    z-index: 35
}

.month-calendar-title {
    background-color: $nf-primary-blue;
    color: $white;
    margin: 7px;
    padding: 10px;
    height: 40px;
    border-radius: 2px;
}

.calendar-selected-day-wrapper {
    margin: 5px 0;
    overflow: hidden;
}

.calendar-selected-day-wrapper p {
    margin: 0;
}

.calendar-selected-day-wrapper .returning,
.calendar-selected-day-wrapper .departing {
    white-space: nowrap;
    font-size: 12px;
    text-align: left;
    font-weight: normal;
    margin-top: 1.25rem;
}

.calendar-selected-day-wrapper .returning span,
.calendar-selected-day-wrapper .departing span {
    display: block;
    color: $grey-600;
    font-size: 14px;
}

.calendar-selected-day-wrapper .calendar-duration-and-price {
    margin-top: 1.25rem;
    text-align: left;
    position: relative;
}

.calendar-selected-day-wrapper .calendar-duration-and-price .duration {
    font-size: 12px;
    font-weight: bold;
}

.calendar-selected-day-wrapper .calendar-duration-and-price .duration span {
    color: #629137;
}

.calendar-selected-day-wrapper .view-flights-link {
    color: $white;
    background: #83bd4c;
    width: 130px;
    height: 38px;
    display: inline-block;
    line-height: 38px;
    border-radius: 3px;
    border-bottom: 2px solid #629137;
    text-align: center;
    position: absolute;
    top: 0;
    right: 0;
}

.calendar-selected-day-wrapper .calendar-duration-and-price .price {
    color: #629137;
    font-weight: bold;
}

.calendar-selected-day-wrapper .calendar-duration-and-price .price span {
    color: #333333;
    font-size: 12px;
    font-weight: normal;
}

*/
.nf-home .nf-logo .nf-powered-by {
  display: none; }

.nf-home-logo--large .nf-lcy-logo {
  width: 629px;
  height: 42px;
  top: 10rem; }

.nf-home-logo--secondary .nf-powered-by {
  top: auto;
  bottom: 9rem; }

.nf-lcy-logo {
  width: 200px;
  height: 14px;
  -webkit-transform: translateX(calc(-50% + 65px));
          transform: translateX(calc(-50% + 65px)); }

body:not(.nf-home) .nf-lcy-logo #Path,
.nf-navbar--scrolled .nf-lcy-logo #Path {
  fill: #FFFFFF; }

body:not(.nf-home) .nf-lcy-logo #Shape,
.nf-navbar--scrolled .nf-lcy-logo #Shape {
  fill: #FFFFFF; }

.nf-powered-by {
  width: 100px;
  -webkit-transform: translateX(-36px);
          transform: translateX(-36px);
  margin-bottom: -8px; }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-journey-funnel .nf-lcy-logo,
  .nf-journey-funnel .nf-powered-by {
    -webkit-transform: none;
            transform: none; } }

@media only screen and (min-width: 993px) and (max-width: 1380px) {
  .nf-journey-funnel .nf-lcy-logo {
    width: 17.5rem;
    top: -0.375rem; }
  .nf-journey-funnel .nf-powered-by {
    width: 7rem;
    left: 0;
    -webkit-transform: none;
            transform: none;
    top: 0.3125rem; } }

@media only screen and (min-width: 993px) {
  .nf-lcy-logo {
    width: 380px;
    height: 26px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .nf-powered-by {
    position: absolute;
    left: 390px;
    width: 153px;
    height: 19px;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .nf-navbar--scrolled .nf-logo .nf-powered-by {
    display: block; } }

@media only screen and (min-width: 1381px) {
  .nf-journey-funnel .nf-lcy-logo {
    left: -1rem; }
  .nf-journey-funnel .nf-powered-by {
    left: 374px; } }

@media only screen and (max-width: 600px) {
  nav .nf-lcy-logo {
    max-width: 43vw;
    max-width: calc(100vw - 11.5rem); }
  nav .nf-powered-by {
    -webkit-transform: none;
            transform: none; } }

@-webkit-keyframes iconSpin {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes iconSpin {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.nf-recent-searches-wrapper {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 3;
  background: #243851;
  -webkit-transition: background 200ms ease;
  transition: background 200ms ease;
  overflow-y: scroll; }
  .nf-recent-searches-wrapper.m--collapsed {
    background: #243851;
    margin: 1rem;
    position: static;
    border-radius: 4px;
    height: auto;
    overflow: hidden; }
    .nf-recent-searches-wrapper.m--collapsed .nf-recent-searches-title-text {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
      .nf-recent-searches-wrapper.m--collapsed .nf-recent-searches-title-text svg {
        display: block; }

.nf-recent-searches-title,
.nf-recent-searches-title-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  color: #FFFFFF; }

.nf-recent-searches-title {
  position: relative;
  padding: 0.875rem 1rem;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent; }
  .nf-recent-searches-title:hover svg {
    fill: #2dace3; }
  .nf-recent-searches-title svg {
    fill: #FFFFFF;
    display: block;
    width: 1.5rem;
    height: 1.5rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0; }

.nf-recent-searches-title-text {
  line-height: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .nf-recent-searches-title-text svg {
    display: none;
    margin-right: 0.5rem; }

.nf-recent-searches-close-icon svg {
  fill: #2dace3; }

.nf-recent-searches-subtract-icon {
  display: none; }

.nf-recent-searches-list {
  position: relative;
  margin: 0;
  padding-bottom: 1rem; }
  .nf-recent-searches-list:after {
    content: '';
    position: absolute;
    top: -1.25rem;
    left: 1rem;
    right: 1rem;
    background: #676767;
    display: block;
    height: 1px; }

.nf-recent-searches-item {
  position: relative;
  color: #FFFFFF;
  fill: #FFFFFF;
  background: #464646;
  border-radius: 4px;
  padding: 1rem;
  margin: 1rem; }

.nf-recent-searches-item-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  height: 100%; }

.nf-recent-searches-item-title {
  font-size: 0.9375rem;
  line-height: 1.3;
  display: block;
  padding-right: 4rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
  height: 2.375rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-width: 100%; }

.nf-recent-searches-item-description {
  color: #FFFFFF;
  display: block;
  line-height: 1.3;
  font-size: 0.8125rem;
  margin-bottom: 0.5rem;
  padding-right: 1.5rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-width: 100%; }

.nf-recent-searches-item-price {
  position: relative;
  padding-left: 1.375rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  color: #50ac4f;
  margin: 0.25rem 0 0.375rem; }
  .nf-recent-searches-item-price:before {
    content: '';
    display: block;
    width: 1px;
    background: #50ac4f;
    height: calc(100% - 0.25rem);
    position: absolute;
    left: 0.375rem;
    top: 0; }
  .nf-recent-searches-item-price:after {
    content: '';
    display: block;
    position: absolute;
    width: 0;
    height: 0;
    bottom: 0;
    left: 0;
    width: 0.8125rem;
    border-top: 0.8125rem solid #50ac4f;
    border-left: 0.40625rem solid transparent;
    border-right: 0.40625rem solid transparent; }
  .nf-recent-searches-item-price.m--price-down {
    color: #ff8090; }
  .nf-recent-searches-item-price.m--price-down:before {
    top: auto;
    bottom: 0;
    background: #ff8090; }
  .nf-recent-searches-item-price.m--price-down:after {
    border-top: 0;
    border-bottom: 0.8125rem solid #ff8090;
    bottom: auto;
    top: 0; }

.nf-recent-searches-item-price-search {
  font-size: 0.9375rem;
  color: #FFFFFF;
  text-decoration: line-through;
  line-height: 0.9;
  margin-bottom: 0.5rem; }

.nf-recent-searches-item-price-current {
  font-size: 1.25rem;
  color: inherit;
  font-weight: bold;
  line-height: 0.7; }

.nf-recent-searches-item-price-search-only {
  font-size: 1.25rem;
  line-height: 1.9; }

.nf-recent-searches-item-footer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  width: 100%;
  margin-top: auto; }

.nf-recent-searches-item-time {
  color: #CFCFCF;
  font-size: 0.8125rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin: 0.5625rem 0; }
  .nf-recent-searches-item-time svg {
    width: 1.125rem;
    height: 1.125rem;
    display: block;
    fill: #CFCFCF;
    margin-right: 0.375rem; }

.nf-recent-searches-item-button {
  width: 50%; }

.nf-recent-searches-item-delete {
  position: absolute;
  top: 1rem;
  right: 1rem;
  cursor: pointer; }
  .nf-recent-searches-item-delete:hover svg {
    fill: #2dace3; }
  .nf-recent-searches-item-delete svg {
    width: 1.25rem;
    height: 1.25rem;
    display: block;
    fill: #CFCFCF; }

@media only screen and (min-width: 601px) {
  .nf-recent-searches-wrapper {
    position: static;
    border-radius: 4px;
    margin: 1rem;
    overflow: hidden; }
  body:not(.nf-home) .nf-recent-searches-wrapper {
    margin: 1rem auto;
    width: calc(100% - 4rem);
    max-width: 81rem; }
  .nf-recent-searches-list:after {
    content: none; }
  .nf-recent-searches-title-text {
    font-size: 1.125rem;
    -webkit-box-flex: initial;
    -webkit-flex-grow: initial;
        -ms-flex-positive: initial;
            flex-grow: initial;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
    .nf-recent-searches-title-text svg {
      display: block;
      width: 1.5rem;
      height: 1.5rem;
      -webkit-flex-shrink: 0;
          -ms-flex-negative: 0;
              flex-shrink: 0;
      margin-right: 1rem;
      fill: #FFFFFF; }
  .nf-recent-searches-close {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3.25rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 1rem; }
  .nf-recent-searches-subtract-icon {
    display: block; }
  .nf-recent-searches-close-icon {
    display: none; }
  .nf-recent-searches-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .nf-recent-searches-item {
    width: 25%;
    margin: 0;
    margin-left: 1rem; }
  .nf-recent-searches-item:last-of-type {
    margin-right: 1rem; }
  .nf-recent-searches-item-description {
    height: 2rem; } }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-recent-searches-list {
    -webkit-flex-flow: wrap;
        -ms-flex-flow: wrap;
            flex-flow: wrap; }
  .nf-recent-searches-item {
    width: calc(50% - 1.5rem); }
  .nf-recent-searches-item:nth-of-type(2) {
    margin-right: 1rem; }
  .nf-recent-searches-item:nth-of-type(n+3) {
    margin-top: 1rem; } }

@media only screen and (min-width: 993px) and (max-width: 1380px) {
  .nf-recent-searches-item-title {
    padding-right: 1.5rem;
    height: 3.5rem;
    -webkit-line-clamp: 3; }
  .nf-recent-searches-item-description {
    margin: 0;
    padding-right: 0;
    line-height: 1.4; }
  .nf-recent-searches-item-footer {
    display: block;
    margin-top: 0.5rem; }
  .nf-recent-searches-item-footer-info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 0.5rem; }
  .nf-recent-searches-item-price {
    margin-top: 0.5rem; } }

@media only screen and (max-width: 600px) {
  .flight .nf-ng-search.m--advert-show.m--recent-search-loaded + .nf-parallax.parallax-container {
    height: 780px; }
  .flight.nf-multi .nf-ng-search.m--advert-show.m--recent-search-loaded + .nf-parallax.parallax-container {
    height: 930px; } }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .flight.nf-multi .nf-ng-search.m--advert-show.m--recent-search-loaded + .nf-parallax.parallax-container {
    height: 740px; }
  .nf-ng-search.m--advert-show.m--recent-search-loaded + .nf-parallax.parallax-container {
    height: 600px; } }

@media only screen and (min-width: 993px) and (max-width: 1380px) {
  .flight .nf-ng-search.m--advert-show.m--recent-search-loaded + .nf-parallax.parallax-container {
    height: 730px; }
  .holiday .nf-ng-search.m--advert-show.m--recent-search-loaded + .nf-parallax.parallax-container, .car .nf-ng-search.m--advert-show.m--recent-search-loaded + .nf-parallax.parallax-container {
    height: 700px; } }

@-webkit-keyframes advertLoading {
  0% {
    background: rgba(0, 0, 0, 0.1); }
  50% {
    background: rgba(0, 0, 0, 0.035); }
  100% {
    background: rgba(0, 0, 0, 0.1); } }

@keyframes advertLoading {
  0% {
    background: rgba(0, 0, 0, 0.1); }
  50% {
    background: rgba(0, 0, 0, 0.035); }
  100% {
    background: rgba(0, 0, 0, 0.1); } }

.nf-vertical-ad-wrapper {
  display: none; }

#div-flight-top-ad,
#div-flight-banner-ad,
#div-flight-block-ad {
  position: relative;
  -webkit-animation: advertLoading 2500ms infinite;
          animation: advertLoading 2500ms infinite;
  overflow: hidden; }
  #div-flight-top-ad.m--ad-loaded,
  #div-flight-banner-ad.m--ad-loaded,
  #div-flight-block-ad.m--ad-loaded {
    -webkit-animation: none;
            animation: none; }

#div-flight-top-ad {
  margin-bottom: 1.5rem; }

#div-flight-block-ad {
  width: 319px;
  height: 208px; }

@media only screen and (min-width: 601px) {
  #div-flight-block-ad {
    width: 398px;
    height: 260px; }
  #div-flight-results-ad1,
  #div-flight-results-ad2 {
    max-width: 728px; } }

@media only screen and (min-width: 993px) {
  #div-flight-block-ad {
    width: 432px;
    height: 282px; } }

@media only screen and (min-width: 1381px) {
  .nf-vertical-ad-wrapper {
    display: block;
    grid-area: advert;
    width: 160px;
    position: relative; }
    .nf-vertical-ad-wrapper &gt; div {
      margin-bottom: 2rem; }
  #div-flight-results-ad2 {
    position: -webkit-sticky;
    position: sticky;
    top: 5.5rem; } }

.nf-column-widget .col + .col {
  margin-top: 2rem; }

.nf-column-widget li {
  font-size: 0.9375rem; }

.nf-column-widget-landscape-image {
  width: 100%;
  margin-top: 1rem;
  padding: 0 1rem; }
  .nf-column-widget-landscape-image img {
    max-width: 100%;
    display: block;
    margin: 0 auto; }

.nf-column-widget-text {
  font-size: 0.9375rem; }
  .nf-column-widget-text + .nf-column-widget-image {
    margin-top: 1.5rem;
    margin-bottom: 0; }

.nf-column-widget-image {
  margin-bottom: 1.5rem; }
  .nf-column-widget-image.m--image-after {
    margin-bottom: 0;
    margin-top: 1.5rem; }
  .nf-column-widget-image.m--image-only {
    margin: 0; }
  .nf-column-widget-image img {
    max-width: 100%;
    height: auto;
    max-height: 30rem;
    display: block; }

.nf-widget-button {
  margin-top: 2rem;
  margin-bottom: 2rem; }

.nf-large-column-widget-image {
  max-width: 100%;
  padding: 0 1rem;
  margin-top: 2rem; }

.nf-large-column-widget-header {
  text-align: left;
  margin-bottom: 1.5rem; }

.nf-large-column-widget-copy {
  padding: 0 1rem; }

@media only screen and (min-width: 601px) {
  .nf-column-widget.m--columns-2 .row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .nf-column-widget.m--columns-2 .col + .col {
    margin-top: 0; }
  .nf-column-widget-image.m--image-only {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%; }
  .nf-column-widget-landscape-image {
    width: 100%;
    margin-top: 1rem;
    padding: 0 1rem; }
    .nf-column-widget-landscape-image img {
      max-width: 100%;
      display: block;
      margin: 0 auto; }
  .nf-large-column-widget .row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .nf-large-column-widget-image {
    margin-top: 0; } }

@media only screen and (min-width: 993px) {
  .nf-column-widget.m--columns-3 .row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .nf-column-widget.m--columns-3 .col + .col {
    margin-top: 0; }
  .nf-column-widget-landscape-image {
    margin-top: 2rem; } }

@media only screen and (min-width: 1381px) {
  .nf-column-widget-landscape-image {
    margin-top: 3rem;
    padding: 0; } }

.nf-collapsible-text-widget ul.collapsible {
  -webkit-box-shadow: none;
          box-shadow: none;
  border: 0;
  margin: 2rem 0; }
  .nf-collapsible-text-widget ul.collapsible &gt; li {
    -webkit-transition: color ease 300ms;
    transition: color ease 300ms;
    border-top: 1px solid #e0e0e0; }
    .nf-collapsible-text-widget ul.collapsible &gt; li:last-child {
      border-bottom: 1px solid #e0e0e0; }
    .nf-collapsible-text-widget ul.collapsible &gt; li.active {
      color: #2dace3; }
      .nf-collapsible-text-widget ul.collapsible &gt; li.active .collapsible-header:before, .nf-collapsible-text-widget ul.collapsible &gt; li.active .collapsible-header:after {
        background: #2dace3; }
      .nf-collapsible-text-widget ul.collapsible &gt; li.active .collapsible-header:after {
        -webkit-transform: translateY(-50%) rotate(-90deg) scaleX(0);
                transform: translateY(-50%) rotate(-90deg) scaleX(0); }

.nf-collapsible-text-widget .collapsible-header {
  position: relative;
  border-bottom: 0;
  padding: 1.5rem 0;
  background-color: transparent; }
  .nf-collapsible-text-widget .collapsible-header h3 {
    font-weight: bold;
    font-size: 1rem; }
  .nf-collapsible-text-widget .collapsible-header:focus {
    outline: none; }
  .nf-collapsible-text-widget .collapsible-header:before, .nf-collapsible-text-widget .collapsible-header:after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    display: block;
    width: 0.75rem;
    height: 2px;
    background: #979797; }
  .nf-collapsible-text-widget .collapsible-header:before {
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .nf-collapsible-text-widget .collapsible-header:after {
    -webkit-transform: translateY(-50%) rotate(-90deg);
            transform: translateY(-50%) rotate(-90deg);
    -webkit-transition: all ease 300ms;
    transition: all ease 300ms; }

.nf-collapsible-text-widget .collapsible-body {
  color: #4a4a4a;
  padding-left: 0;
  padding-top: 0;
  font-size: 0.875rem;
  border-bottom: 0; }

@media only screen and (min-width: 993px) {
  .nf-collapsible-text-widget .collapsible-header h3 {
    font-size: 1.125rem; }
  .nf-collapsible-text-widget .collapsible-header:before, .nf-collapsible-text-widget .collapsible-header:after {
    width: 1.125rem;
    height: 3px; } }

.nf-faq-widget ul.collapsible {
  -webkit-box-shadow: none;
          box-shadow: none;
  border: 0;
  margin: 2rem 0; }
  .nf-faq-widget ul.collapsible &gt; li {
    -webkit-transition: color ease 300ms;
    transition: color ease 300ms;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    padding: 0 30px;
    margin: 10px 0; }
    .nf-faq-widget ul.collapsible &gt; li:last-child {
      border-bottom: 1px solid #e0e0e0; }
    .nf-faq-widget ul.collapsible &gt; li.inactive {
      color: #454545 !important; }
    .nf-faq-widget ul.collapsible &gt; li.active {
      color: #2dace3; }
      .nf-faq-widget ul.collapsible &gt; li.active .collapsible-header:before, .nf-faq-widget ul.collapsible &gt; li.active .collapsible-header:after {
        background: #1C1B1F; }
      .nf-faq-widget ul.collapsible &gt; li.active .collapsible-header:before {
        -webkit-transform: translateX(23%) rotate(45deg) scale(0.8);
                transform: translateX(23%) rotate(45deg) scale(0.8); }
      .nf-faq-widget ul.collapsible &gt; li.active .collapsible-header:after {
        -webkit-transform: translateX(-23%) rotate(-45deg) scale(0.8);
                transform: translateX(-23%) rotate(-45deg) scale(0.8); }

.nf-faq-widget .collapsible-header {
  position: relative;
  border-bottom: 0;
  padding: 1.5rem 0;
  background-color: transparent; }
  .nf-faq-widget .collapsible-header h3 {
    font-weight: bold;
    font-size: 1rem;
    margin-right: 22px; }
  .nf-faq-widget .collapsible-header:focus {
    outline: none; }
  .nf-faq-widget .collapsible-header:before, .nf-faq-widget .collapsible-header:after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    display: block;
    width: 0.75rem;
    height: 2px;
    background: #1C1B1F; }
  .nf-faq-widget .collapsible-header:before {
    -webkit-transform: translateX(-23%) translateY(0) rotate(45deg) scale(0.8);
            transform: translateX(-23%) translateY(0) rotate(45deg) scale(0.8); }
  .nf-faq-widget .collapsible-header:after {
    -webkit-transform: translateX(23%) translateY(0) rotate(-45deg) scale(0.8);
            transform: translateX(23%) translateY(0) rotate(-45deg) scale(0.8); }

.nf-faq-widget .collapsible-body {
  color: #4a4a4a;
  padding-left: 0;
  padding-top: 0;
  font-size: 0.875rem;
  border-bottom: 0; }

@media only screen and (min-width: 993px) {
  .nf-collapsible-text-widget .collapsible-header h3 {
    font-size: 1rem; }
  .nf-collapsible-text-widget .collapsible-header:before, .nf-collapsible-text-widget .collapsible-header:after {
    width: 12px;
    height: 3px; } }

.nf-featured-offers {
  position: relative;
  margin: -3rem 0; }

.nf-featured-offers-carousel {
  position: relative; }
  .nf-featured-offers-carousel .flickity-button {
    background: none;
    -webkit-box-shadow: none;
            box-shadow: none; }
    .nf-featured-offers-carousel .flickity-button:focus {
      border: 0; }
  .nf-featured-offers-carousel .flickity-button-icon {
    width: 1.5rem;
    height: 1.5rem; }
  .nf-featured-offers-carousel .previous {
    left: 0; }
  .nf-featured-offers-carousel .next {
    right: 0; }
  .nf-featured-offers-carousel .arrow {
    fill: #979797; }

.nf-featured-offer-wrapper {
  width: 100%;
  min-height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start; }
  .nf-featured-offer-wrapper img {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover; }

.nf-featured-offer {
  position: relative;
  width: 100%;
  max-width: 85rem;
  margin: 0 auto; }

.nf-featured-offer-content {
  position: relative;
  padding: 3rem 2.5rem; }
  .nf-featured-offer-content.m--text-overlay {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }
    .nf-featured-offer-content.m--text-overlay .nf-featured-offer-title,
    .nf-featured-offer-content.m--text-overlay .nf-featured-offer-desc {
      color: #FFFFFF;
      background: rgba(0, 0, 0, 0.55);
      padding: 0.5rem; }

.nf-featured-offer-title {
  font-size: 1.5rem;
  line-height: 1.3;
  font-weight: bold;
  font-style: italic; }

.nf-featured-offer-desc {
  margin-top: 1.25rem;
  line-height: 2;
  font-size: 1.125rem; }

.nf-featured-offer-btn {
  margin-top: 2.5rem; }
  .nf-featured-offer-btn .btn, .nf-featured-offer-btn .btn-large {
    font-weight: bold;
    font-size: 1.125rem; }

@media only screen and (min-width: 601px) {
  .nf-featured-offer-wrapper {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .nf-featured-offers-carousel .previous {
    left: 0.75rem; }
  .nf-featured-offers-carousel .next {
    right: 0.75rem; }
  .nf-featured-offer-content {
    padding: 3rem 4rem; }
  .nf-featured-offer-title {
    font-size: 2rem; } }

@media only screen and (min-width: 993px) {
  .nf-featured-offer-content {
    max-width: 52.5rem;
    padding: 3rem 5rem; }
  .nf-featured-offer-title {
    font-size: 3.25rem; }
  .nf-featured-offers-carousel {
    position: static; }
    .nf-featured-offers-carousel .flickity-button-icon {
      width: 2.25rem;
      height: 2.25rem; }
    .nf-featured-offers-carousel .previous {
      left: 1rem; }
    .nf-featured-offers-carousel .next {
      right: 1rem; } }

@media only screen and (min-width: 1381px) {
  .nf-featured-offers-carousel {
    position: static; }
    .nf-featured-offers-carousel .flickity-button-icon {
      width: 2.25rem;
      height: 2.25rem; }
    .nf-featured-offers-carousel .previous {
      left: 4rem; }
    .nf-featured-offers-carousel .next {
      right: 4rem; } }

.nf-big-content-block-widget {
  padding: 0; }

.nf-big-content-copy {
  padding: 2rem; }

.nf-big-content-copy-header {
  font-size: 1.625rem;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 1.25rem; }

.nf-big-content-image {
  position: relative; }
  .nf-big-content-image img {
    width: 100%;
    display: block; }

.nf-big-content-image-text {
  padding: 1rem 2rem;
  background: rgba(0, 0, 0, 0.5);
  color: #FFFFFF;
  text-transform: uppercase;
  font-style: italic;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
  display: block;
  position: absolute;
  top: 2.25rem;
  left: 0;
  width: 100%;
  text-align: left; }

.nf-big-content-copy-text {
  margin-bottom: 2rem; }

.nf-big-content-footer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 2rem; }
  .nf-big-content-footer .btn, .nf-big-content-footer .btn-large {
    min-width: 9rem; }

.nf-big-content-footer-text {
  font-size: 1.625rem;
  line-height: 1.1;
  font-weight: bold; }

@media only screen and (min-width: 601px) {
  .nf-big-content-block {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    max-height: 46.875rem;
    overflow: hidden; }
  .nf-big-content-image {
    width: 50%;
    padding-bottom: 39.453125%;
    max-height: 0;
    overflow: hidden;
    background: rgba(0, 0, 0, 0.05); }
    .nf-big-content-image img {
      position: absolute;
      top: 50%;
      left: 50%;
      bottom: 0;
      min-width: 100%;
      min-height: 100%;
      -webkit-transform: translateX(-50%) translateY(-50%);
              transform: translateX(-50%) translateY(-50%);
      width: auto; }
    .nf-big-content-image + .nf-big-content-copy {
      left: 50%; }
  .nf-big-content-copy {
    position: relative;
    width: 50%;
    padding: 2rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    overflow: hidden;
    position: absolute;
    width: 50%;
    left: 0;
    bottom: 0;
    top: 0; }
    .nf-big-content-copy + .nf-big-content-image {
      margin-left: 50%; }
  .nf-big-content-copy-header {
    margin-top: auto; }
  .nf-big-content-copy-text {
    margin-bottom: auto;
    font-size: 0.875rem;
    overflow: hidden; }
  .nf-big-content-footer {
    margin-top: 1.5rem; } }

@media only screen and (min-width: 993px) {
  .nf-big-content-copy {
    padding: 3rem; }
  .nf-big-content-image-text {
    padding: 3rem;
    text-align: center; }
  .nf-big-content-copy-text {
    font-size: 1rem;
    max-height: none; } }

@media only screen and (min-width: 1381px) {
  .nf-big-content-copy {
    padding: 4rem; }
  .nf-big-content-image-text {
    padding: 4rem;
    font-size: 2.5rem; }
  .nf-big-content-copy {
    padding-left: 10%; }
  .nf-big-content-image + .nf-big-content-copy {
    padding-left: 4rem;
    padding-right: 10%; }
  .nf-big-content-copy-header {
    font-size: 2.5rem; }
  .nf-big-content-copy-text {
    font-size: 1.125rem; }
  .nf-big-content-footer-text {
    font-size: 2rem; } }

.nf-circle-image-columns-carousel:after {
  content: 'flickity';
  display: none; }

.nf-circle-image-column {
  width: 15.625rem;
  min-height: 100%;
  text-align: center;
  padding: 0 2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-circle-image-column img {
    width: 10rem;
    border-radius: 50%;
    display: inline-block;
    margin-bottom: 1.5rem; }
  .nf-circle-image-column .btn, .nf-circle-image-column .btn-large {
    margin-top: auto;
    min-width: 9rem;
    overflow: hidden; }

.nf-circle-image-column-title {
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 1.5rem; }

.nf-circle-image-column-text {
  margin-bottom: 2rem; }

@media only screen and (min-width: 993px) {
  .nf-circle-image-columns-carousel {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .nf-circle-image-columns-carousel:after {
      content: ''; }
  .nf-circle-image-column {
    width: 33.3333%; }
    .nf-circle-image-column img {
      width: 15.625rem; } }

.nf-usp-section:first-of-type + section {
  padding-top: 9rem; }

.nf-usp-section + .nf-breadcrumb-wrap {
  padding-top: 6rem; }

.nf-parallax.parallax-container.m--nosearch {
  height: 350px; }
  .nf-parallax.parallax-container.m--nosearch.m--contains-ad {
    height: auto;
    padding-bottom: 24%; }

.nf-terms-and-conditions-content {
  padding: 0 1rem; }

.nf-terms-and-conditions-content,
.nf-terms-and-conditions-content p,
.nf-terms-and-conditions-content span,
.nf-terms-and-conditions-content div {
  word-break: break-word;
  text-align: left !important;
  /* This is required to override Umbraco inline styles */
  font-size: 0.8125rem; }

.tagline {
  margin-top: 0.5rem; }
  .tagline p {
    position: relative;
    line-height: 1.4;
    margin: 0;
    font-size: 0.875rem;
    color: #EEEEEE;
    padding: 0;
    display: inline-block; }

@media only screen and (min-width: 601px) {
  .nf-intro-panel {
    padding-bottom: 0;
    padding-top: 0; }
    .nf-intro-panel .helphub-banner-subtext {
      width: 60%;
      color: #283E5A;
      margin: 0;
      margin-top: 120px;
      line-height: 0;
      font-size: 42px; }
    .nf-intro-panel .helphub-banner-text {
      color: #283E5A;
      margin: 0;
      font-size: 120px; }
  .tagline {
    margin-top: 0; }
    .tagline p {
      padding: 0 1rem;
      line-height: 1.8;
      background-color: rgba(0, 0, 0, 0.4);
      border-radius: 8px; }
  .nf-parallax.parallax-container.m--nosearch.m--contains-ad {
    padding-bottom: 20%; } }

@media only screen and (min-width: 993px) {
  .nf-parallax.parallax-container.m--nosearch.m--contains-ad {
    padding-bottom: 10.5rem; } }

@media only screen and (max-width: 600px) {
  .nf-parallax.parallax-container.m--nosearch.m--contains-ad {
    padding-bottom: 50%; } }

.nf-flight-itinerary .nf-flight-itinerary-leg {
  position: relative;
  background: #FFFFFF;
  margin-top: 24px; }
  .nf-flight-itinerary .nf-flight-itinerary-leg + .nf-flight-itinerary-leg .nf-flight-itinerary-leg--localtext {
    top: 2.5rem; }

.nf-flight-itinerary .nf-flight-itinerary-leg h3 {
  font-weight: 800;
  margin-bottom: 0.5rem;
  font-size: 14px;
  color: #283E5A; }

.nf-flight-itinerary .nf-flight-itinerary-leg--brandtitle {
  font-size: 0.8125rem;
  color: #9c9c9c;
  font-weight: normal;
  margin-left: 0.75rem; }

.nf-flight-itinerary .nf-flight-itinerary-leg--localtext {
  color: #9c9c9c;
  font-size: 0.875rem;
  position: absolute;
  top: 0;
  right: 0;
  line-height: 1.4; }

.nf-flight-itinerary .nf-flight-itinerary-segment {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.nf-flight-itinerary .nf-flight-itinerary-segment--wrap {
  clear: both;
  border-radius: 4px;
  border: 1px solid var(--Greyscale-greyscale-100, #F1F1F1);
  background: #FFFFFF;
  padding: 8px 16px; }

.nf-flight-itinerary .nf-flight-itinerary-segment--cabinclass {
  font-size: 0.8125rem;
  color: #9c9c9c;
  font-weight: normal;
  margin-left: 0.75rem; }

.nf-flight-itinerary .nf-flight-itinerary-segment .operated-by {
  color: #CFCFCF;
  font-size: 0.8125rem;
  display: block;
  clear: both;
  padding-top: 0.5rem;
  text-align: center; }

.nf-flight-itinerary .nf-flight-itinerary-overview-leg--wrap {
  display: inline-block; }

.nf-flight-itinerary .nf-flight-itinerary-segment--details {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%; }

.nf-flight-itinerary .nf-flight-itinerary-collapsible {
  cursor: pointer; }

.nf-flight-itinerary .nf-flight-itinerary-expanded-summary {
  display: none;
  border-top: 1px solid #f1f1f1;
  border-bottom: 1px solid #f1f1f1;
  padding-top: 0px;
  margin-top: 16px;
  margin-bottom: 12px;
  padding-bottom: 8px; }

.nf-flight-itinerary .nf-flight-itinerary-expanded-summary.collapsed {
  display: block;
  border-top: 1px solid #f1f1f1;
  border-bottom: 1px solid #f1f1f1;
  padding-top: 0px;
  margin-top: 16px;
  margin-bottom: 12px;
  padding-bottom: 8px; }

.nf-flight-itinerary .nf-flight-itinerary-leg-nights {
  border: none;
  width: 100%;
  height: 2px;
  margin: 26px 0 10px 0;
  background: repeating-linear-gradient(90deg, #ACACAC 0px, #ACACAC 4px, transparent 4px, transparent 12px); }
  .nf-flight-itinerary .nf-flight-itinerary-leg-nights span {
    color: #454545;
    font-size: 12px;
    font-weight: 800;
    position: relative;
    top: -12px;
    background: #FFFFFF;
    padding: 0px 10px; }
    .nf-flight-itinerary .nf-flight-itinerary-leg-nights span span {
      position: relative;
      top: 0;
      padding: 0; }

.nf-flight-itinerary .nf-flight-itinerary-segment--stops {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.nf-flight-itinerary .nf-flight-itinerary-segment--depart,
.nf-flight-itinerary .nf-flight-itinerary-segment--stops,
.nf-flight-itinerary .nf-flight-itinerary-segment--arrival {
  text-align: left;
  font-size: 0.875rem; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--depart &gt; span,
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops &gt; span,
  .nf-flight-itinerary .nf-flight-itinerary-segment--arrival &gt; span {
    display: block; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--depart .time,
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .time,
  .nf-flight-itinerary .nf-flight-itinerary-segment--arrival .time {
    font-weight: bold; }

.nf-flight-itinerary .nf-flight-itinerary-segment--depart,
.nf-flight-itinerary .nf-flight-itinerary-segment--arrival {
  font-size: 0.75rem;
  line-height: 1.4;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.nf-flight-itinerary .nf-flight-itinerary-segment--arrival {
  text-align: right; }

.nf-flight-itinerary .nf-flight-itinerary-segment--departdate,
.nf-flight-itinerary .nf-flight-itinerary-segment--arrivaldate {
  text-transform: uppercase; }

.nf-flight-itinerary .nf-flight-itinerary-segment--departtime,
.nf-flight-itinerary .nf-flight-itinerary-segment--arrivaltime {
  white-space: nowrap;
  font-size: 16px;
  font-weight: 800;
  color: #0B3C80; }

.nf-flight-itinerary .nf-flight-itinerary-segment--departcode,
.nf-flight-itinerary .nf-flight-itinerary-segment--arrivalcode {
  display: inline-block;
  margin-right: 0.25rem;
  font-size: 12px;
  font-weight: 400;
  color: #454545; }

.nf-flight-itinerary .nf-flight-itinerary-segment--departcode.airport-mismatch,
.nf-flight-itinerary .nf-flight-itinerary-segment--arrivalcode.airport-mismatch {
  background: #f8e71e; }

.nf-flight-itinerary .nf-flight-itinerary-segment--stops {
  text-align: center; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .duration {
    white-space: nowrap;
    font-size: 12px;
    font-weight: 400;
    color: #676767; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .transport-type {
    position: relative;
    height: 0.0625rem;
    margin: 0.25rem 0;
    border-top: 2px dotted #ACACAC; }
    .nf-flight-itinerary .nf-flight-itinerary-segment--stops .transport-type svg {
      fill: #676767;
      background: #FFFFFF;
      position: absolute;
      top: 50%;
      left: 0%;
      -webkit-transform: translateX(-50%) translateY(-50%) scale(1.5);
              transform: translateX(-50%) translateY(-50%) scale(1.5);
      padding: 0.25rem 0;
      font-size: 1.125rem; }
    .nf-flight-itinerary .nf-flight-itinerary-segment--stops .transport-type.plane svg {
      -webkit-transform: translateX(-50%) translateY(-50%) rotate(90deg) scale(1.5);
              transform: translateX(-50%) translateY(-50%) rotate(90deg) scale(1.5); }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .transport-end {
    position: absolute;
    left: 100%; }
    .nf-flight-itinerary .nf-flight-itinerary-segment--stops .transport-end svg {
      -webkit-transform: translateX(-50%) translateY(-50%) scale(1.5) !important;
              transform: translateX(-50%) translateY(-50%) scale(1.5) !important; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .flight-number {
    color: #676767;
    font-size: 12px;
    font-weight: 600; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .itineary-expand {
    color: #1A6788; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .operated-by {
    color: #CFCFCF; }

.nf-flight-itinerary .nf-flight-itinerary-segment--baggage {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.8125rem;
  margin-top: 1rem; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--baggage svg {
    font-size: 1rem;
    margin-right: 0.125rem; }

.nf-flight-itinerary .nf-flight-itinerary-leg--airlineimg {
  display: inline-block;
  width: 40px; }

.nf-flight-itinerary .nf-flight-itinerary-leg--airlinesvg svg {
  max-width: 40px;
  display: inline-block;
  width: 42px;
  margin-right: 40px; }

.nf-flight-itinerary .nf-flight-stopover {
  padding: 0.5rem;
  border-radius: 4px;
  background: #EFF6EC;
  margin: 16px 0; }
  .nf-flight-itinerary .nf-flight-stopover p {
    display: inline;
    color: #283E5A;
    font-size: 12px;
    font-weight: 400; }

.nf-flight-itinerary .nf-flight-itinerary-collapsible-airline-info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 16px 0; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-airline-info span {
    color: var(--Semantic-Elements-Text-heading_primary, #03263B);
    font-size: 12px;
    font-weight: 400; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-airline-info .nf-flight-itinerary-collapsible-journey-type {
    border-radius: 4px;
    background: var(--Greyscale-greyscale-100, #F1F1F1);
    color: #283E5A;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 10px; }

.nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-airline {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-airline span {
    color: #676767;
    font-size: 12px;
    font-weight: 400; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-airline svg,
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-airline img {
    width: 45px;
    height: 30px; }

.nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-journey {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-journey svg {
      width: 13px;
      height: 31px;
      fill: #F1F1F1;
      margin: 2px 0; }
    .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-journey .nf-flight-itinerary-collapsible-path {
      background: #F1F1F1;
      width: 2px;
      height: 100%;
      margin: 5px; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-left: 8px; }
    .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-departure {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
      .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-departure time {
        color: var(--Semantic-Elements-Text-heading_secondary, #0B3C80);
        font-size: var(--Font-Size-Body-Body-XS, 12px);
        font-weight: 800; }
      .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-departure p {
        color: #454545;
        font-size: 12px;
        font-weight: 400;
        margin: 0;
        margin-left: 4px; }
    .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-arrival {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
      .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-arrival time {
        color: var(--Semantic-Elements-Text-heading_secondary, #0B3C80);
        font-size: var(--Font-Size-Body-Body-XS, 12px);
        font-weight: 800; }
      .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-arrival p {
        color: #454545;
        font-size: 12px;
        font-weight: 400;
        margin: 0;
        margin-left: 4px; }
    .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-duration {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
      .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-duration svg {
        width: 16px;
        height: 16px;
        margin-right: 4px;
        margin-top: 12px;
        margin-bottom: 12px; }
      .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-duration span {
        color: #454545;
        font-size: 12px;
        font-weight: 400; }

.nf-flight-itinerary-summary {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 1.5rem; }
  .nf-flight-itinerary-summary:after {
    content: '';
    display: block;
    width: 0.0625rem;
    position: absolute;
    top: 1rem;
    bottom: 0;
    left: 50%;
    background: #EEEEEE; }
  .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg {
    position: relative;
    width: 346px;
    /* Need to check this value */
    margin: 0 1rem;
    text-align: left;
    background: #FFFFFF;
    /* Needed to hide vertical grey seperator on smaller screen sizes */
    z-index: 1;
    /* Needed to hide grey vertical seperator on smaller screen sizes */ }
    .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg h4 {
      color: #2dace3;
      font-weight: bold;
      border-bottom: 0.0625rem solid #EEEEEE;
      line-height: 1.75rem;
      padding-top: 1rem;
      margin-bottom: 1rem;
      text-align: left; }
    .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .airline {
      height: 4.75rem;
      line-height: 4.5rem;
      display: inline-block;
      width: 5.625rem;
      margin-right: 0.75rem; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .airline img {
        vertical-align: middle;
        width: 100%; }
    .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .depart,
    .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .arrival {
      color: #EEEEEE;
      background: #283E5A;
      text-align: center;
      padding: 0.5rem;
      width: 4.75rem;
      display: inline-block;
      vertical-align: middle;
      margin-right: 0.5rem; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .depart span,
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .arrival span {
        display: block;
        line-height: 1.25rem;
        white-space: nowrap; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .depart span:nth-child(1),
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .arrival span:nth-child(1) {
        font-size: 0.8125rem;
        text-transform: uppercase; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .depart span:nth-child(2),
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .arrival span:nth-child(2) {
        font-size: 1.125rem;
        font-weight: bold;
        letter-spacing: 0.0625rem;
        color: #FFFFFF; }
    .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .arrival {
      margin-right: 0; }
    .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops {
      text-align: center;
      width: 4.75rem;
      display: inline-block;
      vertical-align: middle;
      margin-right: 0.5rem; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops span {
        display: block;
        line-height: 1.25rem;
        font-size: 0.875rem;
        margin: 0.25rem 0; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops .transport-type {
        position: relative;
        height: 0.0625rem;
        background: #2dace3;
        margin: 0.9375rem 0.35rem; }
        .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops .transport-type i {
          color: #2dace3;
          background: #FFFFFF;
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translateX(-50%) translateY(-50%);
                  transform: translateX(-50%) translateY(-50%); }
        .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops .transport-type.plane i {
          -webkit-transform: translateX(-50%) translateY(-50%) rotate(90deg);
                  transform: translateX(-50%) translateY(-50%) rotate(90deg); }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops .direct,
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops .indirect {
        font-size: 0.8125rem;
        font-weight: bold;
        margin-bottom: 0;
        color: #78b543; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops .indirect {
        color: #e40046; }
  .nf-flight-itinerary-summary .return .nf-flight-itinerary-summary-leg:after {
    content: none; }

.nf-flight-itinerary-segment--baggage + .nf-flight-itinerary-attributes {
  margin-top: 1.25rem; }

.nf-flight-itinerary-attributes {
  font-size: 0.8125rem;
  color: #9c9c9c;
  border-top: 0.0625rem solid #EEEEEE;
  padding-top: 1rem;
  text-align: left;
  clear: both;
  margin-top: 2rem; }
  .nf-flight-itinerary-attributes .nf-flight-itinerary-attributes--item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    line-height: 1;
    padding-right: 0.5rem;
    margin-bottom: 0.75rem; }
    .nf-flight-itinerary-attributes .nf-flight-itinerary-attributes--item svg {
      fill: #2dace3;
      margin-right: 0.5rem;
      font-size: 1.125rem; }

@media only screen and (min-width: 993px) {
  .nf-flight-itinerary-leg--airlineimg {
    margin-right: 40px; }
  .nf-flight-itinerary-segment--depart {
    padding-right: 10%;
    -webkit-flex-basis: 16%;
        -ms-flex-preferred-size: 16%;
            flex-basis: 16%; }
  .nf-flight-itinerary-segment--arrival {
    padding-left: 10%;
    -webkit-flex-basis: 16%;
        -ms-flex-preferred-size: 16%;
            flex-basis: 16%; }
  .nf-flight-itinerary-collapsible {
    margin-left: 40px; } }

@media only screen and (max-width: 992px) {
  .nf-flight-itinerary .nf-flight-itinerary-leg--brandtitle {
    display: block;
    margin-left: 0;
    margin-top: 0.5rem;
    font-size: 0.75rem; }
  .nf-flight-itinerary .nf-flight-itinerary-leg--localtext {
    font-size: 0.75rem; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--cabinclass {
    display: block;
    margin-left: 0;
    font-size: 0.75rem; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--depart {
    padding-right: 4%;
    -webkit-flex-basis: 28%;
        -ms-flex-preferred-size: 28%;
            flex-basis: 28%; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--arrival {
    padding-left: 4%;
    -webkit-flex-basis: 28%;
        -ms-flex-preferred-size: 28%;
            flex-basis: 28%; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--departtime,
  .nf-flight-itinerary .nf-flight-itinerary-segment--arrivaltime {
    font-size: 1rem; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible {
    margin-left: 8px; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .transport-type {
    margin: 1rem 0; }
  .nf-flight-itinerary .nf-flight-itinerary-leg--airlineimg {
    margin-right: 8px; } }

@media only screen and (max-width: 600px) {
  .nf-flight-itinerary .nf-flight-itinerary-segment--departtime,
  .nf-flight-itinerary .nf-flight-itinerary-segment--arrivaltime {
    font-size: 0.875rem; }
  .nf-flight-itinerary-segment--depart {
    padding-right: 0% !important; }
  .nf-flight-itinerary-segment--arrival {
    padding-left: 0% !important; } }

.nf-booking-price-breakdown-items {
  margin: 0; }

.nf-basket-price-line {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: end;
      -ms-flex-pack: end;
          justify-content: end;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.nf-basket-price-line-label {
  color: #393939;
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.16px; }

.nf-basket-price-line-cost {
  color: #393939;
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.16px; }

.nf-basket-summary-more-detail {
  margin-top: 0.5rem;
  display: block; }

.nf-basket-product-info {
  font-size: 0.75rem;
  color: #676767;
  margin: 0;
  text-align: center; }

.nf-basket-summary-item {
  font-size: 0.75rem;
  padding: 8px 0 8px 0;
  color: #222222; }
  .nf-basket-summary-item b {
    display: block;
    padding: 4px 0; }
  .nf-basket-summary-item li {
    padding: 4px 0; }

.nf-basket-summary-item + .nf-basket-summary-item:last-of-type {
  font-weight: bold;
  font-size: 0.9375rem; }

.nf-basket-summary-hotel-occupancy,
.nf-basket-summary-hotel-info {
  display: block; }
  .nf-basket-summary-hotel-occupancy strong,
  .nf-basket-summary-hotel-info strong {
    margin-right: 0.25rem; }

.nf-branded-fare {
  margin-bottom: 8px; }

.nf-basket-summary-flight-dates,
.nf-basket-summary-flight-route,
.nf-basket-summary-flight-pax,
.nf-basket-summary-flight-view-link,
.nf-booked-summary-item-text {
  color: #283E5A;
  font-size: 12px;
  line-height: 16px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 8px; }
  .nf-basket-summary-flight-dates svg,
  .nf-basket-summary-flight-route svg,
  .nf-basket-summary-flight-pax svg,
  .nf-basket-summary-flight-view-link svg,
  .nf-booked-summary-item-text svg {
    width: 16px;
    height: 16px;
    margin-right: 8px; }

.nf-basket-summary-flight-fare-and-taxes {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
  padding: 12px 24px;
  border-top: 1px solid #F1F1F1; }
  .nf-basket-summary-flight-fare-and-taxes .nf-basket-summary-flight-fare, .nf-basket-summary-flight-fare-and-taxes .nf-basket-summary-flight-taxes {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .nf-basket-summary-flight-fare-and-taxes .nf-basket-summary-flight-fare p, .nf-basket-summary-flight-fare-and-taxes .nf-basket-summary-flight-taxes p {
      color: var(--Greyscale-greyscale-700, #222);
      font-size: 12px;
      font-style: normal;
      font-weight: 600;
      line-height: 16px; }
    .nf-basket-summary-flight-fare-and-taxes .nf-basket-summary-flight-fare span, .nf-basket-summary-flight-fare-and-taxes .nf-basket-summary-flight-taxes span {
      color: var(--Greyscale-greyscale-700, #222);
      text-align: right;
      font-size: 12px;
      font-style: normal;
      font-weight: 400;
      line-height: 16px; }

.nf-basket-summary-flight-view-link {
  margin-top: 8px;
  line-height: 1.5; }
  .nf-basket-summary-flight-view-link .nf-button-link {
    color: #217FA8;
    font-size: 14px !important;
    font-weight: 400;
    line-height: 21px;
    -webkit-text-decoration-line: underline;
            text-decoration-line: underline; }

.nf-flight-itinerary-branded-fare--header {
  font-weight: bold;
  font-size: 0.875rem;
  margin: 1rem 0 0.5rem; }

.nf-customer-count-adults,
.nf-customer-count-children,
.nf-customer-count-infants {
  margin-right: 0.5rem; }

.m--modal-open {
  overflow: hidden; }

.nf-modal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 1000;
  background: rgba(0, 0, 0, 0.25); }

.fare-and-tax-details .nf-modal-container {
  position: fixed;
  position: fixed;
  width: 50%;
  left: 25%; }

.fare-and-tax-details .nf-modal-dialog {
  border-radius: 4px;
  min-width: -webkit-fill-available; }

.nf-modal-container {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10000;
  overflow: auto;
  text-align: center;
  overflow-scrolling: touch;
  cursor: pointer; }
  .nf-modal-container:after {
    vertical-align: middle;
    display: inline-block;
    height: 100%;
    margin-left: -.05em;
    content: ''; }

.nf-modal-dialog {
  position: relative;
  outline: 0;
  width: 100%;
  min-height: 100%;
  background: #FFFFFF;
  display: inline-block;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 60.5rem;
  cursor: default;
  text-align: left; }

.nf-modal-close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 24px;
  cursor: pointer;
  fill: #454545; }

.nf-modal-back {
  margin-right: 0.375rem;
  margin-left: -1.5rem; }
  .nf-modal-back svg {
    width: 1.75rem;
    height: 1.75rem;
    display: block;
    fill: #FFFFFF; }

.nf-modal-header {
  color: #FFFFFF;
  background: #2dace3;
  padding: 0 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-modal-header h4 {
    font-size: 0.9375rem;
    line-height: 3rem; }

.nf-modal-title + .nf-modal-close {
  fill: #FFFFFF; }

.nf-modal-body {
  padding: 1rem; }

.nf-modal-buttons {
  margin-top: 2rem; }
  .nf-modal-buttons button {
    margin-right: 1.5rem; }

.nf-extras-waiting-message {
  text-align: center;
  font-size: 0.875rem; }

.nf-extras-waiting-text {
  display: inline-block;
  margin-top: 1.5rem; }

@media only screen and (min-width: 601px) {
  .nf-modal-container {
    padding: 2rem; }
  .nf-modal-body {
    padding: 24px; }
  .nf-modal-dialog {
    height: auto;
    min-height: auto;
    min-width: 40rem;
    border-radius: 0.25rem;
    -webkit-box-shadow: 0 0.0625rem 0.0625rem rgba(69, 69, 69, 0.12), 0 0.125rem 0.125rem rgba(69, 69, 69, 0.12), 0 0.25rem 0.5rem rgba(69, 69, 69, 0.12), 0 0.5rem 0.5rem rgba(69, 69, 69, 0.12), 0 1rem 1rem rgba(69, 69, 69, 0.12);
            box-shadow: 0 0.0625rem 0.0625rem rgba(69, 69, 69, 0.12), 0 0.125rem 0.125rem rgba(69, 69, 69, 0.12), 0 0.25rem 0.5rem rgba(69, 69, 69, 0.12), 0 0.5rem 0.5rem rgba(69, 69, 69, 0.12), 0 1rem 1rem rgba(69, 69, 69, 0.12); }
  .nf-modal-header {
    padding: 0 2rem;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem; }
  .fare-and-tax-details .nf-modal-dialog {
    height: auto;
    min-height: auto;
    border-radius: 4px;
    -webkit-box-shadow: 0 0.0625rem 0.0625rem rgba(69, 69, 69, 0.12), 0 0.125rem 0.125rem rgba(69, 69, 69, 0.12), 0 0.25rem 0.5rem rgba(69, 69, 69, 0.12), 0 0.5rem 0.5rem rgba(69, 69, 69, 0.12), 0 1rem 1rem rgba(69, 69, 69, 0.12);
            box-shadow: 0 0.0625rem 0.0625rem rgba(69, 69, 69, 0.12), 0 0.125rem 0.125rem rgba(69, 69, 69, 0.12), 0 0.25rem 0.5rem rgba(69, 69, 69, 0.12), 0 0.5rem 0.5rem rgba(69, 69, 69, 0.12), 0 1rem 1rem rgba(69, 69, 69, 0.12); }
  .fare-and-tax-details .nf-modal-header {
    padding: 0 2rem;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem; } }

.nf-modal-wrapper.m--confirmation .nf-modal-overlay, .nf-modal-wrapper.m--blocking .nf-modal-overlay {
  -webkit-backdrop-filter: blur(1px) grayscale(75%);
          backdrop-filter: blur(1px) grayscale(75%); }

.nf-modal-wrapper.m--confirmation .nf-modal-container, .nf-modal-wrapper.m--blocking .nf-modal-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0 1rem; }

.nf-modal-wrapper.m--confirmation .nf-modal-dialog, .nf-modal-wrapper.m--blocking .nf-modal-dialog {
  min-width: auto;
  min-height: auto;
  border-radius: 0.25rem;
  max-width: 24rem;
  width: auto; }

.nf-modal-wrapper.m--confirmation .nf-modal-header, .nf-modal-wrapper.m--blocking .nf-modal-header {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem; }

.nf-modal-wrapper.m--confirmation .nf-modal-dialog {
  max-width: 48rem; }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .fare-and-tax-details .nf-modal-container {
    width: 60%;
    left: 20%; } }

@media only screen and (max-width: 600px) {
  .fare-and-tax-details .nf-modal-container {
    width: 90%;
    left: 5%;
    height: 90%;
    top: 5%; } }

.nf-hotel-summary {
  /*padding-bottom:2rem;
    border-bottom:1px solid $grey-100;*/ }

.nf-hotel-room-summary-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 0.875rem; }

.nf-hotel-room-summary-label {
  min-width: 5rem;
  white-space: nowrap;
  font-weight: bold; }

.nf-hotel-summary-name {
  margin-bottom: 1.5rem;
  font-size: 0.875rem;
  font-weight: bold; }

.nf-hotel-summary-rooms {
  margin: 0; }

.nf-car-summary-name {
  font-size: 0.875rem;
  margin-bottom: 1rem; }

.nf-car-summary-item {
  font-size: 0.875rem;
  margin-bottom: 0.125rem; }

.nf-car-summary-item:last-of-type {
  margin-bottom: 0; }

.nf-car-summary-label {
  font-weight: bold;
  margin-right: 0.25rem; }

.nf-car-summary-depot {
  display: block; }

.nf-basket-summary-car-name,
.nf-basket-summary-car-info {
  display: block; }
  .nf-basket-summary-car-name strong,
  .nf-basket-summary-car-info strong {
    margin-right: 0.25rem; }

.nf-customer {
  margin-bottom: 1rem; }
  .nf-customer .nf-customer-title {
    font-weight: bold;
    font-size: 0.8125rem;
    margin: 0; }
  .nf-customer p {
    font-size: 0.8125rem;
    margin: 0; }

.nf-form-field {
  position: relative;
  margin-bottom: 2.125rem; }

.nf-form-element {
  width: 100%;
  font-size: 0.9375rem;
  padding: 0.375rem 0.5rem;
  padding-left: 0.75rem;
  height: 2.375rem;
  display: block;
  border: 1px solid #c2c2c2;
  border-radius: 3px;
  -webkit-transition: all ease 200ms;
  transition: all ease 200ms;
  outline: 0;
  background-color: #FFFFFF;
  max-width: 100%; }
  .nf-form-element:focus, .nf-form-element.nf-form-element-has-focus {
    border-color: #2dace3;
    outline: 0;
    font-size: 0.9375rem; }

.nf-form-select .nf-form-element {
  padding: 0;
  border: 0; }

input[type="radio"].nf-form-element {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  margin: 0;
  height: 14px;
  width: 14px;
  -webkit-appearance: none;
  border: 1.4px solid #454545;
  background-color: #FFFFFF;
  border-radius: 50%; }
  input[type="radio"].nf-form-element:before {
    content: '';
    width: 10px;
    height: 10px;
    display: inline-block;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-top: -5px;
    margin-left: -5px;
    background: #217FA8;
    border-radius: 50%;
    -webkit-transition: all ease 100ms;
    transition: all ease 100ms;
    -webkit-transform: scale(0);
            transform: scale(0); }
  input[type="radio"].nf-form-element:hover {
    background: #ABDEF4; }

input[type="radio"]:checked.nf-form-element {
  border: 2px solid #FFFFFF;
  background-color: #217FA8;
  outline: 1.4px solid #454545; }

input[type="radio"]:hover:checked.nf-form-element {
  border: 2px solid #ABDEF4;
  background-color: #217FA8;
  outline: 1.4px solid #454545; }

select.nf-form-element {
  color: #676767;
  padding-left: 0.25rem;
  max-width: 12rem; }

select.nf-form-element option {
  color: #676767; }

.nf-form-field svg,
.nf-form-field-error svg {
  fill: inherit;
  width: 0.875rem;
  height: 0.875rem;
  margin-right: 0.25rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0; }

.nf-form-field-message {
  color: #78b543;
  fill: #78b543;
  position: relative;
  font-size: 0.75rem;
  height: 2rem;
  margin: 0;
  padding-top: 0.25rem;
  margin-top: -2rem;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  line-height: 1.1; }
  .nf-form-field-message svg {
    fill: inherit;
    width: 0.875rem;
    height: 0.875rem;
    margin-right: 0.25rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0; }

.nf-form-field-has-error + .nf-form-field-message {
  display: none; }

.nf-form-element-has-error {
  border-color: #e40046; }

.nf-form-field-error {
  color: #cd174f;
  fill: #cd174f;
  position: absolute;
  top: 100%;
  top: calc(100% + 1px);
  left: 0;
  font-size: 0.75rem;
  padding-top: 0.25rem;
  height: 2rem;
  line-height: 1.2;
  overflow: hidden;
  max-width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start; }

.nf-form-field-label {
  font-size: 0.625rem;
  font-weight: bold;
  margin-bottom: 0.25rem;
  display: block;
  white-space: nowrap; }

.nf-booking-checkout-contact-form,
.nf-booking-checkout-customer-form,
.nf-booking-checkout-payment-form,
.nf-booking-checkout-lead-driver-form,
.nf-booking-checkout-car-details-form {
  width: 100%;
  max-width: 25.25rem; }

.nf-booking-checkout-payment-form {
  max-width: none; }
  .nf-booking-checkout-payment-form .nf-error-msgbox {
    max-width: 25.25rem;
    margin-left: 0; }

[class^="nf-completed-"] {
  font-size: 0.8125rem;
  margin: 0; }

.nf-booking-checkout-input-firstName,
.nf-booking-checkout-input-middleName,
.nf-booking-checkout-input-lastName,
.nf-booking-checkout-input-email,
.nf-booking-checkout-input-telephone {
  width: 100%; }

.nf-checkout-form-contact-button {
  padding-top: 1.25rem; }

.nf-form-intro {
  font-size: 0.8125rem; }
  .nf-form-intro strong {
    color: #78b543;
    font-weight: bold; }

.nf-completed-email-text,
.nf-completed-telephone-text {
  font-style: italic; }

.nf-completed-change-details {
  margin: 0;
  margin-top: 1rem; }

.nf-form-radio-group-label {
  display: block;
  font-size: 0.6875rem;
  font-weight: bold;
  margin-bottom: 0.25rem; }

.nf-form-radio-label {
  display: inline-block;
  position: relative;
  margin-right: 1rem;
  font-size: 0.6875rem;
  font-weight: bold;
  padding-left: 1.25rem;
  color: #454545; }

.nf-form-radio-label:first-of-type {
  padding-left: 0; }

.nf-form-radio-input {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); }

.nf-form-date-dropdown {
  display: -ms-grid;
  display: grid;
  grid-column-gap: 1rem;
  -ms-grid-rows: auto;
  -ms-grid-columns: minmax(0, 4.375rem) 1rem minmax(0, 4.375rem) 1rem minmax(0, 1fr);
      grid-template: "day month year" auto/minmax(0, 4.375rem) minmax(0, 4.375rem) minmax(0, 1fr);
  max-width: 18rem; }
  .nf-form-date-dropdown &gt; .nf-form-field {
    margin-bottom: 0; }
  .nf-form-date-dropdown &gt; .nf-form-field:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    grid-area: day; }
  .nf-form-date-dropdown &gt; .nf-form-field:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    grid-area: month; }
  .nf-form-date-dropdown &gt; .nf-form-field:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
    grid-area: year; }
  .nf-form-date-dropdown .nf-form-element {
    font-size: 0.75rem; }

.nf-form-month-year-dropdown {
  display: -ms-grid;
  display: grid;
  grid-column-gap: 1rem;
  -ms-grid-rows: auto;
  -ms-grid-columns: minmax(0, 1fr) 1rem minmax(0, 1fr);
      grid-template: "month-expiry year-expiry" auto/minmax(0, 1fr) minmax(0, 1fr); }
  .nf-form-month-year-dropdown &gt; .nf-form-field {
    margin-bottom: 0; }
  .nf-form-month-year-dropdown &gt; .nf-form-field:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    grid-area: month-expiry; }
  .nf-form-month-year-dropdown &gt; .nf-form-field:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    grid-area: year-expiry; }

.nf-form-date-dropdown-select {
  width: 100%; }

.nf-checkout-form-address-picker {
  display: -ms-grid;
  display: grid;
  grid-column-gap: 1rem;
  -ms-grid-rows: auto;
  -ms-grid-columns: minmax(0, 1fr) 1rem minmax(0, 1fr);
      grid-template: "postcode find-address" auto/minmax(0, 1fr) minmax(0, 1fr); }
  .nf-checkout-form-address-picker &gt; .nf-form-field:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    grid-area: postcode; }
    .nf-checkout-form-address-picker &gt; .nf-form-field:nth-child(1) .nf-form-field-error {
      overflow: visible;
      width: 200%;
      max-width: none; }
  .nf-checkout-form-address-picker &gt; .nf-checkout-form-address-button {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    grid-area: find-address; }

.nf-checkout-form-address-manual {
  margin-bottom: 2rem; }

.nf-checkout-form-address-button {
  padding-top: 1.1875rem;
  margin-bottom: 1rem;
  min-width: 0; }
  .nf-checkout-form-address-button button {
    font-size: 0.75rem;
    white-space: nowrap; }

.nf-button-link {
  color: #217FA8;
  text-decoration: underline;
  display: inline-block;
  background: none;
  border: 0;
  padding: 0;
  font-size: 0.75rem; }
  .nf-button-link:hover {
    color: #1A6788; }
  .nf-button-link:active {
    color: #283E5A; }
  .nf-button-link.nf-button-link:focus {
    outline: 0;
    background-color: transparent; }
  .nf-button-link.nf-button-link:hover {
    background-color: transparent; }

.nf-booking-checkout-customer-form .nf-form-redress-link {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-top: 1px solid #EEEEEE;
  padding-top: 0.5rem;
  text-decoration: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-tap-highlight-color: transparent;
  margin-bottom: 1rem; }

.nf-booking-checkout-customer-form &gt; .nf-form-field-error {
  position: static;
  margin: 2rem 0;
  white-space: initial;
  line-height: 1.2; }

.nf-booking-checkout-customer-form .nf-form-redress-info {
  font-size: 0.75rem;
  line-height: 1.4; }

.nf-booking-checkout-disclaimer {
  font-size: 0.875rem; }

.nf-booking-checkout-disclaimer--header,
.nf-booking-checkout-disclaimer--text {
  margin: 0; }

.nf-booking-checkout-email-signup {
  background: #eaeaea;
  padding: 0.375rem;
  margin-top: 1rem; }

.nf-booking-checkout-lead-driver-form select {
  max-width: none; }

.nf-checkout-cards {
  height: 2rem;
  margin-bottom: 1.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.nf-checkout-card-item {
  width: 2.25rem;
  margin-right: 0.5rem;
  -webkit-filter: grayscale(1) opacity(0.5);
          filter: grayscale(1) opacity(0.5);
  -webkit-transition: all ease 200ms;
  transition: all ease 200ms; }
  .nf-checkout-card-item.nf-checkout-card-item--active {
    -webkit-filter: grayscale(0) opacity(1);
            filter: grayscale(0) opacity(1); }
  .nf-checkout-card-item svg {
    display: block; }

.nf-booking-checkout-payment-form--details {
  display: -ms-grid;
  display: grid;
  grid-column-gap: 1rem;
  -ms-grid-rows: auto auto auto auto auto auto auto;
  -ms-grid-columns: 1fr 1rem 1fr;
      grid-template: "card-name  card-name" auto "card-number card-number" auto "expiry expiry" auto "security-code ." auto "address address" auto "marketing marketing" auto "pay-now pay-now" auto / 1fr 1fr; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-area: card-name; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(2) {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-area: card-number; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-area: expiry; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(4) {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
    grid-area: security-code; }
    .nf-booking-checkout-payment-form--details &gt; div:nth-child(4) .nf-form-field-error {
      overflow: visible;
      white-space: nowrap; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(5) {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-area: address; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(6) {
    -ms-grid-row: 6;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-area: marketing;
    min-width: 0; }
  .nf-booking-checkout-payment-form--details &gt; button {
    -ms-grid-row: 7;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-area: pay-now; }

.nf-address-form {
  display: -ms-grid;
  display: grid;
  grid-column-gap: 2rem;
  -ms-grid-rows: auto auto auto auto auto;
  -ms-grid-columns: 1fr 2rem 1fr;
      grid-template: "address-1 address-1" auto "address-2 address-2" auto "city city" auto "county country" auto "postcode-full find-another" auto / 1fr 1fr; }
  .nf-address-form &gt; div:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-area: address-1; }
  .nf-address-form &gt; div:nth-child(2) {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-area: address-2; }
  .nf-address-form &gt; div:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-area: city; }
  .nf-address-form &gt; div:nth-child(4) {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
    grid-area: county; }
  .nf-address-form &gt; div:nth-child(5) {
    -ms-grid-row: 4;
    -ms-grid-column: 3;
    grid-area: country; }
  .nf-address-form &gt; div:nth-child(6) {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
    grid-area: postcode-full; }
  .nf-address-form &gt; div:nth-child(7) {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
    grid-area: find-another; }
  .nf-address-form .nf-address-form-button {
    padding-top: 1.125rem; }

.nf-checkout-disclaimer {
  margin-bottom: 1.5rem; }
  .nf-checkout-disclaimer p {
    font-size: 0.6875rem;
    margin: 0;
    line-height: 1.3; }
  .nf-checkout-disclaimer small {
    font-size: 0.625rem; }
    .nf-checkout-disclaimer small a {
      font-size: inherit; }

.nf-checkout-marketing-opt-in,
.nf-checkout-disclaimer--checkbox {
  background: #EEEEEE;
  padding: 0.5rem;
  margin-top: 1rem; }
  .nf-checkout-marketing-opt-in input,
  .nf-checkout-disclaimer--checkbox input {
    visibility: hidden;
    opacity: 0;
    z-index: -1;
    position: absolute;
    width: 0; }
  .nf-checkout-marketing-opt-in label,
  .nf-checkout-disclaimer--checkbox label {
    position: relative;
    font-weight: normal;
    white-space: normal;
    line-height: 1.1;
    margin-bottom: 0;
    padding-left: 1.5rem;
    line-height: 1.4; }
    .nf-checkout-marketing-opt-in label a, .nf-checkout-marketing-opt-in label button,
    .nf-checkout-disclaimer--checkbox label a,
    .nf-checkout-disclaimer--checkbox label button {
      font-size: inherit; }
    .nf-checkout-marketing-opt-in label:before,
    .nf-checkout-disclaimer--checkbox label:before {
      content: '';
      display: inline-block;
      height: 0.9375rem;
      width: 0.9375rem;
      text-align: center;
      border: 1px solid #CFCFCF;
      background: #FFFFFF;
      font-weight: bold;
      position: absolute;
      left: 0;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%); }
  .nf-checkout-marketing-opt-in input:checked + label:before,
  .nf-checkout-disclaimer--checkbox input:checked + label:before {
    content: '\2713';
    color: #2dace3; }

.nf-checkout-disclaimer--checkbox {
  background: rgba(248, 231, 30, 0.2); }

.nf-booking-checkout-validation-failure {
  background: #FFFFFF;
  padding: 2rem;
  font-size: 0.875rem; }

.nf-booking-checkout-validation-failure-title {
  color: #cd174f;
  fill: #cd174f;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
  border-bottom: 1px solid #EEEEEE;
  padding-bottom: 0.75rem;
  font-size: 1.25rem;
  line-height: 1.2; }
  .nf-booking-checkout-validation-failure-title svg {
    fill: inherit;
    min-width: 1rem;
    min-height: 1rem;
    margin-right: 0.75rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0; }

.nf-booking-checkout-validation-failure-info {
  margin-bottom: 2rem; }

.nf-booking-checkout-validation-failure-button {
  text-align: right; }

@media only screen and (min-width: 601px) {
  .nf-booking-checkout-payment-form--details {
    grid-column-gap: 1rem;
    -ms-grid-rows: auto auto auto auto auto auto;
    -ms-grid-columns: minmax(0, 6.5rem) 1rem minmax(0, 6.5rem) 1rem minmax(0, 6.5rem);
        grid-template: "card-name card-name card-name" auto "card-number card-number card-number" auto "expiry expiry security-code" auto "address address address" auto "marketing marketing marketing" auto "pay-now pay-now pay-now" auto/minmax(0, 6.5rem) minmax(0, 6.5rem) minmax(0, 6.5rem); }
  .nf-checkout-form-address-picker {
    grid-column-gap: 1rem;
    -ms-grid-rows: auto;
    -ms-grid-columns: 6.5rem 1rem 6.5rem 1rem auto;
        grid-template: "postcode find-address ." auto /  6.5rem 6.5rem auto; }
  .nf-form-date-dropdown {
    grid-column-gap: 1rem;
    -ms-grid-rows: auto;
    -ms-grid-columns: minmax(4.375rem, 1fr) 1rem minmax(4.375rem, 1fr) 1rem minmax(4.375rem, 1fr);
        grid-template: "day month year" auto/minmax(4.375rem, 1fr) minmax(4.375rem, 1fr) minmax(4.375rem, 1fr); }
  .nf-address-form {
    display: -ms-grid;
    display: grid;
    grid-column-gap: 2rem;
    -ms-grid-rows: auto auto auto auto auto;
    -ms-grid-columns: 1fr 2rem 1fr;
        grid-template: "address-1 address-1" auto "address-2 address-2" auto "city county" auto "country postcode-full" auto "find-another ." auto /  1fr 1fr; }
    .nf-address-form .nf-address-form-button {
      padding-top: 0; }
  .nf-form-date-dropdown &gt; .nf-form-field:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .nf-form-date-dropdown &gt; .nf-form-field:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .nf-form-date-dropdown &gt; .nf-form-field:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5; }
  .nf-checkout-form-address-picker &gt; .nf-form-field:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .nf-checkout-form-address-picker &gt; .nf-checkout-form-address-button {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(2) {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 5; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(5) {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(6) {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5; }
  .nf-booking-checkout-payment-form--details &gt; button {
    -ms-grid-row: 6;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5; }
  .nf-address-form &gt; div:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; }
  .nf-address-form &gt; div:nth-child(2) {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; }
  .nf-address-form &gt; div:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1; }
  .nf-address-form &gt; div:nth-child(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 3; }
  .nf-address-form &gt; div:nth-child(5) {
    -ms-grid-row: 4;
    -ms-grid-column: 1; }
  .nf-address-form &gt; div:nth-child(6) {
    -ms-grid-row: 4;
    -ms-grid-column: 3; }
  .nf-address-form &gt; div:nth-child(7) {
    -ms-grid-row: 5;
    -ms-grid-column: 1; } }

@media only screen and (min-width: 993px) {
  .nf-booking-checkout-payment-form--details {
    grid-column-gap: 1rem;
    -ms-grid-rows: auto auto auto auto auto auto;
    -ms-grid-columns: 6.5rem 1rem 6.5rem 1rem minmax(0, 2.75rem) 1rem 6.5rem 1rem 1fr;
        grid-template: "card-name card-name card-name card-name ." auto "card-number card-number card-number card-number ." auto "expiry expiry . security-code ." auto "address address address address ." auto "marketing marketing marketing marketing marketing" auto "pay-now pay-now . . ." auto/6.5rem 6.5rem minmax(0, 2.75rem) 6.5rem 1fr; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 7; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(2) {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 7; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 7; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(5) {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
    -ms-grid-column-span: 7; }
  .nf-booking-checkout-payment-form--details &gt; div:nth-child(6) {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
    -ms-grid-column-span: 9; }
  .nf-booking-checkout-payment-form--details &gt; button {
    -ms-grid-row: 6;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; } }

@media only screen and (min-width: 1381px) {
  .nf-booking-checkout-customer-form {
    display: -ms-grid;
    display: grid;
    grid-column-gap: 2rem;
    -ms-grid-rows: auto auto auto auto;
    -ms-grid-columns: 1fr 2rem 1fr 2rem 1fr;
        grid-template: "title title title" auto "first-name middle-name last-name" auto "date-of-birth duplicate-name-error duplicate-name-error" auto "tsa-redress . customer-continue" auto / 1fr 1fr 1fr;
    width: auto;
    max-width: none; }
    .nf-booking-checkout-customer-form &gt; .nf-form-field:nth-child(1) {
      grid-area: title; }
    .nf-booking-checkout-customer-form &gt; .nf-form-field:nth-child(2) {
      grid-area: first-name; }
    .nf-booking-checkout-customer-form &gt; .nf-form-field:nth-child(3) {
      grid-area: middle-name; }
    .nf-booking-checkout-customer-form &gt; .nf-form-field:nth-child(4) {
      grid-area: last-name; }
    .nf-booking-checkout-customer-form &gt; .nf-form-field:nth-child(4) ~ .nf-form-field {
      grid-area: date-of-birth; }
    .nf-booking-checkout-customer-form &gt; .nf-form-field-error {
      grid-area: duplicate-name-error; }
    .nf-booking-checkout-customer-form &gt; .nf-form-redress {
      grid-area: tsa-redress; }
    .nf-booking-checkout-customer-form &gt; button {
      grid-area: customer-continue; }
  .nf-booking-checkout-contact-form {
    display: -ms-grid;
    display: grid;
    grid-column-gap: 2rem;
    -ms-grid-rows: auto auto auto;
    -ms-grid-columns: 1fr 2rem 1fr 2rem 1fr;
        grid-template: "email phone continue" auto  "email-msge phone-msge ." auto  "marketingoptin marketingoptin marketingoptin" auto /  1fr 1fr 1fr;
    width: auto;
    max-width: none; }
    .nf-booking-checkout-contact-form &gt; .nf-form-field:nth-of-type(1) {
      grid-area: email; }
    .nf-booking-checkout-contact-form &gt; .nf-form-field:nth-of-type(2) {
      grid-area: phone; }
    .nf-booking-checkout-contact-form &gt; .nf-form-field-message:nth-of-type(1) {
      grid-area: email-msge; }
    .nf-booking-checkout-contact-form &gt; .nf-form-field-message:nth-of-type(2) {
      grid-area: phone-msge; }
    .nf-booking-checkout-contact-form &gt; .nf-checkout-form-contact-button {
      grid-area: continue; }
    .nf-booking-checkout-contact-form &gt; .nf-checkout-marketing-opt-in {
      grid-area: marketingoptin;
      margin-bottom: 0; }
  .nf-form-date-dropdown {
    grid-column-gap: 1rem;
    -ms-grid-rows: auto;
    -ms-grid-columns: minmax(0, 4.5rem) 1rem minmax(0, 4.5rem) 1rem minmax(0, 1fr);
        grid-template: "day month year" auto/minmax(0, 4.5rem) minmax(0, 4.5rem) minmax(0, 1fr); }
  .nf-booking-checkout-lead-driver-form {
    display: -ms-grid;
    display: grid;
    grid-column-gap: 1rem;
    -ms-grid-rows: auto auto;
    -ms-grid-columns: 12rem 1rem 1fr 1rem 14.5rem;
        grid-template: "lead-passenger . ." auto ". . confirm" auto /  12rem 1fr 14.5rem;
    max-width: none; }
    .nf-booking-checkout-lead-driver-form &gt; div:nth-child(1) {
      grid-area: lead-passenger; }
    .nf-booking-checkout-lead-driver-form &gt; div:nth-child(2) {
      grid-area: confirm; }
  .nf-booking-checkout-car-details-form {
    display: -ms-grid;
    display: grid;
    grid-column-gap: 2rem;
    -ms-grid-rows: auto auto auto;
    -ms-grid-columns: 1fr 2rem 1fr 2rem 1fr;
        grid-template: "car-make car-model ." auto "car-colour car-reg ." auto ". . car-proceed" auto / 1fr 1fr 1fr;
    width: auto;
    max-width: none; }
    .nf-booking-checkout-car-details-form &gt; .nf-form-field:nth-of-type(1) {
      grid-area: car-make; }
    .nf-booking-checkout-car-details-form &gt; .nf-form-field:nth-of-type(2) {
      grid-area: car-model; }
    .nf-booking-checkout-car-details-form &gt; .nf-form-field:nth-of-type(3) {
      grid-area: car-colour; }
    .nf-booking-checkout-car-details-form &gt; .nf-form-field:nth-of-type(4) {
      grid-area: car-reg; }
    .nf-booking-checkout-car-details-form &gt; .nf-booking-checkout-car-details-button {
      grid-area: car-proceed; }
  .nf-booking-checkout-validation-failure-button button {
    display: inline-block;
    width: auto; }
  .nf-form-date-dropdown &gt; .nf-form-field:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .nf-form-date-dropdown &gt; .nf-form-field:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .nf-form-date-dropdown &gt; .nf-form-field:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5; } }

@media only screen and (min-width: 1381px) {
  .nf-booking-checkout-car-details-form &gt; .nf-form-field:nth-of-type(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .nf-booking-checkout-car-details-form &gt; .nf-form-field:nth-of-type(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .nf-booking-checkout-car-details-form &gt; .nf-form-field:nth-of-type(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1; }
  .nf-booking-checkout-car-details-form &gt; .nf-form-field:nth-of-type(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 3; }
  .nf-booking-checkout-car-details-form &gt; .nf-booking-checkout-car-details-button {
    -ms-grid-row: 3;
    -ms-grid-column: 5; } }

@media only screen and (min-width: 1381px) {
  .nf-booking-checkout-lead-driver-form &gt; div:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .nf-booking-checkout-lead-driver-form &gt; div:nth-child(2) {
    -ms-grid-row: 2;
    -ms-grid-column: 5; } }

@media only screen and (min-width: 1381px) {
  .nf-booking-checkout-contact-form &gt; .nf-form-field:nth-of-type(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .nf-booking-checkout-contact-form &gt; .nf-form-field:nth-of-type(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .nf-booking-checkout-contact-form &gt; .nf-form-field-message:nth-of-type(1) {
    -ms-grid-row: 2;
    -ms-grid-column: 1; }
  .nf-booking-checkout-contact-form &gt; .nf-form-field-message:nth-of-type(2) {
    -ms-grid-row: 2;
    -ms-grid-column: 3; }
  .nf-booking-checkout-contact-form &gt; .nf-checkout-form-contact-button {
    -ms-grid-row: 1;
    -ms-grid-column: 5; }
  .nf-booking-checkout-contact-form &gt; .nf-checkout-marketing-opt-in {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5; } }

@media only screen and (min-width: 1381px) {
  .nf-booking-checkout-customer-form &gt; .nf-form-field:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5; }
  .nf-booking-checkout-customer-form &gt; .nf-form-field:nth-child(2) {
    -ms-grid-row: 2;
    -ms-grid-column: 1; }
  .nf-booking-checkout-customer-form &gt; .nf-form-field:nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 3; }
  .nf-booking-checkout-customer-form &gt; .nf-form-field:nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 5; }
  .nf-booking-checkout-customer-form &gt; .nf-form-field:nth-child(4) ~ .nf-form-field {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
  .nf-booking-checkout-customer-form &gt; .nf-form-field-error {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3; }
  .nf-booking-checkout-customer-form &gt; .nf-form-redress {
    -ms-grid-row: 4;
    -ms-grid-column: 1; }
  .nf-booking-checkout-customer-form &gt; button {
    -ms-grid-row: 4;
    -ms-grid-column: 5; } }

.nf-booking-checkout .nf-important-info h2 {
  color: #2dace3;
  font-size: 1.6rem;
  text-align: left;
  margin: 1rem 0; }

.nf-booking-checkout .nf-important-info h3 {
  color: #454545;
  font-size: 1.4rem;
  text-align: left;
  margin: 1.2rem 0; }

.nf-booking-checkout .nf-important-info h4 {
  color: #2dace3;
  font-size: 1.3rem;
  text-align: left;
  margin: 1.2rem 0 0.3rem 0; }

.nf-booking-checkout .nf-important-info p {
  color: #676767;
  font-size: 1rem;
  margin: 0 0 1rem 0; }

.nf-booking-checkout .nf-important-info .nf-important-info-flights {
  margin: 0 0 3rem 0; }
  .nf-booking-checkout .nf-important-info .nf-important-info-flights h2 {
    margin-top: 0; }

.nf-booking-checkout .nf-important-info .nf-important-info-car {
  margin: 0 0 3rem 0; }

.nf-booking-checkout .nf-important-info .nf-important-info-hotel {
  margin: 0 0 3rem 0; }

.nf-hotel-info-modal {
  font-size: 0.875rem;
  color: #676767; }

ul.nf-basket-hotel-info li {
  list-style-type: disc;
  list-style-position: inside;
  margin-bottom: 1rem; }

.nf-hotel-summary-info,
.nf-car-summary-info {
  margin-top: 0.75rem; }
  .nf-hotel-summary-info .nf-button-link,
  .nf-car-summary-info .nf-button-link {
    color: #217FA8;
    font-size: 14px;
    font-weight: 400;
    -webkit-text-decoration-line: underline;
            text-decoration-line: underline; }

.nf-car-rental-conditions .car-info {
  overflow: hidden;
  margin: 0;
  padding: 0 0 2em 0; }
  .nf-car-rental-conditions .car-info h2.car-type {
    color: #2dace3;
    font-size: 1.6rem;
    text-align: left;
    margin: 1rem 2rem 1rem 0;
    display: block;
    float: left; }
  .nf-car-rental-conditions .car-info h3.car-class {
    color: #454545;
    font-size: 1.4rem;
    text-align: left;
    margin: 1.2rem 0;
    display: block;
    float: left; }
  .nf-car-rental-conditions .car-info .car-image {
    clear: both;
    display: block;
    float: left;
    width: 35%;
    margin: 0;
    padding: 0; }
    .nf-car-rental-conditions .car-info .car-image img {
      max-width: 100%; }
  .nf-car-rental-conditions .car-info .car-facts {
    display: block;
    float: right;
    width: 62%;
    margin: 0;
    padding: 0; }
    .nf-car-rental-conditions .car-info .car-facts li {
      display: inline-block;
      text-align: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      width: 4.5rem;
      margin: 0 1rem 0 0; }
      .nf-car-rental-conditions .car-info .car-facts li svg {
        color: #2dace3;
        fill: currentColor;
        width: 2.5rem;
        height: 3rem;
        display: block;
        margin: 0 auto; }
      .nf-car-rental-conditions .car-info .car-facts li span {
        font-size: 0.9rem; }

.nf-car-rental-conditions .depot-info-wrapper {
  clear: both; }
  .nf-car-rental-conditions .depot-info-wrapper .depot-image img {
    border: 0; }
  .nf-car-rental-conditions .depot-info-wrapper .depot-info-container {
    overflow: hidden;
    padding: 0 0 1rem 0; }
    .nf-car-rental-conditions .depot-info-wrapper .depot-info-container .depot-information {
      display: inline-block;
      max-width: 49%;
      margin: 0; }
      .nf-car-rental-conditions .depot-info-wrapper .depot-info-container .depot-information p {
        font-size: 0.8rem;
        margin: 0;
        padding: 0; }
      .nf-car-rental-conditions .depot-info-wrapper .depot-info-container .depot-information p.depot-address {
        padding: 1rem 0; }
      .nf-car-rental-conditions .depot-info-wrapper .depot-info-container .depot-information ul li {
        font-size: 0.8rem;
        margin: 0;
        padding: 0 0 0.1rem 0; }
      .nf-car-rental-conditions .depot-info-wrapper .depot-info-container .depot-information ul .depot-open-day {
        display: inline-block;
        width: 2.5rem; }
      .nf-car-rental-conditions .depot-info-wrapper .depot-info-container .depot-information ul .depot-open-time {
        display: inline-block;
        margin-right: 1.5rem; }
    .nf-car-rental-conditions .depot-info-wrapper .depot-info-container .depot-information:first-child {
      max-width: 48%;
      margin-right: 2%; }

.fare-basis-code {
  display: none; }

.nf-rh-branded-fares {
  padding: 24px;
  margin: 24px 0;
  border-radius: 4px;
  background: #FFFFFF; }
  .nf-rh-branded-fares .nf-rh-branded-fares-filter-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: end;
        -ms-flex-pack: end;
            justify-content: end; }
    .nf-rh-branded-fares .nf-rh-branded-fares-filter-container .nf-rh-branded-fares-filter .nf-rh-branded-fare-chip {
      display: inline-block;
      padding: 4px 10px;
      border-radius: 20px;
      border: 2px solid #217FA8;
      color: #217FA8;
      font-family: var(--Font-Family-Body, Roboto);
      font-size: 12px;
      font-weight: 400;
      margin: 0px;
      margin-right: 5px;
      cursor: pointer;
      margin-bottom: 4px; }
      .nf-rh-branded-fares .nf-rh-branded-fares-filter-container .nf-rh-branded-fares-filter .nf-rh-branded-fare-chip.selected {
        background: #217FA8;
        color: #FFFFFF; }
  .nf-rh-branded-fares .m--single-card {
    margin-top: 14px; }
  .nf-rh-branded-fares .fare-unpopular {
    margin-top: 42px; }
  .nf-rh-branded-fares .less-gap {
    margin-top: 16px; }
  .nf-rh-branded-fares .most-popular-fare-highlight {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 4px 16px;
    border-radius: 8px 8px 0px 0px;
    background: #C0FF02;
    margin: auto;
    margin-top: 16px; }
    .nf-rh-branded-fares .most-popular-fare-highlight p {
      margin: 0;
      color: #000000;
      text-align: center;
      font-size: 12px;
      font-weight: 800; }
  .nf-rh-branded-fares h2 {
    font-size: 22px;
    font-style: normal;
    font-weight: 400; }
  .nf-rh-branded-fares h3 {
    font-size: 0.9375rem;
    color: #2dace3;
    font-weight: bold;
    margin-bottom: 1.25rem;
    text-align: center; }
    .nf-rh-branded-fares h3 span {
      color: #676767;
      font-weight: normal; }
  .nf-rh-branded-fares .react-toggle-wrapper {
    margin-top: 10px;
    padding: 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content; }
    .nf-rh-branded-fares .react-toggle-wrapper .react-toggle {
      margin-left: 10px; }
    .nf-rh-branded-fares .react-toggle-wrapper .react-toggle-track {
      width: 1.6rem;
      height: 0.8rem;
      margin: 0 0;
      padding: 0; }
    .nf-rh-branded-fares .react-toggle-wrapper .react-toggle-thumb {
      width: 0.7rem;
      height: 0.7rem;
      top: 48%;
      left: -8%; }
    .nf-rh-branded-fares .react-toggle-wrapper .react-toggle--checked .react-toggle-thumb {
      left: 0%; }

.nf-rh-branded-fare-slide {
  min-height: 100%;
  margin-top: 16px; }
  .nf-rh-branded-fare-slide.m--single-card {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .nf-rh-branded-fare-slide:first-child {
    margin-left: 0; }
  .nf-rh-branded-fare-slide:last-child {
    margin-right: 0; }
  .nf-rh-branded-fare-slide .nf-rh-branded-fare-details--utas,
  .nf-rh-branded-fare-slide .nf-rh-branded-fare-details--disclaimer {
    width: 220px; }

.nf-rh-branded-fare {
  padding: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-right: 16px;
  border-radius: 4px;
  border: 1px solid #CFCFCF;
  border-radius: var(--border-radius, 4px);
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .nf-rh-branded-fare.m--selected {
    border-radius: var(--border-radius, 4px);
    border: 2px solid #283E5A; }

.nf-rh-flight-details--backlink {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }
  .nf-rh-flight-details--backlink span {
    margin-left: 8px;
    font-size: 14px;
    font-weight: 600; }

.nf-rh-branded-fare-leg {
  position: absolute;
  right: 0;
  border-radius: 4px;
  background: var(--Greyscale-greyscale-100, #F1F1F1);
  padding: 4px 10px;
  color: #283E5A;
  font-size: 12px;
  font-weight: 600; }
  .nf-rh-branded-fare-leg.most-popular {
    background: #2dace3; }

.nf-rh-branded-fare-details--wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.nf-rh-branded-fare-details {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%; }
  .nf-rh-branded-fare-details + .nf-rh-branded-fare-details {
    margin-top: 3rem; }

.nf-rh-branded-fare-details--header h4 {
  font-size: 16px;
  font-weight: bold;
  color: #283E5A;
  text-align: center;
  font-weight: 800; }

.nf-rh-branded-fare-details--header h5 {
  font-size: 0.8125rem;
  color: #676767;
  line-height: 1.7; }

.nf-rh-branded-fare-details--airline-info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  margin: 16px 0; }
  .nf-rh-branded-fare-details--airline-info img {
    width: 43.629px;
    height: 30px;
    margin-right: 10px; }

.nf-rh-branded-fare-details--content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-top: 48px; }
  .nf-rh-branded-fare-details--content h3 {
    color: var(--Primary-primary-700, #283E5A);
    font-family: var(--Font-Family-Body, Roboto);
    font-size: 24px;
    font-style: normal;
    font-weight: 800;
    line-height: 30px;
    margin-bottom: 16px; }
  .nf-rh-branded-fare-details--content .uta-description {
    white-space: pre-wrap;
    padding: 0.8rem;
    line-height: 1rem;
    font-size: 0.8rem;
    font-weight: normal;
    font-style: italic;
    color: #4a4a4a;
    border-top: 1px solid #979797;
    margin: 0.5rem 0 0.5rem -2rem; }

.nf-rh-branded-fare-details-footer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: 24px; }
  .nf-rh-branded-fare-details-footer h3 {
    color: var(--Greyscale-greyscale-700, #222);
    text-align: right;
    font-size: 18px;
    font-style: normal;
    font-weight: 800;
    line-height: 27px; }
  .nf-rh-branded-fare-details-footer p {
    font-size: 14px;
    font-weight: 400;
    line-height: 21px;
    text-align: right;
    text-underline-position: from-font;
    -webkit-text-decoration-skip-ink: none;
            text-decoration-skip-ink: none;
    margin: 0; }

.nf-rh-branded-fare-details--upas {
  position: relative;
  margin-bottom: 1.5rem; }
  .nf-rh-branded-fare-details--upas .m--hidden {
    display: none; }
  .nf-rh-branded-fare-details--upas li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 1.5rem;
    border-bottom: solid 0.1rem #EEEEEE; }
    .nf-rh-branded-fare-details--upas li &gt; div {
      width: 100%;
      min-height: 180px;
      margin-bottom: 1.5rem;
      -webkit-flex-shrink: 0;
          -ms-flex-negative: 0;
              flex-shrink: 0; }
  .nf-rh-branded-fare-details--upas img {
    display: block;
    width: 100%;
    position: relative;
    z-index: 1; }
  .nf-rh-branded-fare-details--upas strong {
    display: block; }
  .nf-rh-branded-fare-details--upas h4 {
    color: #FFFFFF;
    background: #cccccc;
    border-radius: 16px;
    font-weight: bold;
    line-height: 1.5;
    padding: 0.1rem 0.5rem;
    display: inline;
    font-size: 0.875rem;
    margin-bottom: 0.5rem; }

.nf-rh-branded-fare-details--tabs {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  overflow-x: auto;
  margin: 0 0 1rem 0; }
  .nf-rh-branded-fare-details--tabs li {
    font-size: 0.875rem;
    color: #FFFFFF;
    background: #2dace3;
    padding: 0.5rem 1rem;
    margin-right: 0.1rem;
    margin-bottom: 0.1rem;
    cursor: pointer;
    font-weight: bold;
    white-space: nowrap; }
    .nf-rh-branded-fare-details--tabs li:first-of-type {
      border-top-left-radius: 6px;
      border-bottom-left-radius: 6px; }
    .nf-rh-branded-fare-details--tabs li:last-of-type {
      border-top-right-radius: 6px;
      border-bottom-right-radius: 6px; }
    .nf-rh-branded-fare-details--tabs li.m--selected, .nf-rh-branded-fare-details--tabs li.m--selected:hover, .nf-rh-branded-fare-details--tabs li.m--selected:focus {
      color: #2dace3;
      background: #cbeaf8; }
    .nf-rh-branded-fare-details--tabs li:hover, .nf-rh-branded-fare-details--tabs li:focus {
      background: #1da1da; }

.nf-rh-branded-fare-details--utas,
.nf-rh-branded-fare-details--attributes {
  width: auto;
  color: #979797;
  margin: 0;
  padding-bottom: 1rem; }
  .nf-rh-branded-fare-details--utas .nf-rh-branded-fare-details--attribute-description,
  .nf-rh-branded-fare-details--attributes .nf-rh-branded-fare-details--attribute-description {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .nf-rh-branded-fare-details--utas .nf-rh-branded-fare-details--attribute-description h5,
    .nf-rh-branded-fare-details--attributes .nf-rh-branded-fare-details--attribute-description h5 {
      color: #676767;
      font-size: 12px;
      font-weight: 400;
      margin-left: 25px;
      margin-top: 3px;
      min-height: 36px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
    .nf-rh-branded-fare-details--utas .nf-rh-branded-fare-details--attribute-description span,
    .nf-rh-branded-fare-details--attributes .nf-rh-branded-fare-details--attribute-description span {
      color: #283E5A;
      text-align: right;
      font-size: 12px;
      font-weight: 800;
      min-height: 36px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
  .nf-rh-branded-fare-details--utas .uta-red svg,
  .nf-rh-branded-fare-details--utas .uta-red span,
  .nf-rh-branded-fare-details--attributes .uta-red svg,
  .nf-rh-branded-fare-details--attributes .uta-red span {
    fill: #1A6788; }
  .nf-rh-branded-fare-details--utas .uta-grey svg,
  .nf-rh-branded-fare-details--utas .uta-grey span,
  .nf-rh-branded-fare-details--attributes .uta-grey svg,
  .nf-rh-branded-fare-details--attributes .uta-grey span {
    fill: #1A6788; }
  .nf-rh-branded-fare-details--utas svg,
  .nf-rh-branded-fare-details--attributes svg {
    position: absolute;
    left: 0;
    top: 0;
    width: 1.25rem !important;
    height: 1.25rem !important;
    fill: #579410;
    margin: 7px;
    height: -webkit-fill-available; }
  .nf-rh-branded-fare-details--utas li:first-child,
  .nf-rh-branded-fare-details--attributes li:first-child {
    border: var(--item-number, 1px) solid #1A6788;
    background: #EAF7FC; }
  .nf-rh-branded-fare-details--utas li,
  .nf-rh-branded-fare-details--attributes li {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-left: 2.25rem;
    padding: 0 8px;
    border-radius: 4px; }
    .nf-rh-branded-fare-details--utas li a,
    .nf-rh-branded-fare-details--attributes li a {
      font-size: 0.825rem;
      text-decoration: underline; }
  .nf-rh-branded-fare-details--utas li + li,
  .nf-rh-branded-fare-details--attributes li + li {
    margin-top: 0.5rem; }

.nf-rh-branded-fare-details--disclaimer {
  font-size: 0.75rem;
  min-height: 2.2rem; }

.nf-rh-branded-fare-details--footer {
  font-size: 0.875rem; }

.nf-rh-branded-fare-details--legtoggle {
  margin-bottom: 1.5rem; }
  .nf-rh-branded-fare-details--legtoggle input {
    display: none; }
  .nf-rh-branded-fare-details--legtoggle label {
    display: inline-block;
    font-size: 1rem;
    text-align: center;
    background: #FFFFFF;
    color: #CFCFCF;
    position: relative;
    -webkit-transition: 0.25s background ease;
    transition: 0.25s background ease;
    cursor: pointer;
    padding: 10px 10px;
    font-weight: bold; }
    .nf-rh-branded-fare-details--legtoggle label.m--selected {
      background: #FFFFFF;
      color: #2dace3; }
      .nf-rh-branded-fare-details--legtoggle label.m--selected::after {
        background: #2dace3; }
    .nf-rh-branded-fare-details--legtoggle label::after {
      content: "";
      height: 2px;
      width: 100%;
      position: absolute;
      display: block;
      background: #CFCFCF;
      bottom: 0;
      left: 0; }
    .nf-rh-branded-fare-details--legtoggle label:hover {
      color: #2dace3; }
      .nf-rh-branded-fare-details--legtoggle label:hover::after {
        background: #2dace3; }

.nf-rh-branded-fare-price {
  margin: 0;
  font-size: 24px;
  font-weight: 800;
  text-align: center;
  color: var(--Greyscale-greyscale-700, #222);
  position: relative; }
  .nf-rh-branded-fare-price span {
    color: var(--Greyscale-greyscale-700, #222);
    font-size: 14px;
    font-weight: 800; }
  .nf-rh-branded-fare-price .nf-rh-branded-fare-info {
    position: absolute;
    top: 0;
    right: 0; }

.nf-flight-details-fare-info-popup-items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .nf-flight-details-fare-info-popup-items .nf-flight-details-fare-info-popup-item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    border-bottom: 1px solid #F1F1F1;
    padding: 5px 0; }
    .nf-flight-details-fare-info-popup-items .nf-flight-details-fare-info-popup-item :last-child {
      border-bottom: none; }
    .nf-flight-details-fare-info-popup-items .nf-flight-details-fare-info-popup-item p {
      margin: 0;
      color: var(--Greyscale-greyscale-600, #454545);
      font-size: 14px;
      font-style: normal;
      font-weight: 400;
      line-height: 21px; }

.nf-rh-branded-fare--cta button {
  width: 100%; }

.nf-rh-branded-fare--cta.m--selected button {
  background: #217FA8;
  color: #FFFFFF;
  border-color: #217FA8; }

.nf-rh-branded-fare--cta.m--selected button:hover {
  background: #217FA8; }

.nf-rh-branded-fare--cta.m--selected button:active {
  background: #217FA8; }

.nf-rh-branded-fare--cta.m--selected button:focus {
  background: #217FA8; }

.nf-branded-fare-add-bag {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding-top: 1rem; }

.nf-branded-fare-add-bag--info {
  line-height: 1.3;
  font-size: 15px;
  margin-bottom: 1rem; }
  .nf-branded-fare-add-bag--info strong {
    display: block; }

/* Baggage Upsell Modal */
.nf-flight-baggage-upsell {
  width: 100%;
  max-width: 236px;
  text-align: center; }
  .nf-flight-baggage-upsell .nf-flight-baggage-upsell--svgimage {
    margin: 0 auto;
    display: block;
    margin-top: -1rem; }
  .nf-flight-baggage-upsell .nf-flight-baggage-upsell--title {
    font-weight: bold;
    margin: 1rem 0rem;
    background-color: #FCF7AF;
    padding: 0.1rem 1rem;
    border-radius: 0.7rem;
    font-size: 1.15rem; }
  .nf-flight-baggage-upsell .nf-flight-baggage-upsell--stay {
    margin: 1rem 0rem;
    width: 100%;
    display: block;
    font-size: 1.15rem; }
  .nf-flight-baggage-upsell .nf-flight-baggage-upsell--continue {
    color: #2dace3;
    cursor: pointer;
    text-decoration: underline; }
  .nf-flight-baggage-upsell .nf-flight-baggage-upsell--close {
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
    cursor: pointer;
    fill: #676767; }

/* Modal checked baggage */
.baggage-description {
  white-space: pre-wrap;
  margin: 2rem 1rem; }

.nf-baggage-option-detail {
  padding-bottom: 1rem; }
  .nf-baggage-option-detail .nf-baggage-quantity-selector-text {
    width: 3.125rem;
    display: inline-block;
    background-color: #FFFFFF;
    height: 3rem;
    vertical-align: middle;
    max-width: 33%;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    color: #454545;
    text-align: center;
    font-family: "Roboto";
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 45px; }
  .nf-baggage-option-detail .nf-baggage-quantity-selector-decrement-button,
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button {
    color: #FFFFFF;
    background: #478330;
    border: 0;
    display: inline-block;
    width: 32px;
    height: 32px;
    position: relative;
    vertical-align: middle;
    cursor: pointer;
    -webkit-transition: all ease 100ms;
    transition: all ease 100ms;
    max-width: 33%;
    position: relative; }
  .nf-baggage-option-detail .nf-baggage-quantity-selector-decrement-button:hover,
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:hover,
  .nf-baggage-option-detail .nf-baggage-quantity-selector-decrement-button:focus,
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:focus {
    background: #3d7029; }
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button {
    border-radius: 100%; }
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:before,
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:after,
  .nf-baggage-option-detail .nf-baggage-quantity-selector-decrement-button:before {
    content: '';
    display: inline-block;
    width: 14px;
    height: 2px;
    background: #FFFFFF;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -7px;
    margin-top: -1px; }
  .nf-baggage-option-detail .nf-baggage-quantity-selector-increment-button:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg); }
  .nf-baggage-option-detail input {
    display: none; }
  .nf-baggage-option-detail .nf-baggage-option-detail-most-popular {
    float: right; }
  .nf-baggage-option-detail .nf-flight-details-extras-cost-amount {
    font-size: 12px;
    color: #0A2033; }

.nf-flight-details-extras-cost {
  overflow: hidden;
  font-size: 0.875rem;
  text-align: right;
  margin: 0.5rem 1rem;
  margin-bottom: 0;
  border-top: 1px solid #EEEEEE;
  padding: 1rem 0; }
  .nf-flight-details-extras-cost .m--bold {
    font-weight: bold; }
  .nf-flight-details-extras-cost .nf-flight-details-extras-cost-title {
    display: inline-block; }
  .nf-flight-details-extras-cost .nf-flight-details-extras-cost-amount {
    min-width: 7rem;
    display: inline-block; }
  .nf-flight-details-extras-cost .nf-flight-details-extras-cost-total {
    font-weight: bold;
    font-size: 0.9375rem; }
    .nf-flight-details-extras-cost .nf-flight-details-extras-cost-total .nf-flight-details-extras-cost-amount {
      font-size: 1.0625rem; }

.nf-flight-details-information-links p {
  margin: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 1rem; }

.nf-flight-details-information-links svg {
  color: #2dace3;
  fill: #1A6788;
  width: 1.5rem;
  height: 1.5rem;
  margin-right: 0.25rem; }

.nf-flight-details-information-links a {
  font-size: 0.8125rem;
  margin-left: 0.5rem;
  border-bottom: 0.0625rem solid #2dace3;
  line-height: 1.1; }

@media only screen and (min-width: 601px) {
  .nf-rh-branded-fare-details + .nf-rh-branded-fare-details {
    margin-top: 0;
    margin-left: 1rem; }
  .nf-rh-branded-fare-details--upas li {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
    .nf-rh-branded-fare-details--upas li &gt; div {
      width: 220px;
      margin-bottom: 0;
      margin-right: 1.5rem; }
  .nf-flight-baggage-upsell .nf-flight-baggage-upsell--svgimage {
    margin-top: -2rem; }
  .nf-branded-fare-add-bag {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .nf-branded-fare-add-bag--info {
    margin-right: 1rem;
    margin-bottom: 0; }
  .nf-rh-branded-fare-details--tabs {
    overflow-x: visible;
    -webkit-flex-flow: wrap;
        -ms-flex-flow: wrap;
            flex-flow: wrap; } }

@media only screen and (min-width: 993px) {
  .nf-rh-flight-details--backlink {
    padding: 16px 60px 8px 60px; }
  .nf-rh-branded-fare {
    min-height: 370px; }
  .m--single-card .nf-rh-branded-fare {
    min-height: auto !important; } }

@media only screen and (max-width: 600px) {
  .nf-rh-branded-fares-filter-container {
    display: -ms-grid !important;
    display: grid !important; }
    .nf-rh-branded-fares-filter-container .nf-rh-branded-fares-filter {
      overflow-x: scroll;
      white-space: nowrap; }
  .nf-rh-branded-fares h2 {
    font-size: 1.5rem; }
  .nf-flight-details h2 {
    font-size: 1.5rem; }
  .nf-rh-branded-fare {
    padding: 12px;
    min-height: 370px;
    margin-right: 0 !important; }
  .nf-rh-flight-details--backlink {
    padding: 16px 60px 8px 16px !important; }
  .nf-rh-branded-fare-details--wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; } }

@media only screen and (max-width: 992px) {
  .nf-rh-flight-details--backlink {
    padding: 16px 60px 8px 24px; }
  .nf-rh-branded-fare {
    min-height: -webkit-fit-content;
    min-height: -moz-fit-content;
    min-height: fit-content; }
  .fare-unpopular {
    margin-top: 16px !important; } }

@media only screen and (min-width: 993px) and (max-width: 1320px) {
  .nf-rh-branded-fares-container-card {
    width: 45% !important; } }

.nf-booking-extras-header.m--open {
  border-bottom: 1px solid #EEEEEE;
  padding-bottom: 0.75rem; }
  .nf-booking-extras-header.m--open .nf-booking-extras-header-quote {
    display: block; }
  .nf-booking-extras-header.m--open .nf-insurance-terms-and-conditions--cta {
    display: block; }

.nf-booking-extras-header-content {
  display: -ms-grid;
  display: grid;
  grid-column-gap: 1rem;
  -ms-grid-rows: auto auto auto;
  -ms-grid-columns: -webkit-max-content 1rem 1fr;
  -ms-grid-columns: max-content 1rem 1fr;
      grid-template: "header-icon header-desc" auto "header-terms header-terms" auto "header-quote header-quote" auto / -webkit-max-content 1fr;
      grid-template: "header-icon header-desc" auto "header-terms header-terms" auto "header-quote header-quote" auto / max-content 1fr;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-booking-extras-header-content.m--selected .nf-booking-extras-header-primary {
    color: #9d9d9d;
    font-size: 1rem;
    line-height: 1.3; }

.nf-booking-extras-header-icon {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: header-icon;
  position: relative;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  align-self: flex-start; }
  .nf-booking-extras-header-icon svg {
    max-width: 5rem;
    display: block; }
  .nf-booking-extras-header-icon.m--selected .nf-booking-extras-header-check {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
    fill: #65b146; }
    .nf-booking-extras-header-icon.m--selected .nf-booking-extras-header-check:before {
      content: '';
      width: 1.625rem;
      height: 1.625rem;
      display: block;
      border-radius: 50%;
      background: #FFFFFF;
      position: absolute;
      left: 50%;
      top: 50%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      z-index: -1; }

.nf-booking-extras-header-check {
  position: absolute;
  right: -0.25rem;
  bottom: 0.5rem;
  width: 2rem;
  height: 2rem;
  display: block;
  opacity: 0;
  -webkit-transform: scale(0.3);
          transform: scale(0.3);
  -webkit-transition: all 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: all 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
  fill: #676767; }
  .nf-booking-extras-header-check svg {
    width: 2rem;
    height: 2rem; }

.nf-booking-extras-header-desc {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: header-desc; }

.nf-booking-extras-header-primary {
  color: #2dace3;
  font-size: 1rem;
  text-align: left;
  line-height: 1.3; }
  .nf-booking-extras-header-primary span {
    color: #9d9d9d; }

.nf-booking-extras-header-secondary {
  font-size: 0.875rem;
  margin: 0.5rem 0 0 0;
  color: #9d9d9d;
  line-height: 1.3;
  font-family: adobe-handwriting-frank;
  font-display: auto;
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
  font-size: 1rem;
  color: #393939; }

.nf-booking-extras-header-quote {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  display: none;
  grid-area: header-quote;
  padding-top: 0.625rem; }
  .nf-booking-extras-header-quote blockquote {
    margin: 0;
    border-left: 0;
    text-align: center;
    padding-left: 0;
    line-height: 1.3; }
  .nf-booking-extras-header-quote p {
    color: #979797;
    font-size: 0.875rem;
    display: inline; }
    .nf-booking-extras-header-quote p:before {
      content: '\201C'; }
    .nf-booking-extras-header-quote p:after {
      content: '\201D'; }
  .nf-booking-extras-header-quote cite {
    color: #2dace3;
    font-size: 0.75rem;
    margin-left: 0.5rem; }

.nf-booking-extras-header-edit {
  display: inline-block;
  margin-top: 0.75rem; }

/*Extra heading V2*/
.nf-booking-extras-headerv2.m--open {
  border-bottom: 1px solid #EEEEEE;
  /*padding-bottom: 0.75rem;*/
  background-color: #283E5A;
  border-radius: 10px 10px 0px 0px; }
  .nf-booking-extras-headerv2.m--open.confirm-and-continue {
    background-color: #2dace3; }
  .nf-booking-extras-headerv2.m--open .nf-booking-extras-header-quote {
    display: block; }
  .nf-booking-extras-headerv2.m--open .nf-insurance-terms-and-conditions--cta {
    display: block; }

.nf-booking-extras-headerv2-content {
  display: -ms-grid;
  display: grid;
  grid-column-gap: 0.2rem;
  -ms-grid-rows: auto auto auto;
  -ms-grid-columns: -webkit-max-content 0.2rem 1fr;
  -ms-grid-columns: max-content 0.2rem 1fr;
      grid-template: "headerv2-icon headerv2-desc" auto "headerv2-terms headerv2-terms" auto "headerv2-quote headerv2-quote" auto / -webkit-max-content 1fr;
      grid-template: "headerv2-icon headerv2-desc" auto "headerv2-terms headerv2-terms" auto "headerv2-quote headerv2-quote" auto / max-content 1fr;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-booking-extras-headerv2-content.m--selected .nf-booking-extras-headerv2-primary {
    color: #9d9d9d;
    font-size: 1rem;
    /*line-height: 1.3;*/ }

.nf-booking-extras-headerv2-icon {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  padding: 0.5em 0 0.5em 0.5em;
  grid-area: headerv2-icon;
  position: relative;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  align-self: flex-start; }
  .nf-booking-extras-headerv2-icon svg {
    height: 2em;
    width: 2em;
    color: #FFFFFF;
    max-width: 5rem;
    display: block; }
  .nf-booking-extras-headerv2-icon.m--selected .nf-booking-extras-headerv2-check {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
    fill: #65b146; }
    .nf-booking-extras-headerv2-icon.m--selected .nf-booking-extras-headerv2-check:before {
      content: '';
      width: 1.625rem;
      height: 1.625rem;
      display: block;
      border-radius: 50%;
      background: #FFFFFF;
      position: absolute;
      left: 50%;
      top: 50%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      z-index: -1; }

.nf-booking-extras-headerv2-check {
  position: absolute;
  right: -0.25rem;
  bottom: 0.5rem;
  width: 2rem;
  height: 2rem;
  display: block;
  opacity: 0;
  -webkit-transform: scale(0.3);
          transform: scale(0.3);
  -webkit-transition: all 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: all 750ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
  fill: #676767; }
  .nf-booking-extras-headerv2-check svg {
    width: 2rem;
    height: 2rem; }

.nf-booking-extras-headerv2-desc {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: headerv2-desc; }

.nf-booking-extras-headerv2-primary {
  color: #FFFFFF;
  font-size: 1.25rem;
  text-align: left;
  /*line-height: 1.3;*/
  font-family: azo-sans-uber;
  float: left;
  /*padding: 0.5em 0 0.5em 0;*/ }
  .nf-booking-extras-headerv2-primary span {
    color: #9d9d9d; }
  .nf-booking-extras-headerv2-primary.insurance {
    padding: 0.5em 0 0.5em 0; }
  .nf-booking-extras-headerv2-primary.hotel {
    padding: 0.5em 0 0.5em 0; }
  .nf-booking-extras-headerv2-primary.car-hire {
    padding: 0.5em 0 0.5em 0;
    line-height: 1.5; }

.nf-booking-extras-headerv2-secondary {
  margin: 0;
  color: #FFFFFF;
  line-height: 1;
  font-family: adobe-handwriting-frank;
  font-display: auto;
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
  font-size: 1.25rem;
  -webkit-transform: skew(0deg, 355deg);
          transform: skew(0deg, 355deg);
  float: right;
  padding: 0 2rem 0 0; }
  .nf-booking-extras-headerv2-secondary.car-hire {
    text-align: center;
    width: 25%;
    padding-top: 0.5em; }

.nf-booking-extras-headerv2-quote {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  display: none;
  grid-area: headerv2-quote;
  padding-top: 0.625rem; }
  .nf-booking-extras-headerv2-quote blockquote {
    margin: 0;
    border-left: 0;
    text-align: center;
    padding-left: 0;
    line-height: 1.3; }
  .nf-booking-extras-headerv2-quote p {
    color: #979797;
    font-size: 0.875rem;
    display: inline; }
    .nf-booking-extras-headerv2-quote p:before {
      content: '\201C'; }
    .nf-booking-extras-headerv2-quote p:after {
      content: '\201D'; }
  .nf-booking-extras-headerv2-quote cite {
    color: #2dace3;
    font-size: 0.75rem;
    margin-left: 0.5rem; }

.nf-booking-extras-headerv2-edit {
  display: inline-block;
  margin-top: 0.75rem; }

@media only screen and (max-width: 600px) {
  .nf-booking-extras-headerv2-primary {
    font-size: 1rem;
    padding: 0 0 0 0.5rem;
    width: 62%; }
    .nf-booking-extras-headerv2-primary.insurance {
      width: 48%; }
    .nf-booking-extras-headerv2-primary.confirm-and-continue {
      width: 60%; }
    .nf-booking-extras-headerv2-primary.hotel {
      width: 50%; }
    .nf-booking-extras-headerv2-primary.car-hire {
      width: 50%; }
  .nf-booking-extras-headerv2-secondary {
    margin: 0.5rem 0 0 0;
    padding: 0 0.5rem 0 0; }
    .nf-booking-extras-headerv2-secondary.insurance {
      width: 52%;
      margin: 0.5rem 0 0 0; }
    .nf-booking-extras-headerv2-secondary.hotel {
      width: 50%; }
    .nf-booking-extras-headerv2-secondary.confirm-and-continue {
      text-align: center; }
    .nf-booking-extras-headerv2-secondary.car-hire {
      width: 50%;
      padding-top: 0; }
  .nf-booking-extras-headerv2-content {
    padding: 0.5rem 0 0.5rem 0; } }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-booking-extras-headerv2-primary {
    font-size: 1rem;
    padding: 0 0 0 0.5rem;
    width: 62%; }
    .nf-booking-extras-headerv2-primary.insurance {
      width: 60%; }
    .nf-booking-extras-headerv2-primary.airport-parking {
      width: 50%; }
    .nf-booking-extras-headerv2-primary.confirm-and-continue {
      width: 50%; }
    .nf-booking-extras-headerv2-primary.car-hire {
      width: 50%; }
  .nf-booking-extras-headerv2-secondary {
    margin: 0.5rem 0 0 0;
    padding: 0 0.5rem 0 0; }
    .nf-booking-extras-headerv2-secondary.insurance {
      margin: 0;
      padding: 0.5rem; }
    .nf-booking-extras-headerv2-secondary.hotel {
      margin: 0; }
    .nf-booking-extras-headerv2-secondary.car-hire {
      width: 50%;
      padding-top: 0; } }

/* End Extra heading V2*/
.nf-insurance-terms-and-conditions--cta {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-area: header-terms;
  display: inline-block;
  float: right; }
  .nf-insurance-terms-and-conditions--cta .nf-button-link {
    font-size: 0.8125rem; }

@media only screen and (max-width: 600px) {
  .nf-insurance-terms-and-conditions--cta {
    display: block;
    float: none; } }

@media only screen and (min-width: 993px) {
  .nf-booking-extras-header-content {
    grid-column-gap: 1rem;
    -ms-grid-rows: auto auto;
    -ms-grid-columns: -webkit-max-content 1rem 1fr 1rem -webkit-max-content;
    -ms-grid-columns: max-content 1rem 1fr 1rem max-content;
        grid-template: "header-icon header-desc header-terms" auto ". header-quote header-quote" auto / -webkit-max-content 1fr -webkit-max-content;
        grid-template: "header-icon header-desc header-terms" auto ". header-quote header-quote" auto / max-content 1fr max-content; }
  .nf-booking-extras-header-primary {
    font-size: 1.25rem; }
  .nf-booking-extras-header-secondary {
    font-size: 1rem;
    margin: 0.125rem 0 0 0; }
    .nf-booking-extras-header-secondary a {
      font-size: 1rem; }
    .nf-booking-extras-header-secondary em {
      color: #78b543;
      font-weight: bold;
      font-style: normal; }
  .nf-booking-extras-header-quote blockquote {
    text-align: left; }
  .nf-booking-extras-header-quote p {
    font-size: 1.125rem; }
  .nf-booking-extras-header-quote cite {
    font-size: 0.875rem; }
  .nf-booking-extras-header-icon {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .nf-booking-extras-header-desc {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .nf-booking-extras-header-quote {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3; }
  .nf-insurance-terms-and-conditions--cta {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
    -ms-grid-column-span: 1; } }

.nf-car-rental-duration {
  color: #5c5c5c;
  fill: #5c5c5c;
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 1rem 0;
  padding-left: 0.5rem; }
  .nf-car-rental-duration svg {
    margin-right: 0.5rem; }

.nf-car-generic-pick-up,
.nf-car-generic-drop-off {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  font-size: 0.8125rem;
  width: 50%;
  padding-right: 0.75rem;
  padding-left: 0.5rem; }
  .nf-car-generic-pick-up strong,
  .nf-car-generic-drop-off strong {
    display: block; }
  .nf-car-generic-pick-up svg,
  .nf-car-generic-drop-off svg {
    fill: #2dace3;
    margin-right: 0.5rem;
    width: 2.125rem;
    height: 2.125rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin-left: -0.25rem; }

.nf-car-generic-depot-location {
  margin-bottom: 0.5rem; }

.nf-car-generic-drop-off {
  padding-right: 0; }

.nf-car-generic-depot-info {
  line-height: 1.3; }

.nf-car-cards {
  margin-top: 2rem;
  padding-left: 0.5rem; }

.nf-car-card {
  width: 19.75rem;
  border-radius: 0.25rem;
  margin-right: 1.5rem;
  margin-bottom: 1.5rem;
  border: 1px solid #d5d5d5;
  padding: 1rem;
  color: #5c5c5c;
  fill: #5c5c5c; }

.nf-car-card-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }

.nf-car-card-category {
  font-weight: bold;
  font-size: 1.125rem; }

.nf-car-card-model {
  font-size: 1.25rem;
  font-weight: bold;
  display: block;
  height: 1.75rem;
  line-height: 1.2;
  margin-top: 0.25rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical; }

.nf-car-card-supplier {
  margin-left: -1rem;
  max-width: 30%;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0; }

.nf-car-card-supplier-image {
  max-width: 100%;
  max-height: 2rem; }

.nf-car-card-rental-conditions a {
  font-size: 0.6875rem !important; }

.nf-car-card-image {
  height: 8rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .nf-car-card-image img {
    max-width: 100%;
    max-height: 10rem;
    display: block; }

.nf-car-card-features {
  margin-bottom: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.nf-car-card-feature {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.25rem 0.375rem;
  margin: 0 0.5rem 0.5rem 0;
  font-size: 0.625rem;
  background: #EEEEEE;
  border-radius: 0.25rem; }
  .nf-car-card-feature svg {
    width: 0.875rem;
    height: 0.875rem;
    margin-right: 0.25rem; }
  .nf-car-card-feature:last-of-type {
    margin-right: 0; }

.nf-car-card-price-and-cta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 0.5rem; }

.nf-car-card-price {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-right: auto; }

.nf-car-card-price-text {
  font-size: 0.6875rem;
  white-space: nowrap;
  line-height: 1; }

.nf-car-card-price-value {
  font-weight: bold;
  font-size: 1.25rem; }

.nf-car-card-cta button {
  min-width: 6rem; }

.nf-car-card-cta .selected {
  color: #65b146;
  background: transparent;
  border: 2px solid #65b146; }

.nf-car-hire-header-intro {
  font-size: 0.8125rem;
  border-bottom: 1px solid #EEEEEE; }
  .nf-car-hire-header-intro p {
    font-size: 0.8125rem; }

.nf-car-card.car-hire .nf-car-generic-pick-up svg {
  width: 1.125rem;
  height: 1.125rem; }

.nf-car-card.car-hire .nf-car-card-features {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  border-bottom: 1px solid #EEEEEE; }

.nf-car-card.car-hire .nf-car-card-feature {
  background: none;
  margin: 0;
  font-weight: bold; }

.nf-car-card.car-hire .nf-car-card-price {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }

.nf-car-card.car-hire .nf-car-card-price-value {
  font-size: 1.5rem; }

@media only screen and (min-width: 601px) {
  .nf-car-generic-pick-up,
  .nf-car-generic-drop-off {
    width: auto;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .nf-car-generic-pick-up strong,
    .nf-car-generic-drop-off strong {
      display: inline-block;
      margin-right: 0.375rem; }
  .nf-car-generic-depot-location {
    margin-bottom: 0; } }

@media only screen and (max-width: 600px) {
  .nf-car-generic-pick-up {
    padding: 0; }
  .nf-car-hire-header-intro {
    display: none; }
  .car-hire.nf-car-generic-pick-up .nf-car-generic-depot-location, .car-hire.nf-car-generic-drop-off .nf-car-generic-depot-location {
    margin-bottom: 0; }
  .car-hire.nf-car-generic-pick-up .nf-car-generic-depot-dates strong, .car-hire.nf-car-generic-drop-off .nf-car-generic-depot-dates strong {
    display: inline;
    padding-right: 2px; }
  .car-hire.nf-car-generic-pick-up svg, .car-hire.nf-car-generic-drop-off svg {
    margin-right: 0rem; }
  .car-hire .nf-car-card-header .nf-car-generic-pick-up {
    width: auto;
    margin-bottom: 0.5rem; } }

.nf-hotel-card {
  width: 16.75rem;
  border-radius: 0.25rem;
  margin-right: 1rem;
  margin-top: 1.75rem;
  overflow: hidden; }

.nf-hotel-card-image {
  height: 10.875rem;
  overflow: hidden;
  background: #EEEEEE;
  -webkit-box-shadow: inset 0 0 0px 1px #CFCFCF;
          box-shadow: inset 0 0 0px 1px #CFCFCF; }
  .nf-hotel-card-image img {
    width: 100%;
    height: 100%; }

.nf-hotel-saving-price {
  color: #EEEEEE;
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0rem;
  left: 0;
  border-bottom-right-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
  padding: 0.5rem 1rem;
  min-width: 5.5rem;
  max-width: calc(40%);
  line-height: 1.3;
  -webkit-backdrop-filter: blur(1px);
          backdrop-filter: blur(1px); }
  .nf-hotel-saving-price .nf-hotel-saving-price-text {
    font-size: 0.75rem;
    white-space: nowrap;
    line-height: 1; }

.nf-hotel-card-content {
  padding: 0.75rem 1rem;
  border: 1px solid #d5d5d5;
  border-top: 0; }

.nf-highlight-usp {
  color: #FFFFFF;
  font-size: 0.75rem;
  border-radius: 0.125rem;
  line-height: 1.5;
  padding: 0 0.5rem;
  margin-right: 0.5rem;
  display: inline-block;
  background: #CFCFCF; }
  .nf-highlight-usp.m--medium {
    font-size: 0.875rem;
    border-radius: 0.25rem; }
  .nf-highlight-usp.m--recommended {
    background: #2dace3; }
  .nf-highlight-usp.m--cheapest {
    background: #2dace3; }
  .nf-highlight-usp.m--popular {
    background: #5c267a; }
  .nf-highlight-usp.m--closest {
    background: #78b543; }
  .nf-highlight-usp.m--five-star {
    background: #ed1f7f; }

.nf-hotel-card-rating-and-title {
  font-size: 0.875rem;
  fill: #b3a15e;
  margin-top: 0.75rem;
  line-height: 1.3;
  height: 3.375rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical; }
  .nf-hotel-card-rating-and-title svg {
    width: 1rem;
    height: 1rem;
    vertical-align: text-top;
    margin: 0 0.125rem; }

.nf-hotel-card-price-and-cta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 0.5rem; }

.nf-hotel-card-price {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-right: auto; }

.nf-hotel-card-price-text {
  font-size: 0.75rem;
  white-space: nowrap;
  line-height: 1; }

.nf-hotel-card-price-value {
  font-weight: bold;
  font-size: 1.25rem;
  line-height: 1.3; }

.nf-extras-hotel-intro {
  border-bottom: 1px solid #EEEEEE;
  padding-bottom: 0.2rem; }

.nf-hotel-card-cta .selected {
  color: #65b146;
  background: transparent;
  border: 2px solid #65b146; }

.nf-extras-hotel-tab {
  border-collapse: separate; }
  .nf-extras-hotel-tab .nf-extras-hotel-tab-item {
    display: table-cell;
    -webkit-transition: all ease .3s;
    transition: all ease .3s;
    padding: 1rem 1.5rem 0.8rem 1.5rem;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    color: #bfbfbf;
    white-space: nowrap;
    cursor: pointer;
    font-family: azo-sans-uber; }
    .nf-extras-hotel-tab .nf-extras-hotel-tab-item:hover {
      color: #2dace3; }
    .nf-extras-hotel-tab .nf-extras-hotel-tab-item:after {
      -webkit-transition: all 0.3s cubic-bezier(1, 0, 0, 1);
      transition: all 0.3s cubic-bezier(1, 0, 0, 1);
      will-change: transform, box-shadow, opacity;
      position: absolute;
      content: '';
      height: 3px;
      bottom: 0px;
      left: 0px;
      right: 0px;
      background: #d2d2d2;
      opacity: 1; }
    .nf-extras-hotel-tab .nf-extras-hotel-tab-item.active {
      color: #2dace3; }
      .nf-extras-hotel-tab .nf-extras-hotel-tab-item.active:after {
        background: #2dace3; }

.nf-hotel-details {
  padding-bottom: 4.25rem; }

.nf-hotel-details-heading {
  font-size: 1rem;
  color: #5c5c5c;
  fill: #5c5c5c;
  font-weight: bold;
  margin-bottom: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-hotel-details-heading svg {
    margin-right: 0.5rem; }

.nf-hotel-details-gallery {
  position: relative;
  margin: -1rem;
  margin-bottom: 1rem;
  min-height: 12.5rem; }
  .nf-hotel-details-gallery img {
    width: 100%;
    height: auto;
    display: block; }

.nf-hotel-details-gallery-indicator {
  font-size: 0.625rem;
  position: absolute;
  top: 1rem;
  right: 1.5rem;
  padding: 0.375rem 0.75rem;
  color: #FFFFFF;
  background: rgba(69, 69, 69, 0.9);
  border-radius: 0.5rem; }

.nf-hotel-details-summary {
  grid-area: hotel-desc; }

.nf-hotel-details-title {
  color: #5c5c5c;
  font-size: 1.125rem;
  fill: #b3a15e;
  margin-top: 1rem;
  text-align: left; }
  .nf-hotel-details-title svg {
    width: 1.125rem;
    height: 1.125rem;
    vertical-align: text-top;
    margin: 0 0.125rem; }

.nf-hotel-details-duration {
  font-size: 0.8125rem; }

.nf-hotel-details-price {
  font-size: 1.25rem;
  font-weight: bold;
  display: block;
  line-height: 1.3; }

.nf-hotel-details-selection {
  color: #FFFFFF;
  fill: #FFFFFF;
  background: rgba(69, 69, 69, 0.9);
  position: fixed;
  bottom: 0;
  width: 100%;
  left: 0;
  z-index: 4;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1rem;
  -webkit-backdrop-filter: blur(1px);
          backdrop-filter: blur(1px); }

.nf-hotel-details-selection-icon svg {
  display: block;
  width: 1.875rem;
  height: 1.875rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-right: 0.5rem; }

.nf-hotel-details-selection-summary {
  font-size: 0.6875rem;
  font-weight: bold;
  line-height: 1.3;
  margin-right: auto; }

.nf-hotel-details-selection-cta {
  margin-left: 1rem; }

.nf-hotel-details-overview {
  font-size: 0.75rem;
  margin-bottom: 0; }

.nf-hotel-details-info {
  grid-area: hotel-info;
  font-size: 0.75rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-top: 1px dashed #EEEEEE;
  border-bottom: 1px dashed #EEEEEE; }

.nf-hotel-details-amenities {
  grid-area: hotel-amenities;
  margin-top: 1rem; }

.nf-hotel-details-amenities-item {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 50%;
  font-size: 0.875rem;
  line-height: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  fill: #78b543; }
  .nf-hotel-details-amenities-item svg {
    display: block;
    width: 1.25rem;
    height: 1.25rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin-right: 0.5rem; }

.nf-hotel-details-map {
  grid-area: hotel-map;
  font-size: 0.6875rem;
  padding-top: 1rem;
  margin-top: 1rem;
  border-top: 1px dashed #EEEEEE; }

.nf-hotel-details-map-location {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.nf-hotel-details-map-wrap {
  position: relative;
  width: 100%;
  min-height: 12.5rem;
  margin: 0.5rem 0; }

.nf-hotel-details-map-content {
  position: absolute;
  width: 100%;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0; }

.nf-hotel-room {
  border: 1px solid #dddddd;
  margin: 1rem 0;
  padding: 0.75rem;
  display: -ms-grid;
  display: grid;
  grid-column-gap: 1rem;
  -ms-grid-rows: auto auto;
  -ms-grid-columns: 1fr 1rem auto;
      grid-template: "hotel-room-desc hotel-room-cta" auto "hotel-room-price hotel-room-cta" auto / 1fr auto;
  border-radius: 0.25rem; }

.nf-hotel-room-desc {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: hotel-room-desc;
  font-size: 0.875rem;
  line-height: 1.2; }
  .nf-hotel-room-desc span {
    display: block; }

.nf-hotel-room-price {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: hotel-room-price;
  font-weight: bold;
  font-size: 0.8125rem;
  line-height: 1.2;
  margin-top: 0.125rem; }

.nf-hotel-room-price-value {
  font-size: 0.875rem; }

.nf-hotel-room-cta {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 3;
  grid-area: hotel-room-cta;
  -ms-grid-row-align: center;
      align-self: center; }

@media only screen and (min-width : 601px) {
  .nf-hotel-details {
    display: -ms-grid;
    display: grid;
    grid-gap: 1rem;
    -ms-grid-rows: auto 1rem auto 1rem auto;
    -ms-grid-columns: 1fr 1rem 1fr;
        grid-template: "hotel-gallery hotel-desc" auto "hotel-info hotel-info" auto "hotel-amenities hotel-map" auto / 1fr 1fr;
    padding-bottom: 0; }
  .nf-hotel-details-gallery {
    grid-area: hotel-gallery;
    height: 20.5rem;
    border-radius: 0.25rem;
    margin: 0; }
    .nf-hotel-details-gallery img {
      border-radius: 0.25rem;
      margin-right: 1rem;
      max-height: 20.5rem; }
    .nf-hotel-details-gallery .flickity-viewport {
      -webkit-transition: none;
      transition: none; }
  .nf-hotel-details-selection {
    color: #5c5c5c;
    fill: #5c5c5c;
    position: static;
    background: transparent;
    border: 1px solid #dddddd;
    padding: 0.625rem;
    margin: 1rem 0;
    border-radius: 0.25rem; }
  .nf-hotel-details-amenities {
    margin-top: 0; }
  .nf-hotel-details-map {
    margin-top: 0;
    padding-top: 0;
    border-top: 0; }
  .nf-hotel-room {
    margin: 1.5rem 0;
    padding: 1.5rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .nf-hotel-room-desc {
    font-size: 0.9375rem;
    line-height: 1.3;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .nf-hotel-room-desc span {
      display: block; }
  .nf-hotel-room-price {
    font-size: 0.8125rem;
    margin: 0; }
  .nf-hotel-room-price-text {
    display: block;
    line-height: 1; }
  .nf-hotel-room-price-value {
    font-size: 1.125rem;
    line-height: 1.3; }
  .nf-hotel-room-cta {
    margin-left: 15%; }
    .nf-hotel-room-cta button {
      min-width: 8rem;
      font-weight: bold; }
  .nf-hotel-details-summary {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .nf-hotel-details-info {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; }
  .nf-hotel-details-amenities {
    -ms-grid-row: 5;
    -ms-grid-column: 1; }
  .nf-hotel-details-map {
    -ms-grid-row: 5;
    -ms-grid-column: 3; } }

@media only screen and (min-width : 601px) {
  .nf-hotel-details-gallery {
    -ms-grid-row: 1;
    -ms-grid-column: 1; } }

@media only screen and (min-width : 993px) {
  .nf-hotel-details {
    grid-gap: 1.5rem;
    -ms-grid-rows: auto 1.5rem auto 1.5rem auto;
    -ms-grid-columns: 6.5fr 1.5rem 4.5fr;
        grid-template: "hotel-gallery hotel-desc" auto "hotel-info hotel-info" auto "hotel-amenities hotel-map" auto / 6.5fr 4.5fr; }
  .nf-hotel-details-summary {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .nf-hotel-details-info {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; }
  .nf-hotel-details-amenities {
    -ms-grid-row: 5;
    -ms-grid-column: 1; }
  .nf-hotel-details-map {
    -ms-grid-row: 5;
    -ms-grid-column: 3; }
  .nf-hotel-details-gallery {
    -ms-grid-row: 1;
    -ms-grid-column: 1; } }

@media only screen and (max-width: 600px) {
  .nf-extras-hotel-intro {
    display: none; } }

.nf-rating-star-wrapper {
  height: 1rem; }
  .nf-rating-star-wrapper .nf-rating-star {
    display: inline-block; }
    .nf-rating-star-wrapper .nf-rating-star svg {
      fill: #b3a15e;
      width: 1rem;
      height: 1rem; }

.nf-hotel-info-image-wrapper {
  height: 20rem; }

.nf-hotel-info-wrapper .nf-hotel-info-category {
  margin-top: 2rem; }

.nf-hotel-info-wrapper .nf-hotel-info-name {
  font-weight: 800;
  font-size: 1.2rem; }

.nf-hotel-info-wrapper .nf-hotel-info-section {
  border-top: 0.125rem dotted #CFCFCF;
  padding-top: 1rem; }
  .nf-hotel-info-wrapper .nf-hotel-info-section .nf-hotel-info-section-title {
    font-weight: 800;
    font-size: 1.1rem;
    display: block; }
    .nf-hotel-info-wrapper .nf-hotel-info-section .nf-hotel-info-section-title svg {
      width: 1.5rem;
      height: 1.5rem;
      float: left;
      margin-right: 0.5rem; }
  .nf-hotel-info-wrapper .nf-hotel-info-section:last-child {
    margin-bottom: 2rem; }

.nf-hotel-info-map-address-text {
  display: block;
  color: #ACACAC;
  font-size: 0.8rem; }

.nf-hotel-info-map-city-text {
  color: #ACACAC;
  font-size: 0.8rem;
  float: left; }

.nf-hotel-info-map-centre-text {
  color: #ACACAC;
  font-size: 0.8rem;
  float: right; }

.nf-hotel-location-info {
  min-height: 1rem; }

.nf-hotel-amenity {
  width: 50%;
  display: inline-block;
  padding: 0.5rem 0; }
  .nf-hotel-amenity .nf-hotel-amenity-text {
    margin-left: 1rem;
    vertical-align: text-bottom; }

.nf-marker {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: #00cae9;
  position: absolute; }
  .nf-marker.red {
    background: #e40046; }

.nf-hotel-info-map {
  height: 25rem;
  width: 100%; }

.nf-airport-parking-intro {
  color: #676767;
  font-weight: bold; }

.nf-airport-parking {
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
  padding: 0 .5rem; }

.nf-airport-parking-footer {
  padding-bottom: 4.25rem; }

.nf-airport-parking-option {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: pointer;
  font-size: 0.8125rem;
  color: #676767;
  line-height: 1.3;
  border-radius: 10px;
  padding: 10px;
  border: 1px solid #d5d5d5; }
  .nf-airport-parking-option.m--selected .nf-airport-parking-price {
    color: #2dace3; }
  .nf-airport-parking-option:last-of-type {
    margin-bottom: 0; }

.nf-airport-parking-radio {
  position: relative;
  width: 1.25rem;
  height: 1.25rem;
  display: block;
  border: 2px solid #dddddd;
  border-radius: 50%;
  margin-right: 1rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0; }
  .nf-airport-parking-radio:before {
    content: '';
    width: 0.5rem;
    height: 0.5rem;
    display: block;
    background: #dddddd;
    position: absolute;
    left: 50%;
    top: 50%;
    border-radius: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0) scale(0);
            transform: translate3d(-50%, -50%, 0) scale(0);
    -webkit-transition: all 250ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition: all 250ms cubic-bezier(0.175, 0.885, 0.32, 1.275); }
  .nf-airport-parking-radio.m--selected {
    border-color: #2dace3; }
  .nf-airport-parking-radio.m--selected:before {
    background: #2dace3;
    -webkit-transform: translate3d(-50%, -50%, 0) scale(1);
            transform: translate3d(-50%, -50%, 0) scale(1); }

.nf-airport-parking-info {
  margin-right: auto;
  padding-right: 1rem; }
  .nf-airport-parking-info p {
    margin: 0 0 0.5rem; }
  .nf-airport-parking-info span {
    display: block; }

.nf-airport-parking-price {
  line-height: 1.5;
  text-align: right;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.nf-airport-parking-price-total {
  font-weight: bold;
  font-size: 1.25rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 0 0.5rem 0 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .nf-airport-parking-price-total svg {
    fill: #65b146;
    width: 1rem;
    height: 1rem;
    margin-right: 0.125rem; }

.nf-airport-parking-price-daily {
  font-weight: normal;
  font-size: 0.6875rem; }
  .nf-airport-parking-price-daily span + span {
    color: #676767; }

.nf-airport-parking-header-intro {
  font-size: 0.8125rem;
  border-bottom: 1px solid #ebebeb; }
  .nf-airport-parking-header-intro p {
    font-size: 0.8125rem; }

.nf-airport-parking-footer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end; }

.nf-airport-parking-summary {
  margin-bottom: 0.5rem;
  margin-right: auto;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 0 .5rem; }

.nf-airport-generic-pick-up,
.nf-airport-generic-drop-ff {
  padding-left: 0rem; }

.nf-airport-parking-duration {
  color: #5c5c5c;
  fill: #5c5c5c;
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem; }
  .nf-airport-parking-duration svg {
    margin-right: 0.5rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0; }

.nf-airport-parking-total-and-cta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #FFFFFF;
  background: #454545;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 1rem; }

.nf-airport-parking-total {
  margin-right: auto;
  font-size: 0.8125rem; }

.nf-airport-parking-total-text {
  margin-right: 0.5rem; }

.nf-airport-parking-total-value {
  font-weight: bold;
  font-size: 0.9375rem; }

.nf-airport-parking-cta {
  margin-left: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-content: stretch;
      -ms-flex-line-pack: stretch;
          align-content: stretch;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-airport-parking-cta .btn, .nf-airport-parking-cta .btn-large {
    min-width: 8rem;
    font-weight: bold; }
    .nf-airport-parking-cta .btn.m--selected, .nf-airport-parking-cta .m--selected.btn-large {
      color: #65b146;
      background: transparent;
      border: 2px solid #65b146; }

@media only screen and (min-width: 601px) {
  .nf-airport-parking-footer {
    padding-bottom: 0; }
  .nf-airport-parking-total-and-cta {
    display: block;
    text-align: right;
    background: none;
    position: static;
    padding: 0;
    width: auto;
    color: #5c5c5c; }
  .nf-airport-parking-total {
    margin-bottom: 0.5rem; } }

@media only screen and (max-width: 600px) {
  .nf-booking-extras-headerv2-primary {
    width: 60%; }
  .nf-booking-extras-headerv2-secondary {
    width: 40%;
    margin: 0; }
  .nf-airport-parking-option {
    display: block; }
  .nf-airport-parking-info {
    padding: 0 0 1rem 0;
    border-bottom: dotted 1px lightgray; }
  .nf-airport-parking-price {
    padding: 1rem 0 0 0; }
  .nf-airport-parking-header-intro {
    display: none; }
  .nf-airport-parking-intro {
    padding: 0; }
  .nf-airport-parking-summary {
    padding: 0; }
  .nf-airport-parking {
    padding: 0; } }

.nf-airport-transfers-intro {
  color: #676767;
  font-size: 0.875rem; }

.nf-airport-transfers-intro-summary {
  color: #676767;
  font-size: 1rem;
  font-weight: bold; }

.nf-airport-transfers {
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px dashed #EEEEEE; }

.nf-airport-transfers-footer {
  padding-bottom: 4.25rem; }

.nf-airport-transfers-option {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: pointer;
  font-size: 0.8125rem;
  color: #676767;
  line-height: 1.3; }
  .nf-airport-transfers-option.m--selected .nf-airport-transfers-price {
    color: #2dace3; }
  .nf-airport-transfers-option:last-of-type {
    margin-bottom: 0; }

.nf-airport-transfers-radio {
  position: relative;
  width: 1.25rem;
  height: 1.25rem;
  display: block;
  border: 2px solid #dddddd;
  border-radius: 50%;
  margin-right: 1rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0; }
  .nf-airport-transfers-radio:before {
    content: '';
    width: 0.5rem;
    height: 0.5rem;
    display: block;
    background: #dddddd;
    position: absolute;
    left: 50%;
    top: 50%;
    border-radius: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0) scale(0);
            transform: translate3d(-50%, -50%, 0) scale(0);
    -webkit-transition: all 250ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition: all 250ms cubic-bezier(0.175, 0.885, 0.32, 1.275); }
  .nf-airport-transfers-radio.m--selected {
    border-color: #2dace3; }
  .nf-airport-transfers-radio.m--selected:before {
    background: #2dace3;
    -webkit-transform: translate3d(-50%, -50%, 0) scale(1);
            transform: translate3d(-50%, -50%, 0) scale(1); }

.nf-airport-transfers-info {
  margin-right: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-airport-transfers-info svg {
    margin-right: 1rem; }

.nf-airport-transfers-price {
  line-height: 1.5;
  text-align: right; }

.nf-airport-transfers-price-total {
  font-weight: bold;
  font-size: 0.9375rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-airport-transfers-price-total svg {
    fill: #65b146;
    width: 1rem;
    height: 1rem;
    margin-right: 0.125rem; }

.nf-airport-transfers-footer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  font-size: 0.6875rem; }
  .nf-airport-transfers-footer span {
    font-weight: bold; }

.nf-airport-transfers-notes {
  margin-right: auto;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding-right: 10%; }

@media only screen and (min-width: 601px) {
  .nf-airport-transfers-footer {
    padding-bottom: 0; } }

.nf-booking-summary {
  background: #FFFFFF;
  border-radius: 0.25rem; }

.nf-booking-extras-summary.m--hide {
  display: none; }

.nf-booking-extras-summary .nf-basket-price-line {
  padding: 0 1rem; }

.nf-booking-extras .nf-booking-summary-item {
  padding: 12px 16px; }

.nf-booking-summary-header {
  font-weight: bold;
  padding: 0.75rem 1rem;
  font-size: var(--Font-Size-Body-M, 16px);
  border-bottom: 1px solid #EEEEEE;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #283E5A;
  font-weight: 800;
  line-height: var(--Font-Line-Height-XL, 24px); }

.nf-booking-summary-text {
  margin-right: auto; }

.nf-booking-summary-price {
  margin-right: 1rem; }

.nf-booking-summary-icon {
  margin-right: 0.5rem; }
  .nf-booking-summary-icon svg {
    display: block;
    width: 1.25rem;
    height: 1.25rem; }

.nf-booking-summary-item {
  padding: 0.5rem 0.75rem;
  padding: 0.5rem 0;
  font-size: 0.75rem;
  border-top: 1px solid #EEEEEE;
  border-bottom: 1px solid #EEEEEE;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-tap-highlight-color: transparent; }
  .nf-booking-summary-item + .nf-booking-summary-item {
    border-top: 0; }

.nf-booking-summary-item-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer; }
  .nf-booking-summary-item-title ~ [class$="-summary"] {
    color: #222222;
    margin: 0.5rem 0;
    margin-top: 24px; }

.nf-booking-summary-item-text {
  margin-right: auto;
  color: #283E5A;
  font-size: 14px;
  font-weight: 800;
  line-height: 21px; }

.nf-booking-summary-item-price {
  margin-right: 1rem;
  color: #283E5A;
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 21px; }

.nf-booking-summary-price-breakdown {
  padding: 1rem;
  padding-bottom: 0; }

.nf-flight-details-footer-info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-flight-details-footer-info .nf-rh-flight-details-pax-continue {
    font-size: 16px;
    font-weight: 800;
    min-width: 320px; }
  .nf-flight-details-footer-info svg {
    fill: #5AA63C;
    margin-right: 16px; }
  .nf-flight-details-footer-info p {
    color: #454545;
    font-size: 14px;
    font-weight: 400; }

.nf-flight-details-footer-info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-flight-details-footer-info .nf-rh-flight-details-pax-continue {
    font-size: 16px;
    font-weight: 800;
    min-width: 320px; }
  .nf-flight-details-footer-info svg {
    fill: #5AA63C;
    margin-right: 16px; }
  .nf-flight-details-footer-info p {
    color: #454545;
    font-size: 14px;
    font-weight: 400; }

.nf-flight-details-footer-container {
  left: 0;
  z-index: 2;
  position: fixed;
  background: #FFFFFF;
  bottom: 0;
  width: 100%;
  padding: 16px 60px 12px 60px;
  border-top: 2px solid #CFCFCF;
  right: 0; }
  .nf-flight-details-footer-container .nf-flight-details-footer-info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .nf-flight-details-footer-container .nf-flight-details-footer-info .nf-rh-flight-details-pax-continue {
      font-size: 16px;
      font-weight: 800;
      min-width: 320px; }
    .nf-flight-details-footer-container .nf-flight-details-footer-info svg {
      fill: #5AA63C;
      margin-right: 16px; }
    .nf-flight-details-footer-container .nf-flight-details-footer-info p {
      color: #454545;
      font-size: 14px;
      font-weight: 400; }
  .nf-flight-details-footer-container .btn-block {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content; }
  .nf-flight-details-footer-container p {
    margin: 0;
    color: var(--Greyscale-greyscale-500, #676767);
    text-align: right;
    font-family: var(--Font-Family-Body, Roboto);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 18px; }
  .nf-flight-details-footer-container h4 {
    color: var(--Greyscale-greyscale-700, #222);
    text-align: right;
    font-family: var(--Font-Family-Body, Roboto);
    font-size: 18px;
    font-style: normal;
    font-weight: 800;
    line-height: 27px; }

.nf-booking-summary-price-total {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-weight: bold;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.nf-booking-summary-disclaimer .nf-booking-summary-disclaimer-text {
  padding: 12px;
  color: #000000;
  font-size: 11px;
  font-weight: 400;
  margin: 0; }

.nf-booking-summary-remove {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 4px; }
  .nf-booking-summary-remove .nf-booking-summary-remove-icon {
    margin-right: 8px; }
  .nf-booking-summary-remove #btn-remove-flight {
    color: #217FA8;
    font-size: 14px;
    font-weight: 600;
    line-height: 21px;
    -webkit-text-decoration-line: underline;
            text-decoration-line: underline;
    -webkit-text-decoration-style: solid;
            text-decoration-style: solid;
    -webkit-text-decoration-skip-ink: none;
            text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font; }

.nf-booking-summary-price-button {
  margin-left: 1rem;
  padding: 1rem;
  background: #FFFFFF; }

.nf-booking-summary-paid-text {
  font-weight: bold;
  font-size: 0.9375rem;
  color: #65b146;
  margin-right: 1rem; }

.nf-paid-product-summary {
  font-size: 0.875rem; }

.nf-flight-optional-bag {
  margin-top: 0.5rem; }
  .nf-flight-optional-bag .nf-flight-option-label {
    font-weight: bold;
    margin-right: 0.375rem;
    display: inline-block; }
  .nf-flight-optional-bag .nf-flight-option-value {
    display: inline-block; }

.disclaimer-cta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .disclaimer-cta p {
    font-size: 0.6875rem;
    font-weight: bold;
    margin: 0; }
  .disclaimer-cta .btn, .disclaimer-cta .btn-large {
    width: 25%;
    margin-top: -1.5rem; }

@media only screen and (max-width: 600px) {
  .disclaimer-cta {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .disclaimer-cta p {
      margin: 1em 0; }
    .disclaimer-cta .btn, .disclaimer-cta .btn-large {
      width: 100%;
      margin: 0; }
  .nf-booking-summary-price-total {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 1.25rem; } }

.saveforlater-form-container,
.saveforlater-complete {
  background: #FFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 16px;
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch;
  border-radius: 4px;
  -webkit-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25); }
  .saveforlater-form-container h5,
  .saveforlater-complete h5 {
    color: var(--Primary-primary-700, #283E5A);
    font-family: var(--Font-Family-Body, Roboto);
    font-size: 16px;
    font-style: normal;
    font-weight: 800;
    line-height: 24px; }
  .saveforlater-form-container .saveforlater-form-header,
  .saveforlater-complete .saveforlater-form-header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    border-bottom: 1px solid var(--Greyscale-greyscale-100, #F1F1F1);
    padding: 12px;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 6px;
    width: 100%; }
    .saveforlater-form-container .saveforlater-form-header .saveforlater-form-header-title,
    .saveforlater-complete .saveforlater-form-header .saveforlater-form-header-title {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      gap: 6px; }
      .saveforlater-form-container .saveforlater-form-header .saveforlater-form-header-title svg,
      .saveforlater-complete .saveforlater-form-header .saveforlater-form-header-title svg {
        fill: #283E5A;
        width: 16px;
        height: 16px; }
    .saveforlater-form-container .saveforlater-form-header .saveforlater-form-header-close,
    .saveforlater-complete .saveforlater-form-header .saveforlater-form-header-close {
      -webkit-box-pack: right;
      -webkit-justify-content: right;
          -ms-flex-pack: right;
              justify-content: right;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      cursor: pointer; }
      .saveforlater-form-container .saveforlater-form-header .saveforlater-form-header-close svg,
      .saveforlater-complete .saveforlater-form-header .saveforlater-form-header-close svg {
        fill: #283E5A;
        width: 24px;
        height: 24px; }
  .saveforlater-form-container .saveforlater-body,
  .saveforlater-complete .saveforlater-body {
    margin: 16px;
    width: -webkit-fill-available; }
  .saveforlater-form-container .saveforlater-form,
  .saveforlater-complete .saveforlater-form {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 100%; }
    .saveforlater-form-container .saveforlater-form .saveforlater-form-input,
    .saveforlater-complete .saveforlater-form .saveforlater-form-input {
      margin: 16px; }
      .saveforlater-form-container .saveforlater-form .saveforlater-form-input .saveforlater-form-input-checkbox,
      .saveforlater-complete .saveforlater-form .saveforlater-form-input .saveforlater-form-input-checkbox {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
            -ms-flex-align: start;
                align-items: flex-start; }
        .saveforlater-form-container .saveforlater-form .saveforlater-form-input .saveforlater-form-input-checkbox .nf-saveforlater-checkbox,
        .saveforlater-complete .saveforlater-form .saveforlater-form-input .saveforlater-form-input-checkbox .nf-saveforlater-checkbox {
          margin-top: 2px; }
        .saveforlater-form-container .saveforlater-form .saveforlater-form-input .saveforlater-form-input-checkbox .nf-save-for-later-desc,
        .saveforlater-complete .saveforlater-form .saveforlater-form-input .saveforlater-form-input-checkbox .nf-save-for-later-desc {
          color: var(--Greyscale-greyscale-600, #454545);
          font-family: var(--Font-Family-Body, Roboto);
          font-size: 12px;
          font-style: normal;
          font-weight: 600;
          line-height: 18px;
          margin: 0;
          margin-bottom: 12px;
          margin-left: 8px; }
      .saveforlater-form-container .saveforlater-form .saveforlater-form-input .nf-form-field-label,
      .saveforlater-complete .saveforlater-form .saveforlater-form-input .nf-form-field-label {
        color: #393939;
        font-size: 12px;
        font-style: normal;
        font-weight: 800;
        line-height: 18px; }
      .saveforlater-form-container .saveforlater-form .saveforlater-form-input .nf-form-field-message,
      .saveforlater-complete .saveforlater-form .saveforlater-form-input .nf-form-field-message {
        color: var(--Buttons-Secondary-Button-secondary-btn, #5AA63C);
        font-size: 12px;
        font-style: normal;
        font-weight: 400;
        line-height: 12px; }
      .saveforlater-form-container .saveforlater-form .saveforlater-form-input .nf-saveforlater-policy,
      .saveforlater-complete .saveforlater-form .saveforlater-form-input .nf-saveforlater-policy {
        color: var(--Greyscale-greyscale-600, #454545);
        font-family: var(--Font-Family-Body, Roboto);
        font-size: 14px;
        font-style: normal;
        font-weight: 400;
        line-height: 21px;
        margin: 0;
        margin-top: 12px; }
        .saveforlater-form-container .saveforlater-form .saveforlater-form-input .nf-saveforlater-policy a,
        .saveforlater-complete .saveforlater-form .saveforlater-form-input .nf-saveforlater-policy a {
          font-weight: bold;
          text-decoration: underline;
          color: var(--Greyscale-greyscale-600, #454545); }
  .saveforlater-form-container .nf-saveforlater-reminder,
  .saveforlater-complete .nf-saveforlater-reminder {
    color: var(--Default-btn-txt, #217FA8);
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 21px;
    -webkit-text-decoration-line: underline;
            text-decoration-line: underline;
    -webkit-text-decoration-style: solid;
            text-decoration-style: solid;
    -webkit-text-decoration-skip-ink: none;
            text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
    margin: 16px 0px;
    cursor: pointer;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content; }
  .saveforlater-form-container .saveforlater-trip-options,
  .saveforlater-complete .saveforlater-trip-options {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 8px;
    margin-top: 8px; }
    .saveforlater-form-container .saveforlater-trip-options .saveforlater-trip-item,
    .saveforlater-complete .saveforlater-trip-options .saveforlater-trip-item {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      padding: 8px;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 4px;
      border-radius: 4px;
      border: 1px solid var(--Primary-primary-700, #283E5A);
      cursor: pointer; }
      .saveforlater-form-container .saveforlater-trip-options .saveforlater-trip-item p,
      .saveforlater-complete .saveforlater-trip-options .saveforlater-trip-item p {
        color: var(--Primary-primary-700, #283E5A);
        text-align: center;
        font-size: 12px;
        font-style: normal;
        font-weight: 600;
        line-height: 18px;
        margin: 0; }
      .saveforlater-form-container .saveforlater-trip-options .saveforlater-trip-item svg,
      .saveforlater-complete .saveforlater-trip-options .saveforlater-trip-item svg {
        fill: #283E5A;
        width: 16px;
        height: 16px; }
  .saveforlater-form-container .spinner-layer,
  .saveforlater-complete .spinner-layer {
    padding: 8px;
    border-color: #217FA8; }

.nf-save-for-later {
  margin-left: 1rem;
  margin-top: 16px; }

.nf-booking-summary-saveforlater-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 24px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 16px;
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch;
  border-radius: 10px;
  -webkit-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25); }
  .nf-booking-summary-saveforlater-container .nf-booking-summary-saveforlater-highlight {
    border-radius: 100px;
    background: var(--Primary-primary-700, #283E5A); }
    .nf-booking-summary-saveforlater-container .nf-booking-summary-saveforlater-highlight svg {
      fill: inherit;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 48px;
      height: 48px;
      padding: 8px;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
  .nf-booking-summary-saveforlater-container .nf-saveforlater-description {
    width: 150px;
    line-height: 18px; }
  .nf-booking-summary-saveforlater-container h5 {
    color: var(--Primary-primary-700, #283E5A);
    font-size: 18px;
    font-style: normal;
    font-weight: 800;
    line-height: 27px; }
  .nf-booking-summary-saveforlater-container p {
    margin: 0;
    color: var(--Primary-primary-700, #283E5A);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 4px; }
  .nf-booking-summary-saveforlater-container .nf-booking-summary-saveforlater-journey {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--component-padding, 8px); }
    .nf-booking-summary-saveforlater-container .nf-booking-summary-saveforlater-journey .nf-booking-summary-saveforlater-journey-start {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 20px;
      height: 20px;
      padding: 4px;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      border-radius: 4px;
      background: rgba(0, 0, 0, 0.1); }
      .nf-booking-summary-saveforlater-container .nf-booking-summary-saveforlater-journey .nf-booking-summary-saveforlater-journey-start svg {
        width: 12px;
        height: 12px; }
    .nf-booking-summary-saveforlater-container .nf-booking-summary-saveforlater-journey svg {
      width: 20px;
      height: 20px;
      fill: #283E5A; }
  .nf-booking-summary-saveforlater-container button {
    border-radius: 4px;
    border: 2px solid var(--Default-btn-stroke, #217FA8);
    background: var(--Default-btn-background, #FFF);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 6px 10px 6px 16px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--component-padding, 8px);
    width: 100%; }
    .nf-booking-summary-saveforlater-container button p {
      color: var(--Default-btn-txt, #217FA8);
      font-family: var(--Font-Family-Body, Roboto);
      font-size: var(--Font-Size-Body-M, 16px);
      font-style: normal;
      font-weight: 800;
      line-height: var(--Font-Line-Height-XL, 24px); }
    .nf-booking-summary-saveforlater-container button svg {
      fill: var(--Default-btn-stroke, #217FA8); }

.nf-save-for-later-buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.nf-save-for-later-toggle {
  line-height: 1;
  text-align: right;
  padding: 0px 16px 16px 0; }

.nf-save-for-later-waiting {
  padding: 1rem; }

.nf-persisted-choose-another {
  padding-left: 1rem;
  color: #217FA8;
  cursor: pointer;
  text-decoration: underline; }

.nf-saveforlater-on-body:has(.saveforlater-form-container), .nf-saveforlater-on-body:has(.saveforlater-complete) {
  width: 100%;
  margin-left: 0; }

.nf-booking-extras-primary-section:has(.nf-saveforlater-on-body) {
  padding: unset;
  -webkit-box-shadow: unset;
          box-shadow: unset;
  margin-bottom: unset;
  background: unset;
  border-radius: unset;
  margin-bottom: 1.5rem;
  box-shadow: unset; }

.nf-saveforlater-on-body {
  width: 80%;
  margin-left: 10%; }
  .nf-saveforlater-on-body .nf-save-for-later {
    margin-top: 0;
    margin-left: 0; }
    .nf-saveforlater-on-body .nf-save-for-later .nf-booking-summary-saveforlater-container {
      padding: 12px;
      gap: 8px; }
      .nf-saveforlater-on-body .nf-save-for-later .nf-booking-summary-saveforlater-container p {
        font-size: 14px; }
      .nf-saveforlater-on-body .nf-save-for-later .nf-booking-summary-saveforlater-container .nf-booking-summary-saveforlater-highlight {
        display: none; }
      .nf-saveforlater-on-body .nf-save-for-later .nf-booking-summary-saveforlater-container button {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        -webkit-align-self: end;
            -ms-flex-item-align: end;
                    -ms-grid-row-align: end;
                align-self: end;
        margin-top: -8px; }

@media only screen and (min-width: 993px) {
  .nf-saveforlater-on-body {
    display: none; } }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-saveforlater-on-summary {
    display: none; }
  .nf-booking-summary-saveforlater-container {
    background-size: contain !important;
    background-position: right !important; } }

@media only screen and (max-width: 600px) {
  .nf-save-for-later {
    margin-left: 0;
    margin-top: 16px;
    margin-bottom: 16px; }
  .nf-saveforlater-on-summary {
    display: none; }
  .nf-saveforlater-on-body {
    width: 100%;
    margin-left: 0; }
    .nf-saveforlater-on-body .nf-booking-summary-saveforlater-container {
      background-size: contain !important;
      background-position: right !important; }
    .nf-saveforlater-on-body .nf-booking-summary-saveforlater-container button {
      border-radius: 50px;
      padding: 2px;
      margin-top: -34px; }
      .nf-saveforlater-on-body .nf-booking-summary-saveforlater-container button p {
        display: none; } }

.nf-insurance-toggle {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 1.75rem; }
  .nf-insurance-toggle label {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 0.875rem;
    font-weight: bold; }

.nf-insurance-item {
  color: #676767;
  border: 1px solid #CFCFCF;
  border-radius: 4px;
  padding: 0.5rem;
  margin: 1rem 0 1rem 0; }
  .nf-insurance-item.m--gold {
    border-color: #b3a15e; }
  .nf-insurance-item.m--silver {
    border-color: #979797; }
  .nf-insurance-item.m--selected {
    margin: 0.125rem;
    margin-top: 1.875rem;
    margin-bottom: 1.625rem;
    border-top-right-radius: 0;
    border-color: #65b146;
    border-width: 3px;
    -webkit-box-shadow: 0 0 0.0625rem rgba(69, 69, 69, 0.12), 0 0 0.125rem rgba(69, 69, 69, 0.12), 0 0 0.5rem rgba(69, 69, 69, 0.12);
            box-shadow: 0 0 0.0625rem rgba(69, 69, 69, 0.12), 0 0 0.125rem rgba(69, 69, 69, 0.12), 0 0 0.5rem rgba(69, 69, 69, 0.12); }

.nf-insurance-header {
  position: relative;
  color: #283E5A;
  margin: -0.75rem;
  padding: 0.5rem 0.75rem 0;
  font-size: 1.25rem;
  font-family: azo-sans-uber;
  line-height: 1.3;
  height: 3.25rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem; }
  .nf-insurance-header.m--gold {
    background: #b3a15e; }
  .nf-insurance-header.m--silver {
    background: #979797; }
  .nf-insurance-header.m--selected {
    background: #65b146;
    border-top-right-radius: 0; }

.nf-insurance-remove {
  color: #65b146;
  background: #FFFFFF;
  fill: #65b146;
  position: absolute;
  right: -0.1875rem;
  bottom: 100%;
  bottom: calc(100% + 0.1875rem);
  padding: 0.125rem 0.25rem 0.125rem 0.5rem;
  border: 2px solid #65b146;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
  border-bottom: 0;
  cursor: pointer;
  -webkit-transition: all 150ms ease;
  transition: all 150ms ease;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-insurance-remove svg {
    width: 1rem;
    height: 1rem;
    margin-left: 0.5rem; }
  .nf-insurance-remove:hover {
    color: #FFFFFF;
    background: #65b146;
    fill: #FFFFFF; }

.nf-insurance-name {
  width: 100%;
  max-height: 2.125rem;
  display: block;
  overflow: hidden;
  text-overflow: ellipsis; }

.nf-insurance-usp {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.8125rem;
  margin-bottom: 0.5rem; }
  .nf-insurance-usp svg {
    fill: #2dace3;
    width: 1.5rem;
    height: 1.5rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin-right: 0.625rem; }

.nf-insurance-usp-desc {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }

.nf-insurance-usp-price {
  font-weight: bold;
  line-height: 1.2; }

.nf-insurance-usp-limit {
  font-size: 0.6875rem;
  line-height: 1.2; }

.nf-insurance-price-desc {
  -webkit-transform: skew(0deg, 355deg);
          transform: skew(0deg, 355deg);
  font-family: adobe-handwriting-frank;
  font-weight: bold;
  font-size: 1.25rem;
  line-height: 1.1;
  height: 2.375rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 0.25rem 0 0.625rem;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  margin: -1rem 0.5rem 0 0; }
  .nf-insurance-price-desc.mobile {
    display: none; }
  .nf-insurance-price-desc.desktop {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }

.nf-insurance-price-and-cta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end; }
  .nf-insurance-price-and-cta .btn, .nf-insurance-price-and-cta .btn-large {
    width: 30%;
    font-weight: bold;
    color: #217FA8;
    background: transparent;
    border: 2px solid #217FA8;
    font-size: 16px;
    line-height: 20px;
    padding: 6px 16px 6px 16px; }
    .nf-insurance-price-and-cta .btn.m--selected, .nf-insurance-price-and-cta .m--selected.btn-large {
      color: #FFFFFF;
      background: #217FA8; }
      .nf-insurance-price-and-cta .btn.m--selected:hover, .nf-insurance-price-and-cta .m--selected.btn-large:hover {
        background: #217FA8; }
    .nf-insurance-price-and-cta .btn:hover, .nf-insurance-price-and-cta .btn-large:hover {
      background: #EAF7FC; }

.nf-insurance-price {
  font-weight: bold;
  font-size: 20px;
  margin: 0 0 -0.5rem 0;
  line-height: 30px; }

.nf-insurance-terms-and-conditions {
  font-size: 0.875rem;
  padding: 2rem; }
  .nf-insurance-terms-and-conditions h2 {
    text-align: left;
    font-size: 1.125rem;
    margin-bottom: 1rem; }
  .nf-insurance-terms-and-conditions ul {
    margin: 1rem 0 !important; }
    .nf-insurance-terms-and-conditions ul ul {
      background: #EEEEEE;
      padding: 1rem; }
      .nf-insurance-terms-and-conditions ul ul li {
        list-style-type: circle; }
    .nf-insurance-terms-and-conditions ul li {
      list-style-type: disc;
      list-style-position: inside; }

.nf-insurance-sub-heading {
  font-weight: bold; }
  .nf-insurance-sub-heading p {
    margin: 0; }

.nf-insurance-usp-items {
  width: 40%;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  float: left;
  margin: 1rem 0 0 0; }

.nf-insurance-footer {
  padding: 0 0 0 25%; }

.nf-insurance-desc p {
  font-size: 0.8125rem; }

.nf-insurance-total-label {
  font-size: 0.6875rem;
  display: block;
  font-weight: bold;
  text-align: right;
  color: #8A8A8A;
  margin-bottom: 0.2rem; }

.nf-insurance-price-and-label {
  display: inline-block;
  text-align: right; }

.nf-insurance-check-icon {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .nf-insurance-check-icon span {
    position: absolute;
    margin: -1.8rem 0.5rem 0 0; }
  .nf-insurance-check-icon svg {
    display: none;
    fill: #FFFFFF; }
  .nf-insurance-check-icon.m--selected svg {
    display: block; }

.nf-insurance-usp-content {
  margin: -2rem 0 0 0; }

.nf-booking-extras-insurance .nf-warning-msgbox {
  background: #fff2f2;
  border: 1px solid #A82A30;
  border-radius: 10px;
  padding: 12px 20px 12px 12px;
  margin: 1rem 0 1rem 0; }
  .nf-booking-extras-insurance .nf-warning-msgbox p {
    color: #A82A30; }
  .nf-booking-extras-insurance .nf-warning-msgbox svg {
    fill: #A82A30;
    width: 24px;
    height: 24px;
    top: 2px;
    left: 1px;
    margin-bottom: 3.5rem;
    margin-top: -2.5rem; }

.nf-insurance-accept-decline {
  text-align: right;
  margin-top: 30px;
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  background-color: #FFFFFF;
  border-top: 2px solid #EEEEEE;
  padding: 1rem;
  border-bottom-left-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem; }
  .nf-insurance-accept-decline .btn, .nf-insurance-accept-decline .btn-large {
    font-weight: 800;
    font-size: 16px;
    line-height: 24px;
    border-radius: 4px;
    padding: 12px 20px 12px 20px;
    margin: 8px;
    width: 296px;
    height: 48px; }

.nf-insurance-terms-pop-up .nf-modal-header {
  background: #289ED1; }

.nf-insurance-terms-pop-up .nf-modal-body {
  padding: 0; }

.nf-insurance-terms-pop-up .nf-modal-container {
  margin-bottom: 2rem;
  padding: 0; }

.btn-decline {
  font-weight: bold;
  color: #217FA8;
  background: transparent;
  border: 2px solid #217FA8; }
  .btn-decline:hover, .btn-decline:focus {
    background-color: #EAF7FC;
    color: #217FA8; }

.btn-accept {
  background: #478330; }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-insurance-price-desc {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 0 0.5rem 0.5rem 0; }
  .nf-insurance-price-and-cta .btn, .nf-insurance-price-and-cta .btn-large {
    width: 60%; }
  .nf-insurance-usp-items {
    margin: 0; }
  .nf-insurance-usp-content {
    margin: 0; }
  .nf-insurance-price-and-label {
    width: 50%; }
  .nf-booking-extras-insurance .nf-warning-msgbox svg {
    margin-bottom: 3.5rem;
    margin-top: -6rem; } }

@media only screen and (max-width: 600px) {
  .nf-insurance-price-desc {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 0 0.5rem 0 0; }
    .nf-insurance-price-desc.mobile {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
    .nf-insurance-price-desc.desktop {
      display: none; }
  .nf-insurance-usp-items {
    width: 100%;
    float: none;
    margin-bottom: 0.5rem; }
  .nf-insurance-usp-content {
    margin: 0; }
  .nf-insurance-price-and-cta input {
    float: right; }
  .nf-insurance-price-and-cta .btn, .nf-insurance-price-and-cta .btn-large {
    width: 100%; }
  .nf-insurance-footer {
    padding: 0; }
  .nf-insurance-header {
    font-size: 1rem; }
  .nf-insurance-sub-heading p {
    font-size: 0.8rem; }
  .nf-insurance-intro {
    display: none; }
  .nf-insurance-total-label {
    display: inline; }
  .nf-insurance-accept-decline {
    text-align: center; }
  .nf-insurance-price-and-label {
    text-align: left;
    display: block; }
  .nf-insurance-price {
    margin-right: 10px; }
  .nf-insurance-check-icon span {
    position: absolute;
    float: right;
    margin: -2.5rem 0.5rem 0 0; }
  .nf-insurance-check-icon.m--selected svg {
    margin-right: -8px;
    margin-top: 10px; }
  .nf-booking-extras-insurance .nf-warning-msgbox svg {
    margin-bottom: 6rem;
    margin-top: -7.5rem; } }

.nf-afp-wrapper .nf-notification-msgbox {
  margin: 0.5rem auto; }

.nf-afp.m--selected .btn, .nf-afp.m--selected .btn-large {
  border: 2px solid #65b146;
  background: transparent;
  color: #65b146; }

.nf-afp-service-pack-msg-info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 12px 20px 12px 12px;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 16px;
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch;
  border-radius: 10px;
  border: 1px solid #1D70B8;
  background: #F2F9FF;
  margin: 16px 0px; }
  .nf-afp-service-pack-msg-info .icon-div {
    -webkit-align-self: center;
        -ms-flex-item-align: center;
                -ms-grid-row-align: center;
            align-self: center; }
  .nf-afp-service-pack-msg-info .content {
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
                -ms-grid-row-align: stretch;
            align-self: stretch;
    color: #1D70B8;
    font-family: Roboto;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 21px; }

.nf-afp-service-pack-msg-notify {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 12px 20px 12px 12px;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 16px;
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch;
  border-radius: 10px;
  border: 1px solid #9E4C12;
  background: #FFF3EA;
  margin: 16px 0px; }
  .nf-afp-service-pack-msg-notify .icon-div {
    -webkit-align-self: center;
        -ms-flex-item-align: center;
                -ms-grid-row-align: center;
            align-self: center; }
  .nf-afp-service-pack-msg-notify .content {
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
                -ms-grid-row-align: stretch;
            align-self: stretch;
    color: #9E4C12;
    font-family: Roboto;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 21px; }

.nf-afp-usps {
  margin-top: 1rem; }

.nf-afp-usp {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.8125rem;
  color: #676767;
  line-height: 1.3;
  font-weight: bold; }
  .nf-afp-usp + .nf-afp-usp {
    margin-top: 0.5rem; }
  .nf-afp-usp svg {
    fill: #39b5e7;
    width: 1.5rem;
    height: 1.5rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin-right: 0.625rem; }

.nf-afp-total {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
  -webkit-align-items: end;
      -ms-flex-align: end;
          align-items: end;
  margin-top: 1.5rem; }
  .nf-afp-total .btn, .nf-afp-total .btn-large {
    min-width: 10rem; }
  .nf-afp-total .btn-afp-disabled {
    border: 2px solid transparent !important;
    background: #EEEEEE !important;
    color: #CFCFCF !important;
    cursor: not-allowed; }

.nf-afp-total-amount {
  font-size: 1.25rem;
  font-weight: bold;
  margin-right: auto;
  line-height: 1.1;
  margin: 2em 0 0 0;
  padding: 0 0 0.5em 0; }

.nf-afp-total-label {
  font-size: 0.6875rem;
  display: block;
  font-weight: bold; }

.nf-afp-remove {
  margin-left: 1rem;
  border: 0;
  background: none;
  font-size: 13px;
  text-decoration: underline;
  padding: 0;
  outline: none; }

@media only screen and (min-width: 993px) {
  .nf-afp {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .nf-afp-usps {
    margin-right: auto; }
  .nf-afp-total {
    margin: 0;
    -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
            align-self: flex-end; }
  .nf-afp-total-amount {
    /*margin-right:1.5rem;*/ }
  .nf-afp-total-label {
    white-space: nowrap; } }

@media only screen and (max-width: 600px) {
  .nf-afp-total {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .nf-afp-total-amount {
    padding: 0;
    margin-right: auto; } }

.nf-booking-extras-remove {
  font-size: 0.875rem; }

.nf-booking-extras-remove-info {
  margin-top: 1rem;
  fill: #2dace3;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold; }
  .nf-booking-extras-remove-info svg {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    width: 2rem;
    height: 2rem;
    margin-right: 1rem; }

.nf-booking-extras-remove-title {
  margin-right: 0.5rem; }

.nf-extras-service-pack-intro {
  padding-bottom: 0.2rem; }
  .nf-extras-service-pack-intro p {
    font-size: 14px;
    font-weight: 400;
    line-height: 21px;
    color: #676767; }

.service-pack-content {
  padding: 1rem 0 0 0; }

.service-pack-features-names {
  margin-right: 0.5rem;
  width: 100%;
  font-weight: bold;
  font-size: 0.75rem;
  border: 2px solid white;
  position: relative; }
  .service-pack-features-names li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .service-pack-features-names svg {
    width: 1.25rem;
    height: 1.25rem;
    color: gray; }

.service-pack-features-names li:first-child,
.service-pack-features-names li:last-child,
.service-pack-item li:first-child,
.service-pack-item li:last-child {
  background: none; }

.service-pack-features-names li:nth-last-child(2),
.service-pack-item li:nth-last-child(2) {
  background: none; }

.service-pack-items {
  position: relative;
  margin-right: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.service-pack-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 50%;
  margin: 0 0.5rem 0 0;
  border: 2px solid #EEEEEE;
  border-radius: 5px;
  font-size: 0.875rem;
  text-align: center;
  position: relative;
  z-index: 0; }

.service-pack-most-popular {
  z-index: 2;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 26px;
  margin-top: -28px;
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
  background: #C0FF08;
  font-size: 12px;
  font-weight: 800;
  color: #000000;
  border-radius: 8px 8px 0px 0px;
  padding: 4px 16px; }

.service-pack-item.selected {
  border: 2px solid #283E5A; }

.service-pack-item:last-child {
  margin-right: 0; }

.nf-sp-option-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.service-pack-item .Basic h3 {
  color: var(--Greyscale-greyscale-400, #8A8A8A) !important; }

.service-pack-item .Basic h4 {
  opacity: 0 !important; }

.service-pack-item .Basic .service-pack-item-header svg {
  opacity: 0; }

.service-pack-item .Basic .service-pack-addcover {
  border: none !important; }

.service-pack-item .Basic li:nth-child(2),
.service-pack-item .Basic li:nth-child(3) {
  background: var(--system-error-light, #FFF2F2); }

.service-pack-item .Basic li:nth-child(2) svg path,
.service-pack-item .Basic li:nth-child(3) svg path {
  d: path("M1 21L12 2L23 21H1ZM4.45 19H19.55L12 6L4.45 19ZM12 18C12.2833 18 12.5208 17.9042 12.7125 17.7125C12.9042 17.5208 13 17.2833 13 17C13 16.7167 12.9042 16.4792 12.7125 16.2875C12.5208 16.0958 12.2833 16 12 16C11.7167 16 11.4792 16.0958 11.2875 16.2875C11.0958 16.4792 11 16.7167 11 17C11 17.2833 11.0958 17.5208 11.2875 17.7125C11.4792 17.9042 11.7167 18 12 18ZM11 15H13V10H11V15Z"); }

.service-pack-item .Beltin\' li:nth-child(2),
.service-pack-item .Best li:nth-child(2) {
  background: var(--Secondary-secondary-100, #EFF6EC); }

.service-pack-item-header {
  height: 130px;
  text-align: center;
  font-family: azo-sans-uber;
  color: #283E5A;
  font-size: 16px;
  line-height: 16px;
  padding: 14px 8px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .service-pack-item-header h3 {
    color: var(--Primary-primary-700, #283E5A);
    margin-bottom: 0 !important;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 6px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 22px !important;
    font-weight: 400 !important; }
  .service-pack-item-header h4 {
    color: var(--Primary-primary-700, #283E5A);
    font-family: Roboto;
    font-size: 18px;
    font-style: normal;
    font-weight: 800;
    line-height: 30px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .service-pack-item-header h4 p {
      color: var(--Primary-primary-700, #283E5A);
      font-family: Roboto;
      font-size: 18px;
      font-style: normal;
      font-weight: 800;
      line-height: 30px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      gap: 8px;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin: 0;
      cursor: default; }
  .service-pack-item-header svg {
    width: 40px;
    height: 40px;
    margin-bottom: 16px; }

.service-pack-list-item-inclusion .wrap {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .service-pack-list-item-inclusion .wrap .first-multiple div:nth-child(2) {
    font-family: Roboto;
    font-size: 10px;
    font-weight: 600;
    line-height: 15px;
    letter-spacing: 0.01em;
    text-align: left; }

.service-pack-item ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  height: -webkit-fill-available;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.service-pack-list-item-text .wrap {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.service-pack-list-item-text,
.service-pack-list-item-text-option {
  height: 56px; }
  .service-pack-list-item-text div:first-child,
  .service-pack-list-item-text-option div:first-child {
    font-size: 20px; }
  .service-pack-list-item-text div:last-child,
  .service-pack-list-item-text-option div:last-child {
    font-size: 12px; }

.service-pack-list-item-inclusion,
.service-pack-list-item-text {
  padding: 4px 16px; }

.service-pack-list-item-inclusion-option {
  padding: 8px 16px;
  text-align: start;
  line-height: 16px; }
  .service-pack-list-item-inclusion-option .unavailable {
    color: var(--Greyscale-greyscale-400, #8A8A8A); }
    .service-pack-list-item-inclusion-option .unavailable svg {
      fill: #A82A30; }
  .service-pack-list-item-inclusion-option li:nth-last-child(1) {
    background: var(--Secondary-secondary-100, #EFF6EC); }
  .service-pack-list-item-inclusion-option svg {
    fill: #3E7229;
    margin-right: 12px;
    min-width: -webkit-fit-content;
    min-width: -moz-fit-content;
    min-width: fit-content; }

.service-pack-list-item-text-option {
  padding: 4px 8px 4px 8px; }

.service-pack-list-item-large-text {
  height: 64px;
  padding: 8px 12px; }
  .service-pack-list-item-large-text p {
    font-size: 12px; }
  .service-pack-list-item-large-text div:first-child {
    font-size: 20px; }
  .service-pack-list-item-large-text div:last-child {
    font-size: 12px; }

.service-pack-list-item-button {
  padding: 16px 12px; }
  .service-pack-list-item-button .btn, .service-pack-list-item-button .btn-large {
    border-radius: 4px;
    border: 2px solid #217FA8;
    gap: 8px;
    font-family: Roboto;
    font-weight: 800;
    line-height: 24px;
    letter-spacing: 0em;
    text-align: left;
    height: auto;
    min-height: 36px; }
  .service-pack-list-item-button .service-pack-addcover {
    background-color: #FFFFFF;
    color: #217FA8;
    cursor: pointer;
    min-width: -webkit-fill-available;
    text-align: center; }
  .service-pack-list-item-button .service-pack-addcover:hover {
    background-color: #EAF7FC; }
  .service-pack-list-item-button .service-pack-selected {
    background-color: #478330;
    border: 2px solid #478330;
    color: #FFFFFF;
    cursor: not-allowed;
    min-width: -webkit-fill-available;
    text-align: center; }
    .service-pack-list-item-button .service-pack-selected svg {
      fill: #FFFFFF;
      height: 16px;
      width: 16px;
      margin-right: 4px;
      padding-top: 3px; }

.sp-price {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }

.sp-price-text {
  font-weight: bold;
  font-size: 29px; }

.service-pack-check-icon svg {
  fill: #39b5e7;
  width: 1.5rem;
  height: 1.5rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0; }

.service-pack-list-item-inclusion .icon,
.service-pack-list-item-text .icon {
  cursor: pointer; }

.service-pack-info-popup {
  display: none;
  position: fixed;
  width: 296px;
  height: auto;
  border: 1px solid #EEEEEE;
  border-radius: 4px 4px 0px 0px;
  z-index: 2000;
  top: 30%;
  left: 40%; }

.service-pack-info-popup.open {
  display: block;
  background-color: white;
  overflow: hidden; }

.service-pack-info-popup-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1000; }

.service-pack-info-popup-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: auto;
  font-size: 16px !important;
  padding: 12px 16px 12px 16px;
  border-radius: 4px 4px 0px 0px;
  background-color: #289ED1;
  color: white;
  line-height: 30px;
  text-align: left; }
  .service-pack-info-popup-header .close-icon {
    cursor: pointer; }

.service-pack-info-popup-body {
  color: #454545;
  font-size: 12px;
  font-weight: normal;
  line-height: 24px;
  padding: 12px 16px 12px 16px;
  text-align: left; }

.service-pack-content-small-screen {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .service-pack-content-small-screen .Basic h5 {
    margin-left: -30px; }
  .service-pack-content-small-screen .Basic svg {
    opacity: 0; }
  .service-pack-content-small-screen .Basic .service-pack-line-item-small:nth-child(1),
  .service-pack-content-small-screen .Basic .service-pack-line-item-small:nth-child(2) {
    background: var(--Secondary-secondary-100, #FFF2F2); }
    .service-pack-content-small-screen .Basic .service-pack-line-item-small:nth-child(1) svg path,
    .service-pack-content-small-screen .Basic .service-pack-line-item-small:nth-child(2) svg path {
      d: path("M1 21L12 2L23 21H1ZM4.45 19H19.55L12 6L4.45 19ZM12 18C12.2833 18 12.5208 17.9042 12.7125 17.7125C12.9042 17.5208 13 17.2833 13 17C13 16.7167 12.9042 16.4792 12.7125 16.2875C12.5208 16.0958 12.2833 16 12 16C11.7167 16 11.4792 16.0958 11.2875 16.2875C11.0958 16.4792 11 16.7167 11 17C11 17.2833 11.0958 17.5208 11.2875 17.7125C11.4792 17.9042 11.7167 18 12 18ZM11 15H13V10H11V15Z"); }
  .service-pack-content-small-screen .Basic .service-pack-line-item-small svg {
    opacity: 1; }
  .service-pack-content-small-screen .Basic .icon svg {
    opacity: 1; }
  .service-pack-content-small-screen .Beltin\' li:nth-child(1),
  .service-pack-content-small-screen .Best li:nth-child(1) {
    background: var(--Secondary-secondary-100, #EFF6EC); }

.service-pack-accordion {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch;
  border: 2px solid #EEEEEE;
  border-radius: 4px;
  margin-bottom: 0.5rem;
  padding: 0 16px; }

.service-pack-accordion.selected {
  border: 2px solid #283E5A; }

.service-pack-line-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 48px;
  padding: 4px 12px;
  font-size: 12px;
  line-height: 20px; }
  .service-pack-line-item div:nth-child(2) {
    display: none; }

.service-pack-line-item:nth-child(even) {
  background: #EEEEEE; }

.service-pack-accordion-popular {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 8px 8px 0px 0px;
  padding: 4px 16px;
  margin-left: 35%;
  text-align: center;
  background: #C0FF02;
  font-size: 12px;
  font-weight: 800;
  line-height: 18px; }

.service-pack-accordion-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  min-height: 48px;
  padding: 4px 0;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch;
  border-bottom: 1px solid #CFCFCF;
  border-radius: 4px 4px 0px 0px;
  color: #1A6788;
  font-size: 16px;
  font-weight: 400;
  font-family: azo-sans-uber;
  line-height: 16px; }
  .service-pack-accordion-header h5 {
    color: var(--Primary-primary-700, #283E5A);
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px; }
  .service-pack-accordion-header svg {
    width: 28px;
    height: 28px; }
  .service-pack-accordion-header .footer-wrap-price {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    color: var(--Primary-primary-700, #283E5A);
    font-family: Roboto;
    font-size: 20px;
    font-style: normal;
    font-weight: 800;
    line-height: 33px; }

.service-pack-accordion-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch; }
  .service-pack-accordion-content .service-pack-line-item-small {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    min-height: 35px;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 8px;
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
            align-self: stretch; }
    .service-pack-accordion-content .service-pack-line-item-small p {
      color: var(--Greyscale-greyscale-700, #222);
      font-family: Roboto;
      font-size: 14px;
      font-style: normal;
      font-weight: 400;
      line-height: 21px;
      margin: 0; }
    .service-pack-accordion-content .service-pack-line-item-small.unavailable {
      color: var(--Greyscale-greyscale-400, #8A8A8A); }
      .service-pack-accordion-content .service-pack-line-item-small.unavailable svg {
        fill: #A82A30; }
    .service-pack-accordion-content .service-pack-line-item-small svg {
      fill: #3E7229; }

.service-pack-accordion-footer.closed {
  height: 80px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch; }
  .service-pack-accordion-footer.closed .footer-text {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    min-height: 62px;
    padding: 8px 12px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 31px;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 0;
        -ms-flex: 1 0 0px;
            flex: 1 0 0;
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
            align-self: stretch; }
    .service-pack-accordion-footer.closed .footer-text .footer-wrap-no-price {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      min-height: 62px;
      padding: 8px 12px;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 31px;
      -webkit-box-flex: 1;
      -webkit-flex: 1 0 0;
          -ms-flex: 1 0 0px;
              flex: 1 0 0;
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
              align-self: stretch; }
      .service-pack-accordion-footer.closed .footer-text .footer-wrap-no-price p {
        -webkit-align-self: stretch;
            -ms-flex-item-align: stretch;
                    -ms-grid-row-align: stretch;
                align-self: stretch;
        color: #454545;
        text-align: center;
        font-family: Roboto;
        font-size: 12px;
        font-style: normal;
        font-weight: 400;
        line-height: 18px; }
    .service-pack-accordion-footer.closed .footer-text .footer-wrap-price {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-box-flex: 1;
      -webkit-flex: 1 0 0;
          -ms-flex: 1 0 0px;
              flex: 1 0 0; }
      .service-pack-accordion-footer.closed .footer-text .footer-wrap-price .price {
        -webkit-align-self: stretch;
            -ms-flex-item-align: stretch;
                    -ms-grid-row-align: stretch;
                align-self: stretch;
        color: #454545;
        text-align: center;
        font-family: Roboto;
        font-size: 20px;
        font-style: normal;
        font-weight: 800;
        line-height: 30px; }
      .service-pack-accordion-footer.closed .footer-text .footer-wrap-price .pptext {
        -webkit-align-self: stretch;
            -ms-flex-item-align: stretch;
                    -ms-grid-row-align: stretch;
                align-self: stretch;
        color: #454545;
        text-align: center;
        font-family: Roboto;
        font-size: 12px;
        font-style: normal;
        font-weight: 400;
        line-height: 18px; }
  .service-pack-accordion-footer.closed .footer-button {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    min-height: 48px;
    padding: 16px 12px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 31px;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 0;
        -ms-flex: 1 0 0px;
            flex: 1 0 0;
    border-radius: 0px 0px 4px 4px;
    background: #FFFFFF;
    height: 100%; }
    .service-pack-accordion-footer.closed .footer-button .btn, .service-pack-accordion-footer.closed .footer-button .btn-large {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      padding: 12px 20px;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 8px;
      -webkit-box-flex: 1;
      -webkit-flex: 1 0 0;
          -ms-flex: 1 0 0px;
              flex: 1 0 0; }

.service-pack-accordion-footer.open {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: space-evenly;
  -webkit-justify-content: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch; }
  .service-pack-accordion-footer.open .footer-text {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    min-height: 62px;
    padding: 8px 12px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 31px;
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
            align-self: stretch; }
    .service-pack-accordion-footer.open .footer-text .footer-wrap-price {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .service-pack-accordion-footer.open .footer-text .footer-wrap-price .price {
        color: #454545;
        text-align: center;
        font-family: Roboto;
        font-size: 20px;
        font-style: normal;
        font-weight: 800;
        line-height: 30px; }
      .service-pack-accordion-footer.open .footer-text .footer-wrap-price .pptext {
        color: #454545;
        text-align: center;
        font-family: Roboto;
        font-size: 12px;
        font-style: normal;
        font-weight: 400;
        line-height: 18px; }
  .service-pack-accordion-footer.open .footer-button {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    min-height: 48px;
    padding: 16px 12px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 31px;
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
            align-self: stretch; }
    .service-pack-accordion-footer.open .footer-button .btn, .service-pack-accordion-footer.open .footer-button .btn-large {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      padding: 12px 20px 12px 14px;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 8px;
      -webkit-box-flex: 1;
      -webkit-flex: 1 0 0;
          -ms-flex: 1 0 0px;
              flex: 1 0 0; }

.service-pack-accordion-footer .service-pack-addcover {
  background-color: #FFFFFF;
  color: #217FA8;
  cursor: pointer;
  border-radius: 4px;
  border: 2px solid #217FA8;
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 800;
  line-height: 24px; }

.service-pack-accordion-footer .service-pack-addcover:hover {
  background-color: #EAF7FC; }

.service-pack-accordion-footer .service-pack-selected {
  background-color: #478330;
  color: #FFFFFF;
  cursor: not-allowed;
  border-radius: 4px;
  border: 2px solid #478330;
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 800;
  line-height: 24px; }
  .service-pack-accordion-footer .service-pack-selected svg {
    fill: #FFFFFF;
    height: 16px;
    width: 16px;
    margin-right: 4px;
    padding-top: 3px; }

.nf-basket-downgrade-service-pack .nf-modal-container .nf-modal-dialog {
  max-width: 529px; }
  .nf-basket-downgrade-service-pack .nf-modal-container .nf-modal-dialog .nf-modal-header {
    padding: 0; }
    .nf-basket-downgrade-service-pack .nf-modal-container .nf-modal-dialog .nf-modal-header .nf-modal-title {
      padding: 12px 16px; }
      .nf-basket-downgrade-service-pack .nf-modal-container .nf-modal-dialog .nf-modal-header .nf-modal-title h4 {
        font-family: Roboto;
        font-size: 20px;
        font-style: normal;
        font-weight: 800;
        line-height: 30px; }
  .nf-basket-downgrade-service-pack .nf-modal-container .nf-modal-dialog .nf-modal-body {
    padding: 24px 16px; }
    .nf-basket-downgrade-service-pack .nf-modal-container .nf-modal-dialog .nf-modal-body .nf-modal-content .dialog-wrap {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
      .nf-basket-downgrade-service-pack .nf-modal-container .nf-modal-dialog .nf-modal-body .nf-modal-content .dialog-wrap .dialog-message {
        color: #454545;
        font-family: Roboto;
        font-size: 16px;
        font-style: normal;
        font-weight: 400;
        line-height: 24px;
        margin-bottom: 16px; }
      .nf-basket-downgrade-service-pack .nf-modal-container .nf-modal-dialog .nf-modal-body .nf-modal-content .dialog-wrap .dialog-options {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
            -ms-flex-align: start;
                align-items: flex-start;
        gap: 16px;
        -webkit-align-self: stretch;
            -ms-flex-item-align: stretch;
                align-self: stretch; }
        .nf-basket-downgrade-service-pack .nf-modal-container .nf-modal-dialog .nf-modal-body .nf-modal-content .dialog-wrap .dialog-options .dialog-option {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          gap: 8px;
          color: #333;
          font-family: Roboto;
          font-size: 15px;
          font-style: normal;
          font-weight: 400;
          line-height: 24px;
          letter-spacing: 0.15px; }
    .nf-basket-downgrade-service-pack .nf-modal-container .nf-modal-dialog .nf-modal-body .nf-modal-buttons {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 24px;
      -webkit-box-pack: end;
      -webkit-justify-content: flex-end;
          -ms-flex-pack: end;
              justify-content: flex-end; }
      .nf-basket-downgrade-service-pack .nf-modal-container .nf-modal-dialog .nf-modal-body .nf-modal-buttons button:first-child {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        gap: 8px;
        color: #217FA8;
        font-family: Roboto;
        font-size: 16px;
        font-style: normal;
        font-weight: 600;
        line-height: 24px;
        background: white;
        margin-right: 0; }
      .nf-basket-downgrade-service-pack .nf-modal-container .nf-modal-dialog .nf-modal-body .nf-modal-buttons button:last-child {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        padding: 12px 20px;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        gap: 8px;
        border-radius: 4px;
        border: 2px solid rgba(255, 255, 255, 0);
        background: #478330;
        color: #FFFFFF;
        font-family: Roboto;
        font-size: 16px;
        font-style: normal;
        font-weight: 800;
        line-height: 24px;
        margin-right: 0; }

@media only screen and (max-width: 600px) {
  .service-pack-info-popup {
    top: 35%;
    left: 15%; }
  .nf-basket-downgrade-service-pack .nf-modal-container .nf-modal-dialog .nf-modal-body .nf-modal-buttons {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@-webkit-keyframes shrinkFont {
  0% {
    font-size: 100%; }
  100% {
    font-size: 0;
    margin: 0;
    border-bottom-width: 0;
    padding: 0; } }

@keyframes shrinkFont {
  0% {
    font-size: 100%; }
  100% {
    font-size: 0;
    margin: 0;
    border-bottom-width: 0;
    padding: 0; } }

@-webkit-keyframes hideSVG {
  0% {
    max-width: 100%;
    max-height: 100%; }
  100% {
    max-width: 0;
    max-height: 0;
    height: 0; } }

@keyframes hideSVG {
  0% {
    max-width: 100%;
    max-height: 100%; }
  100% {
    max-width: 0;
    max-height: 0;
    height: 0; } }

.nf-booking-extras {
  padding-bottom: 0; }

.nf-booking-extras-primary-section {
  padding: 1rem;
  padding: 0 0 1rem 0;
  background: #FFFFFF;
  border-radius: 0.60rem;
  margin-bottom: 1.5rem;
  -webkit-box-shadow: 0 0 0.0625rem #CFCFCF, 0 0 0.125rem #CFCFCF, 0 0 0.5rem #CFCFCF;
          box-shadow: 0 0 0.0625rem #CFCFCF, 0 0 0.125rem #CFCFCF, 0 0 0.5rem #CFCFCF; }
  .nf-booking-extras-primary-section.m--collapse-section {
    -webkit-transform: translateX(-100%) translateZ(0) scaleY(0) skewX(-30deg);
            transform: translateX(-100%) translateZ(0) scaleY(0) skewX(-30deg);
    -webkit-transition: all 2s ease 3s;
    transition: all 2s ease 3s;
    overflow: hidden;
    opacity: 0;
    padding: 0;
    margin-bottom: 0; }
    .nf-booking-extras-primary-section.m--collapse-section p,
    .nf-booking-extras-primary-section.m--collapse-section .nf-booking-extras-header,
    .nf-booking-extras-primary-section.m--collapse-section .nf-booking-extras-header-primary,
    .nf-booking-extras-primary-section.m--collapse-section .nf-booking-extras-header-secondary,
    .nf-booking-extras-primary-section.m--collapse-section .nf-booking-extras-header-desc {
      -webkit-animation: shrinkFont forwards 2s ease 3s;
              animation: shrinkFont forwards 2s ease 3s; }
    .nf-booking-extras-primary-section.m--collapse-section svg {
      -webkit-animation: hideSVG forwards 2s ease 3s;
              animation: hideSVG forwards 2s ease 3s; }
  .nf-booking-extras-primary-section .nf-booking-summary-save-for-later {
    display: none; }

.nf-booking-extras-primary:empty {
  margin-bottom: 0; }
  .nf-booking-extras-primary:empty + .nf-booking-extras-secondary {
    padding: 1rem;
    background: #FFFFFF;
    border-radius: 0.25rem;
    -webkit-box-shadow: 0 0 0.0625rem #CFCFCF, 0 0 0.125rem #CFCFCF, 0 0 0.5rem #CFCFCF;
            box-shadow: 0 0 0.0625rem #CFCFCF, 0 0 0.125rem #CFCFCF, 0 0 0.5rem #CFCFCF;
    margin-left: 0; }

.nf-primary-extra-content-wrapper {
  padding: 0rem 1.5rem; }

.nf-booking-extras-secondary {
  padding-left: 0.5rem;
  margin-left: -0.5rem;
  margin-bottom: 1.5rem;
  overflow: hidden; }
  .nf-booking-extras-secondary h2 {
    text-align: left;
    font-size: 1.25rem;
    margin: 1.25rem 0 0.625rem; }
  .nf-booking-extras-secondary .flickity-viewport {
    overflow: visible; }
  .nf-booking-extras-secondary ~ .nf-booking-summary-price-breakdown {
    color: #FFFFFF;
    background: #454545;
    padding: 1.5rem;
    margin: 2rem -1rem 0; }
    .nf-booking-extras-secondary ~ .nf-booking-summary-price-breakdown .nf-booking-summary-save-for-later {
      display: none; }

.nf-booking-extras-secondary-item {
  width: 19rem;
  height: 10.625rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 0.5rem 0;
  margin-right: 1rem;
  padding: 1rem;
  padding-top: 0;
  border-radius: 0.25rem;
  background: #FFFFFF;
  -webkit-box-shadow: 0 0 0.0625rem rgba(69, 69, 69, 0.12), 0 0 0.125rem rgba(69, 69, 69, 0.12), 0 0 0.5rem rgba(69, 69, 69, 0.12);
          box-shadow: 0 0 0.0625rem rgba(69, 69, 69, 0.12), 0 0 0.125rem rgba(69, 69, 69, 0.12), 0 0 0.5rem rgba(69, 69, 69, 0.12); }

.nf-booking-extras-secondary-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: auto;
  margin-top: auto; }
  .nf-booking-extras-secondary-content svg {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin-right: 0.75rem; }

.nf-booking-extras-secondary-title {
  color: #676767;
  font-weight: bold;
  margin: 0;
  font-size: 1rem;
  line-height: 1.1; }

.nf-booking-extras-secondary-tagline {
  color: #78b543;
  display: block;
  margin-top: 0.5rem;
  font-weight: normal;
  word-break: break-word; }

.nf-booking-extras-link-primary {
  color: #2dace3;
  text-decoration: underline;
  display: inline-block;
  background: none;
  border: 0;
  padding: 0;
  font-size: 0.8125rem; }

/*Advice Section*/
.nf-booking-summary-sidebar ~ .nf-booking-extras-advice-section {
  margin-left: 1rem; }

.nf-booking-extras-advice-section {
  display: none;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 1.5rem;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .nf-booking-extras-advice-section img {
    width: 100%; }

.nf-booking-extras-trustpilot-section {
  height: 12rem;
  display: none;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .nf-booking-extras-trustpilot-section img {
    width: 70%; }

.nf-booking-extras-advice-image {
  margin-right: 1rem; }
  .nf-booking-extras-advice-image svg {
    width: 4.5rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0; }

.nf-booking-extras-advice-title {
  color: #B5E2F5;
  font-weight: bold;
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.3; }

.nf-booking-extras-advice-text {
  color: #676767;
  font-size: 0.9375rem;
  line-height: 1.3;
  margin: 0.375rem 0; }
  .nf-booking-extras-advice-text + .nf-booking-extras-advice-phone {
    color: #B5E2F5;
    font-size: 1.25rem;
    font-weight: bold;
    text-decoration: none; }

@media only screen and (min-width : 601px) {
  .nf-booking-extras-primary ~ .nf-booking-summary-price-breakdown {
    display: none; }
  .nf-booking-extras-primary ~ .nf-booking-extras-advice-section {
    display: none; }
  .nf-booking-extras-primary ~ .nf-booking-extras-trustpilot-section {
    display: none; } }

@media only screen and (min-width: 993px) {
  .nf-booking-extras-primary-section {
    padding: 0 0 1.5rem 0;
    -webkit-box-shadow: none;
            box-shadow: none;
    margin-bottom: 5%; }
  .nf-booking-summary-sidebar ~ .nf-booking-extras-advice-section {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .nf-booking-summary-sidebar ~ .nf-booking-extras-trustpilot-section {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; } }

@media only screen and (max-width : 600px) {
  .nf-primary-extra-content-wrapper-hotel,
  .nf-primary-extra-content-wrapper-car {
    padding-bottom: 1.5rem; } }

@-webkit-keyframes rotateSpinner {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes rotateSpinner {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.nf-booking-checkout-processing {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 20000;
  color: #FFFFFF;
  background: #289ED1;
  text-align: center;
  overflow-y: scroll; }
  .nf-booking-checkout-processing:before {
    content: '';
    display: inline-block;
    width: 100%;
    height: 0.3125rem;
    position: absolute;
    top: 0;
    left: 0;
    background: #2dace3; }

.nf-booking-checkout-processing--logo {
  margin: 4rem 0 2rem; }
  .nf-booking-checkout-processing--logo svg {
    width: 15rem;
    height: 3.75rem; }

.nf-booking-checkout-processing--logo svg.nf-lcy-logo {
  position: static;
  -webkit-transform: none;
          transform: none;
  width: 240px;
  height: 20px; }

.nf-booking-checkout-processing--secondarylogo svg.nf-powered-by {
  position: static;
  -webkit-transform: none;
          transform: none; }

.nf-booking-checkout-processing--spinner {
  fill: none;
  stroke-width: 3px;
  stroke-dasharray: 130;
  stroke-linecap: round;
  -webkit-transform: translateZ(0);
          transform: translateZ(0); }
  .nf-booking-checkout-processing--spinner #circle {
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    -webkit-animation: rotateSpinner 2s linear infinite;
            animation: rotateSpinner 2s linear infinite; }

.nf-booking-checkout-processing--text {
  font-size: 1rem;
  line-height: 1.3; }

.nf-booking-checkout-processing-status {
  margin-top: 2rem;
  display: -ms-inline-grid;
  display: inline-grid;
  grid-column-gap: 1.25rem;
  -ms-grid-rows: auto auto auto;
  -ms-grid-columns: minmax(-webkit-max-content, auto);
  -ms-grid-columns: minmax(max-content, auto);
      grid-template: "step-1" auto "step-2" auto "step-3" auto/minmax(-webkit-max-content, auto);
      grid-template: "step-1" auto "step-2" auto "step-3" auto/minmax(max-content, auto); }

.nf-booking-checkout-processing-status--step:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: step-1; }

.nf-booking-checkout-processing-status--step:nth-child(2) {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: step-2; }

.nf-booking-checkout-processing-status--step:nth-child(3) {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: step-3; }

.nf-booking-checkout-processing-status--step {
  font-size: 0.75rem;
  opacity: 0.5;
  position: relative;
  padding-left: 1.75rem;
  display: inline-block;
  -webkit-transition: all ease 100ms;
  transition: all ease 100ms;
  margin: 0.625rem 0; }

.nf-booking-checkout-processing-status--step:before {
  content: '';
  display: inline-block;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #FFFFFF;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  border: 8px solid #FFFFFF;
  -webkit-transition: all ease 300ms;
  transition: all ease 300ms; }

.nf-booking-checkout-processing-status--step.m--current,
.nf-booking-checkout-processing-status--step.m--done {
  opacity: 1; }

.nf-booking-checkout-processing-status--step.m--done:before {
  background: #78b543;
  border: 2px solid #FFFFFF; }

.nf-booking-failure {
  padding: 2rem;
  background: #FFFFFF; }

.nf-booking-checkout .nf-invisible-form {
  visibility: hidden; }

.nf-booking-checkout .nf-3d-secure-iframe {
  width: 100%;
  height: 30rem;
  display: block;
  margin: 0 auto;
  border: none; }

.nf-basket-summary p {
  font-size: 0.75rem;
  margin: 0; }

.nf-booking-checkout-save-for-later .saveforlater-form-container, .nf-booking-checkout-save-for-later .nf-booking-summary-saveforlater-container {
  margin-left: 0; }

.nf-booking-checkout-paypal-static-content {
  border: 1px solid #CFCFCF;
  border-radius: 0.625rem;
  padding: 0.313rem;
  font-size: 0.625rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 1rem;
  text-align: center; }
  .nf-booking-checkout-paypal-static-content .nf-paypal-static-content-icon {
    display: block; }
    .nf-booking-checkout-paypal-static-content .nf-paypal-static-content-icon svg {
      width: 80;
      height: 20; }
  .nf-booking-checkout-paypal-static-content .nf-paypal-static-content-description {
    display: block; }
    .nf-booking-checkout-paypal-static-content .nf-paypal-static-content-description .nf-paypal-static-content-description-line-1 {
      margin-bottom: 0.125rem; }

.nf-booking-checkout-payment-mode .nf-form-radio-label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.625rem 0;
  margin: 0;
  border-bottom: 1px solid #CFCFCF;
  position: relative;
  font-size: 0.75rem;
  cursor: pointer; }
  .nf-booking-checkout-payment-mode .nf-form-radio-label + .nf-form-radio-label {
    border-bottom: 0; }
  .nf-booking-checkout-payment-mode .nf-form-radio-label:hover:before, .nf-booking-checkout-payment-mode .nf-form-radio-label:focus:before {
    background: #ABDEF4; }
  .nf-booking-checkout-payment-mode .nf-form-radio-label:before {
    content: "";
    display: block;
    width: 1.5rem;
    height: 1.5rem;
    margin-right: 1.25rem;
    border-radius: 50%;
    border: 2px solid #454545;
    fill: #FFFFFF;
    background-color: #FFFFFF;
    background-size: 1.25rem;
    background-position: 50% 50%;
    background-repeat: no-repeat; }
  .nf-booking-checkout-payment-mode .nf-form-radio-label.m--checked:before {
    background-color: #217FA8;
    border-color: #FFFFFF;
    outline: 2px solid #454545; }
  .nf-booking-checkout-payment-mode .nf-form-radio-label.m--checked:hover:before {
    border-color: #ABDEF4; }
  .nf-booking-checkout-payment-mode .nf-form-radio-label.m--checked + .nf-form-radio-label {
    opacity: 0.5; }
  .nf-booking-checkout-payment-mode .nf-form-radio-label input[type=radio] {
    opacity: 0;
    width: 0;
    height: 0; }
  .nf-booking-checkout-payment-mode .nf-form-radio-label.m--cc svg {
    width: 36px;
    height: 36px; }
  .nf-booking-checkout-payment-mode .nf-form-radio-label.m--pp svg {
    width: 100px;
    height: 26px; }
  .nf-booking-checkout-payment-mode .nf-form-radio-label svg {
    margin-right: 1.25rem; }

@media only screen and (min-width: 601px) {
  .nf-booking-checkout-processing-status {
    margin-top: 12vh;
    grid-column-gap: 1.25rem;
    -ms-grid-rows: auto;
    -ms-grid-columns: minmax(-webkit-max-content, 1fr) 1.25rem minmax(-webkit-max-content, 1fr) 1.25rem minmax(-webkit-max-content, 1fr);
    -ms-grid-columns: minmax(max-content, 1fr) 1.25rem minmax(max-content, 1fr) 1.25rem minmax(max-content, 1fr);
        grid-template: "step-1 step-2 step-3" auto/minmax(-webkit-max-content, 1fr) minmax(-webkit-max-content, 1fr) minmax(-webkit-max-content, 1fr);
        grid-template: "step-1 step-2 step-3" auto/minmax(max-content, 1fr) minmax(max-content, 1fr) minmax(max-content, 1fr); }
  .nf-booking-checkout-processing-status--step:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .nf-booking-checkout-processing-status--step:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .nf-booking-checkout-processing-status--step:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5; } }

@media only screen and (min-width: 993px) {
  .nf-booking-checkout-paypal-static-content {
    border: 1px solid #CFCFCF;
    border-radius: 0.625rem;
    padding: 0.313rem;
    font-size: 0.625rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: 1rem;
    text-align: left; }
    .nf-booking-checkout-paypal-static-content .nf-paypal-static-content-icon {
      display: inline-block;
      padding: 0rem 0.625rem; }
      .nf-booking-checkout-paypal-static-content .nf-paypal-static-content-icon svg {
        width: 80;
        height: 20; }
    .nf-booking-checkout-paypal-static-content .nf-paypal-static-content-description {
      display: inline-block;
      padding: 0rem 0.625rem; }
      .nf-booking-checkout-paypal-static-content .nf-paypal-static-content-description .nf-paypal-static-content-description-line-1 {
        margin-bottom: 0.125rem; } }

.nf-journey-progress {
  position: absolute;
  height: 1px;
  background: #FFFFFF;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  white-space: nowrap;
  margin: 1.5rem 0;
  z-index: 1; }

.nf-journey-progress-indicator {
  color: #FFFFFF;
  font-size: 0.6875rem;
  font-size: 0.625rem;
  display: inline-block;
  white-space: nowrap;
  width: 3.5rem;
  text-align: center; }
  .nf-journey-progress-indicator:before {
    content: '';
    display: block;
    width: 0.875rem;
    height: 0.875rem;
    background: #FFFFFF;
    border: 0.125rem solid #FFFFFF;
    border-radius: 50%;
    -webkit-box-shadow: 0 0 0 0.25rem #2dace3;
            box-shadow: 0 0 0 0.25rem #2dace3;
    margin: -0.4375rem auto 0.25rem; }
  .nf-journey-progress-indicator.m--complete:before {
    background: #65b146; }
  .nf-journey-progress-indicator.m--active:before {
    background: #65b146; }
  .nf-journey-progress-indicator:nth-child(1) {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
  .nf-journey-progress-indicator:nth-child(3) {
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
    margin-right: 0; }

.nf-booking-extras,
.nf-booking-confirmation,
.nf-booking-checkout,
.nf-check-my-booking {
  position: relative;
  background: #EEEEEE;
  padding: 2rem 1rem;
  padding-top: 4rem;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }
  .nf-booking-extras .container,
  .nf-booking-confirmation .container,
  .nf-booking-checkout .container,
  .nf-check-my-booking .container {
    overflow: visible; }
  .nf-booking-extras h1,
  .nf-booking-confirmation h1,
  .nf-booking-checkout h1,
  .nf-check-my-booking h1 {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 1.125rem; }
  .nf-booking-extras h3,
  .nf-booking-confirmation h3,
  .nf-booking-checkout h3,
  .nf-check-my-booking h3 {
    font-size: 1rem;
    font-weight: bold;
    margin-bottom: 1.5rem; }
  .nf-booking-extras a,
  .nf-booking-confirmation a,
  .nf-booking-checkout a,
  .nf-check-my-booking a {
    display: inline-block;
    color: #217FA8;
    font-size: 14px;
    font-weight: 600; }
    .nf-booking-extras a:hover,
    .nf-booking-confirmation a:hover,
    .nf-booking-checkout a:hover,
    .nf-check-my-booking a:hover {
      color: #1A6788; }
    .nf-booking-extras a:active,
    .nf-booking-confirmation a:active,
    .nf-booking-checkout a:active,
    .nf-check-my-booking a:active {
      color: #283E5A; }
  .nf-booking-extras ul,
  .nf-booking-confirmation ul,
  .nf-booking-checkout ul,
  .nf-check-my-booking ul {
    margin: 0; }
  .nf-booking-extras:before,
  .nf-booking-confirmation:before,
  .nf-booking-checkout:before,
  .nf-check-my-booking:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 15rem;
    background: #2dace3; }
  .nf-booking-extras footer,
  .nf-booking-confirmation footer,
  .nf-booking-checkout footer,
  .nf-check-my-booking footer {
    display: none; }

.nf-booking-extras .nf-booking-summary-sidebar {
  padding: 0; }
  .nf-booking-extras .nf-booking-summary-sidebar:after {
    content: none; }
  .nf-booking-extras .nf-booking-summary-sidebar .nf-basket-summary-more-detail {
    display: none; }

.nf-booking-extras .nf-branded-fare-attributes,
.nf-booking-extras .nf-flight-optional-extras,
.nf-booking-confirmation .nf-branded-fare-attributes,
.nf-booking-confirmation .nf-flight-optional-extras {
  display: inline-block; }

.nf-booking-extras .nf-flight-optional-bag,
.nf-booking-confirmation .nf-flight-optional-bag {
  display: inline-block;
  line-height: 1.25;
  background: #fff8ee;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0.375rem;
  margin-right: 0.375rem; }

.nf-booking-extras .nf-flight-option-label,
.nf-booking-confirmation .nf-flight-option-label {
  font-weight: normal; }

.nf-booking-extras h1,
.nf-booking-confirmation h1 {
  font-family: azo-sans-uber;
  font-display: auto;
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
  font-size: 2.25rem;
  color: #B5E2F5; }

.nf-basket-summary-title {
  font-weight: bold;
  margin-bottom: 0.75rem; }

.nf-booking-confirmation-section,
.nf-booking-checkout-step {
  position: relative;
  padding: 2rem;
  padding-bottom: 2.5rem;
  background-color: #FFFFFF;
  margin-bottom: 1.25rem;
  -webkit-transition: all ease 400ms;
  transition: all ease 400ms; }
  .nf-booking-confirmation-section:before,
  .nf-booking-checkout-step:before {
    content: "";
    display: block;
    border-top-left-radius: 0.625rem;
    border-top-right-radius: 0.625rem;
    width: 100%;
    height: 0.625rem;
    position: absolute;
    left: 0;
    bottom: 100%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' viewBox='0 0 75 75'%3E%3Cpath d='M0 0v75h75V0H0zm37.5 57C26.2 57 17 47.8 17 36.5S26.2 16 37.5 16 58 25.2 58 36.5 48.8 57 37.5 57z' fill='%23fff'/%3E%3C/svg%3E");
    background-repeat: repeat;
    background-position: left top -0.5rem; }
  .nf-booking-confirmation-section:after,
  .nf-booking-checkout-step:after {
    content: "";
    display: block;
    border-bottom-left-radius: 0.625rem;
    border-bottom-right-radius: 0.625rem;
    width: 100%;
    height: 0.625rem;
    position: absolute;
    left: 0;
    top: 100%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' viewBox='0 0 75 75'%3E%3Cpath d='M0 0v75h75V0H0zm37.5 57C26.2 57 17 47.8 17 36.5S26.2 16 37.5 16 58 25.2 58 36.5 48.8 57 37.5 57z' fill='%23fff'/%3E%3C/svg%3E");
    background-repeat: repeat;
    background-position: left bottom -0.5rem;
    background-position-y: 0.125rem; }
  .nf-booking-confirmation-section &gt; div,
  .nf-booking-checkout-step &gt; div {
    -webkit-transition: all ease 400ms;
    transition: all ease 400ms; }
  .nf-booking-confirmation-section:first-of-type,
  .nf-booking-checkout-step:first-of-type {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem; }
  .nf-booking-confirmation-section:first-of-type:before,
  .nf-booking-checkout-step:first-of-type:before {
    content: none; }
  .nf-booking-confirmation-section:last-of-type,
  .nf-booking-checkout-step:last-of-type {
    border-bottom-left-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem; }
  .nf-booking-confirmation-section:last-of-type:after,
  .nf-booking-checkout-step:last-of-type:after {
    content: none; }
  .nf-booking-confirmation-section h4,
  .nf-booking-checkout-step h4 {
    font-size: 0.9375rem;
    font-weight: bold;
    margin-bottom: 1rem; }
  .nf-booking-confirmation-section.m--active &gt; div,
  .nf-booking-checkout-step.m--active &gt; div {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1; }
  .nf-booking-confirmation-section.m--active:after,
  .nf-booking-checkout-step.m--active:after {
    z-index: -1; }
  .nf-booking-confirmation-section.m--inactive.m--completed &gt; div,
  .nf-booking-checkout-step.m--inactive.m--completed &gt; div {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  .nf-booking-confirmation-section.m--inactive.m--complete &gt; div,
  .nf-booking-checkout-step.m--inactive.m--complete &gt; div {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  .nf-booking-confirmation-section.m--inactive.m--completed &gt; div,
  .nf-booking-checkout-step.m--inactive.m--completed &gt; div {
    opacity: 1; }
  .nf-booking-confirmation-section.m--inactive h3,
  .nf-booking-checkout-step.m--inactive h3 {
    color: #CFCFCF; }
  .nf-booking-confirmation-section.m--completed h3,
  .nf-booking-checkout-step.m--completed h3 {
    color: #454545; }

.nf-booking-checkout-step {
  -webkit-transition: all ease-out 400ms;
  transition: all ease-out 400ms; }
  .nf-booking-checkout-step &gt; div {
    opacity: 0;
    -webkit-transition: all ease-out 400ms;
    transition: all ease-out 400ms;
    -webkit-transform: translateY(2.5rem);
            transform: translateY(2.5rem); }
  .nf-booking-checkout-step.m--active {
    z-index: 1; }
    .nf-booking-checkout-step.m--active &gt; div {
      opacity: 1; }
  .nf-booking-checkout-step.m--inactive.m--completed &gt; div {
    opacity: 1; }

.nf-booking-summary-sidebar {
  position: relative;
  padding: 2rem;
  margin-left: 1rem;
  background: #FFFFFF;
  border-radius: 0.25rem;
  -webkit-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25); }

.nf-booking-confirmation-section--heading {
  font-size: 1.125rem;
  font-weight: bold;
  margin-bottom: 1rem; }

.nf-booking-confirmation-title {
  font-size: 0.8125rem;
  font-weight: normal;
  margin: 1rem 0;
  text-align: left;
  line-height: 1.4;
  font-family: "Roboto", Arial, sans-serif;
  color: #393939; }

.nf-booking-reference {
  font-size: 0.875rem;
  padding: 0.5rem 1rem;
  margin-bottom: 1rem;
  text-align: left;
  border: 1px solid #78b543;
  background: #e1efd5; }

.nf-booking-reference--ref {
  display: block;
  font-weight: bold;
  font-size: 1.25rem;
  letter-spacing: 0.125rem; }

.nf-booking-confirmation-info {
  border: 1px solid #2dace3;
  background: #e1f3fb;
  padding: 0.75rem 1rem; }

.nf-booking-email {
  font-size: 0.875rem;
  margin: 0 0 0.5rem 0; }

.nf-booking-confirmation-email {
  color: #78b543;
  font-weight: bold; }

.nf-booking-confirmation-disclaimer {
  font-size: 0.6875rem;
  margin: 0; }

.nf-booking-confirmation-save-summary {
  font-size: 0.75rem;
  color: #676767;
  margin: 0;
  text-align: center;
  line-height: 1.2;
  margin-top: 1rem; }

.nf-basket-summary-branded-fare span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .nf-basket-summary-branded-fare span svg {
    width: 16px;
    height: 16px;
    margin-right: 8px; }

.nf-insurance-summary .nf-basket-summary-insurance-name {
  display: block;
  font-size: 0.75rem; }

.nf-insurance-summary .nf-basket-summary-insurance-link {
  margin-top: 1rem;
  color: #217FA8;
  font-size: 14px;
  font-weight: 400;
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline; }

.nf-service-pack-list-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 8px; }
  .nf-service-pack-list-container .service-pack-title {
    color: #1A6788;
    font-family: azo-sans-uber;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 36px;
    letter-spacing: 0.2px; }
  .nf-service-pack-list-container .nf-service-pack-horizontal-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-align-content: flex-start;
        -ms-flex-line-pack: start;
            align-content: flex-start;
    gap: 16px;
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
            align-self: stretch;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .nf-service-pack-list-container .nf-service-pack-horizontal-list li {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 8px;
      color: #333;
      font-family: Roboto;
      font-size: 15px;
      font-style: normal;
      font-weight: 400;
      line-height: 24px;
      letter-spacing: 0.15px; }

@media only screen and (min-width: 601px) {
  .nf-journey-funnel .nf-nav-links {
    display: none; }
  .nf-journey-funnel .nf-logo {
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 1rem; }
  .nf-journey-funnel header nav {
    position: absolute;
    background: none;
    border-bottom: 0; }
  .nf-journey-funnel nav .nav-wrapper {
    height: 4rem;
    line-height: 4rem; }
  .nf-journey-funnel .nf-journey-wrapper {
    padding-top: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    min-height: 100vh; }
  .nf-journey-funnel .sidenav-trigger {
    display: none; }
  .nf-journey-funnel footer {
    margin-top: auto; } }

@media only screen and (max-width: 992px) {
  .nf-booking-extras h3,
  .nf-booking-confirmation h3,
  .nf-booking-checkout h3 {
    margin-bottom: 1rem; } }

@media only screen and (max-width: 600px) {
  .nf-booking-confirmation-section,
  .nf-booking-checkout-step {
    padding: 1.5rem; }
    .nf-booking-confirmation-section:first-of-type:before,
    .nf-booking-checkout-step:first-of-type:before {
      content: ''; }
  .nf-booking-confirmation-section:first-of-type:before {
    content: none; }
  .nf-booking-confirmation-section:last-of-type:after {
    content: ''; }
  .nf-journey-funnel .sidenav-trigger {
    display: none; }
  .nf-journey-funnel header nav {
    border-bottom: 0; }
  .nf-booking-extras h3, .nf-booking-extras h4,
  .nf-booking-confirmation h3,
  .nf-booking-confirmation h4,
  .nf-booking-checkout h3,
  .nf-booking-checkout h4 {
    font-size: 1rem; }
  .nf-booking-confirmation .nf-booking-summary-sidebar,
  .nf-booking-checkout .nf-booking-summary-sidebar {
    -webkit-box-shadow: none;
            box-shadow: none; }
  .nf-booking-confirmation .nf-booking-summary-sidebar:before {
    content: "";
    display: block;
    border-top-left-radius: 0.625rem;
    border-top-right-radius: 0.625rem;
    width: 100%;
    height: 0.625rem;
    position: absolute;
    left: 0;
    bottom: 100%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' viewBox='0 0 75 75'%3E%3Cpath d='M0 0v75h75V0H0zm37.5 57C26.2 57 17 47.8 17 36.5S26.2 16 37.5 16 58 25.2 58 36.5 48.8 57 37.5 57z' fill='%23fff'/%3E%3C/svg%3E");
    background-repeat: repeat;
    background-position: left top -0.5rem; }
  .nf-booking-confirmation .nf-booking-summary-sidebar:after {
    content: none; }
  .nf-booking-confirmation h1 {
    font-size: 1.5rem; }
  .nf-booking-summary-sidebar {
    margin-left: 0;
    padding: 1.5rem;
    margin-bottom: 1.25rem; }
    .nf-booking-summary-sidebar:after {
      content: "";
      display: block;
      border-bottom-left-radius: 0.625rem;
      border-bottom-right-radius: 0.625rem;
      width: 100%;
      height: 0.625rem;
      position: absolute;
      left: 0;
      top: 100%;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' viewBox='0 0 75 75'%3E%3Cpath d='M0 0v75h75V0H0zm37.5 57C26.2 57 17 47.8 17 36.5S26.2 16 37.5 16 58 25.2 58 36.5 48.8 57 37.5 57z' fill='%23fff'/%3E%3C/svg%3E");
      background-repeat: repeat;
      background-position: left bottom -0.5rem;
      background-position-y: 0.125rem; } }

@-webkit-keyframes header-loading {
  0% {
    left: 0;
    right: 100%; }
  50% {
    left: 0;
    right: 0; }
  100% {
    left: 100%;
    right: 0; } }

@keyframes header-loading {
  0% {
    left: 0;
    right: 100%; }
  50% {
    left: 0;
    right: 0; }
  100% {
    left: 100%;
    right: 0; } }

@-webkit-keyframes result-loading {
  0% {
    background: rgba(255, 255, 255, 0.5); }
  50% {
    background: rgba(255, 255, 255, 0.9); }
  100% {
    background: rgba(255, 255, 255, 0.5); } }

@keyframes result-loading {
  0% {
    background: rgba(255, 255, 255, 0.5); }
  50% {
    background: rgba(255, 255, 255, 0.9); }
  100% {
    background: rgba(255, 255, 255, 0.5); } }

.nf-flight-results-list {
  padding: 1rem;
  max-width: 60.5rem; }
  .nf-flight-results-list.m--disable {
    opacity: 0.3; }
  .nf-flight-results-list .nf-booking-warning-msgbox {
    font-size: 0.875rem;
    fill: #d68300;
    border: 1px solid #d68300;
    padding: 1rem;
    background: #fbddb1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 1.75rem; }
    .nf-flight-results-list .nf-booking-warning-msgbox svg {
      fill: inherit;
      width: 1.5rem;
      height: 1.5rem;
      -webkit-flex-shrink: 0;
          -ms-flex-negative: 0;
              flex-shrink: 0;
      margin-right: 1rem; }

.nf-flight-results-header {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: header;
  color: #FFFFFF;
  background: #283E5A;
  font-display: auto;
  line-height: 2.3;
  padding: 0 1rem;
  opacity: 1;
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
  z-index: 3;
  position: relative;
  -webkit-transition: all ease 200ms;
  transition: all ease 200ms;
  overflow: hidden; }
  .nf-flight-results-header.loading {
    color: transparent; }
  .nf-flight-results-header:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    background: rgba(0, 0, 0, 0.2); }
  .nf-flight-results-header.loading:before {
    -webkit-animation: header-loading 2000ms infinite;
            animation: header-loading 2000ms infinite; }
  .nf-flight-results-header .nf-flight-results-header-primary {
    color: #FFFFFF;
    text-align: left;
    font-size: 1.25rem;
    font-family: azo-sans-uber;
    float: left; }
  .nf-flight-results-header .nf-flight-results-header-secondary {
    margin: 0;
    color: #FFFFFF;
    line-height: 1;
    font-family: adobe-handwriting-frank;
    font-display: auto;
    font-style: normal;
    font-weight: 400;
    font-stretch: normal;
    font-size: 1.25rem;
    -webkit-transform: skew(0deg, 355deg);
    transform: skew(0deg, 355deg);
    float: right;
    padding: 1rem 2rem 0 0; }

.nf-flight-result {
  position: relative;
  width: 100%;
  -webkit-transition: all ease 150ms;
  transition: all ease 150ms;
  margin-bottom: 1rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto auto auto;
  -ms-grid-columns: 1fr;
      grid-template: "header" auto "stub" auto "main" auto / 1fr; }
  .nf-flight-result * {
    -moz-user-select: none;
     -ms-user-select: none;
         user-select: none;
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent; }
  .nf-flight-result ~ .nf-flight-result {
    margin-top: 1rem; }
    .nf-flight-result ~ .nf-flight-result .nf-flight-result-stub {
      border-top-left-radius: 0.5rem;
      border-top-right-radius: 0.5rem; }
  .nf-flight-result.loading {
    opacity: 0.2; }

.nf-flight-result-main {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: main;
  position: relative;
  padding: 1rem;
  background-color: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom-right-radius: 0.5rem;
  border-bottom-left-radius: 0.5rem; }
  .nf-flight-result-main:after {
    content: "";
    display: block;
    border-top-left-radius: 0.625rem;
    border-top-right-radius: 0.625rem;
    width: 100%;
    height: 0.625rem;
    position: absolute;
    left: 0;
    bottom: 100%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' viewBox='0 0 75 75'%3E%3Cpath d='M0 0v75h75V0H0zm37.5 57C26.2 57 17 47.8 17 36.5S26.2 16 37.5 16 58 25.2 58 36.5 48.8 57 37.5 57z' fill='%23fff'/%3E%3C/svg%3E");
    background-repeat: repeat;
    background-position: left top -0.5rem; }
  .nf-flight-result-main.border {
    border-left: 1px solid #283E5A;
    border-bottom: 1px solid #283E5A; }

.nf-flight-result-labels {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.nf-flight-result-labels-flexible-amend,
.nf-flight-result-labels-flexible-cancel {
  font-size: 0.8125rem;
  margin: 0;
  color: #4a4a4a;
  background: #fff8ee;
  line-height: 1.4;
  border-radius: 4px;
  padding: 0.1875rem 1rem 0.1875rem 0.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: left;
  margin-top: 0.75rem; }
  .nf-flight-result-labels-flexible-amend svg,
  .nf-flight-result-labels-flexible-cancel svg {
    width: 1.125rem;
    height: 1.125rem;
    fill: #2dace3;
    display: block;
    margin-right: 0.5rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0; }

.nf-flight-result-stub {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: stub;
  position: relative;
  text-align: right;
  padding: 1rem;
  padding-bottom: 0.75rem;
  margin-bottom: 1.25rem;
  background-color: #FFFFFF; }
  .nf-flight-result-stub:before {
    content: "";
    display: block;
    border-bottom-left-radius: 0.625rem;
    border-bottom-right-radius: 0.625rem;
    width: 100%;
    height: 0.625rem;
    position: absolute;
    left: 0;
    top: 100%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' viewBox='0 0 75 75'%3E%3Cpath d='M0 0v75h75V0H0zm37.5 57C26.2 57 17 47.8 17 36.5S26.2 16 37.5 16 58 25.2 58 36.5 48.8 57 37.5 57z' fill='%23fff'/%3E%3C/svg%3E");
    background-repeat: repeat;
    background-position: left bottom -0.5rem;
    background-position-y: 0.125rem; }
  .nf-flight-result-stub .nf-flight-result-alternatives {
    display: none; }
  .nf-flight-result-stub.border {
    border-bottom: 1px solid #283E5A;
    border-right: 1px solid #283E5A; }

.nf-flight-result-segment {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 1rem;
  margin-top: 0.75rem; }
  .nf-flight-result-segment + .nf-flight-result-segment {
    margin-top: 0.375rem;
    padding-top: 1rem;
    border-top: 1px dashed #EEEEEE;
    padding-bottom: 1.375rem; }

.nf-flight-result-segment-carrier {
  font-size: 0.675rem;
  padding-right: 1rem;
  width: 7.5rem; }

.nf-flight-result-segment-class {
  color: #979797;
  display: block;
  margin-bottom: 0.5rem; }

.nf-flight-result-segment-logo {
  display: block;
  width: 4rem;
  min-height: 2rem; }

.nf-flight-result-segment-operated-by {
  font-size: 0.625rem;
  display: block;
  margin-top: 0.5rem;
  color: #979797; }

.nf-flight-result-segment-itinerary {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around; }
  .nf-flight-result-segment-itinerary:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 20%;
    right: 20%;
    height: 1px;
    background: #676767; }

.nf-flight-result-segment-depart,
.nf-flight-result-segment-arrival {
  text-align: right;
  padding-right: 1rem;
  background: #FFFFFF;
  z-index: 1;
  width: 4rem;
  margin-top: 0.635rem; }
  .nf-flight-result-segment-depart.m--mismatch .nf-flight-result-segment-code,
  .nf-flight-result-segment-arrival.m--mismatch .nf-flight-result-segment-code {
    background-color: #f8e71e;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex; }
  .nf-flight-result-segment-depart.m--mismatch .nf-flight-result-segment-airport,
  .nf-flight-result-segment-arrival.m--mismatch .nf-flight-result-segment-airport {
    margin-top: 0.0125rem; }
  .nf-flight-result-segment-depart span,
  .nf-flight-result-segment-arrival span {
    display: block;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    line-height: 1.1; }

.nf-flight-result-segment-arrival {
  text-align: left;
  padding-right: 0;
  padding-left: 1rem; }
  .nf-flight-result-segment-arrival span {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-flow: row-reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse; }

.nf-flight-result-segment-time {
  font-weight: bold;
  font-size: 1rem;
  position: relative; }
  .nf-flight-result-segment-time sup {
    position: absolute;
    top: auto;
    bottom: 100%;
    line-height: 1.5;
    white-space: nowrap;
    font-weight: normal; }

.nf-flight-result-segment-code {
  font-size: 0.9375rem; }
  .nf-flight-result-segment-code svg {
    fill: #454545;
    width: 1.25rem;
    height: 1.25rem;
    margin: 0 0.25rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0; }

.nf-flight-result-segment-airport {
  font-size: 0.6875rem; }

.nf-flight-result-segment-journey {
  position: relative;
  text-align: center;
  font-size: 0.75rem;
  padding: 0 0.5rem;
  background: #FFFFFF;
  z-index: 1; }
  .nf-flight-result-segment-journey span {
    display: block; }
  .nf-flight-result-segment-journey svg {
    fill: #2dace3;
    width: 1rem;
    height: 1rem; }

.nf-flight-result-segment-duration {
  color: #979797;
  margin-bottom: 0.125rem;
  white-space: nowrap; }

.nf-flight-result-segment-stops {
  color: #78b543;
  display: block;
  font-weight: bold;
  line-height: 1.2; }
  .nf-flight-result-segment-stops.m--indirect {
    color: #e40046; }

.nf-flight-result-alternatives {
  color: #217FA8;
  font-size: 0.6875rem;
  text-decoration: underline;
  display: block;
  cursor: pointer;
  text-align: left;
  padding-top: 1rem; }
  .nf-flight-result-alternatives:hover {
    color: #1A6788; }
  .nf-flight-result-alternatives:active {
    color: #283E5A; }
  .nf-flight-result-alternatives:focus {
    border-radius: 4px;
    border: 2px solid #217FA8;
    background: var(--Hover-btn-background-hover, rgba(255, 255, 255, 0)); }

.nf-flight-result-alternatives--icon {
  display: none; }

.nf-flight-result-price-and-cta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.nf-flight-result-price {
  text-align: left; }

.nf-flight-result-price-large {
  font-size: 1.375rem;
  font-weight: bold;
  display: block;
  line-height: 1;
  margin-bottom: 0.25rem; }
  .nf-flight-result-price-large small {
    font-size: 0.675rem;
    font-weight: normal; }

.nf-flight-result-price-small {
  font-size: 0.75rem;
  line-height: 1;
  display: block; }

.nf-flight-result-cta a {
  text-decoration: none !important;
  min-width: 7rem; }

.nf-flight-result-adult-only-info {
  position: relative;
  font-weight: bold;
  cursor: pointer; }
  .nf-flight-result-adult-only-info:hover:before, .nf-flight-result-adult-only-info:focus:before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 0.75rem solid #2dace3;
    border-left: 0.75rem solid transparent;
    border-right: 0.75rem solid transparent;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    bottom: 100%; }
  .nf-flight-result-adult-only-info:hover:after, .nf-flight-result-adult-only-info:focus:after {
    content: attr(data-popup);
    position: absolute;
    color: #FFFFFF;
    background: #2dace3;
    bottom: calc(100% + 0.75rem);
    min-width: 14rem;
    right: -2rem;
    font-size: 0.6875rem;
    padding: 0.75rem 1rem;
    border-radius: 4px;
    font-weight: normal; }

@media only screen and (min-width: 601px) {
  .nf-flight-results-list {
    padding-top: 0; }
  .nf-flight-result {
    width: 100%;
    margin-bottom: 1rem;
    max-width: none;
    -ms-grid-rows: auto auto;
    -ms-grid-columns: 1fr 15rem;
        grid-template: "header header" auto "main stub" auto / 1fr 15rem; }
    .nf-flight-result ~ .nf-flight-result .nf-flight-result-main {
      border-top-left-radius: 0.5rem; }
    .nf-flight-result ~ .nf-flight-result .nf-flight-result-stub {
      border-top-left-radius: 0;
      border-top-right-radius: 0.5rem; }
  .nf-flight-result-main {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    grid-area: main;
    position: relative;
    background-color: #FFFFFF;
    margin: 0;
    margin-right: 0.5rem;
    border-radius: 0;
    border-bottom-left-radius: 0.5rem; }
    .nf-flight-result-main:after {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
      border-top-right-radius: 0.625rem;
      border-bottom-right-radius: 0.625rem;
      width: 0.5rem;
      height: 100%;
      position: absolute;
      right: auto;
      left: 100%;
      top: 0;
      background-position: left top -0.5rem;
      background-position-x: 0;
      background-position-y: 0; }
    .nf-flight-result-main .nf-flight-result-alternatives {
      display: none; }
  .nf-flight-result-labels {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 0.25rem;
    margin-bottom: auto; }
    .nf-flight-result-labels div + div {
      margin-top: 0.5rem; }
  .nf-flight-result-stub {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    grid-area: stub;
    text-align: left;
    background-color: #FFFFFF;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-transform-origin: center left 0.5rem;
            transform-origin: center left 0.5rem;
    margin: 0;
    margin-left: 0.5rem;
    border-radius: 0;
    border-bottom-right-radius: 0.5rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .nf-flight-result-stub:before {
      border-top-right-radius: 0;
      border-bottom-right-radius: 0;
      border-top-left-radius: 0.625rem;
      border-bottom-left-radius: 0.625rem;
      width: 0.5rem;
      height: 100%;
      position: absolute;
      left: auto;
      right: 100%;
      top: 0;
      background-position: right top -0.5rem;
      background-position-x: -0.5rem;
      background-position-y: 0; }
    .nf-flight-result-stub .nf-flight-result-alternatives {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
  .nf-flight-result-price-and-cta {
    display: block;
    margin-top: auto; }
  .nf-flight-result-price-large {
    margin-bottom: 0.5rem; }
  .nf-flight-result-price-small {
    display: block;
    margin-bottom: 1rem; }
  .nf-flight-result-segment-depart,
  .nf-flight-result-segment-arrival {
    width: 5.25rem; }
  .nf-flight-result-segment-depart {
    padding-left: 0; }
  .nf-flight-result-segment-time {
    font-size: 1.375rem; }
    .nf-flight-result-segment-time sup {
      bottom: auto;
      left: 100%;
      top: 0;
      line-height: 1.2;
      font-weight: bold;
      font-size: 0.75rem; }
  .nf-flight-result-segment-code {
    font-size: 1.125rem;
    margin-top: 0.0625rem; }
    .nf-flight-result-segment-code svg {
      width: 1rem;
      height: 1rem; }
  .nf-flight-result-segment-airport {
    margin-top: 0.25rem; }
  .nf-flight-result-segment-journey {
    margin-top: 0.25rem;
    padding: 0 1rem; }
    .nf-flight-result-segment-journey svg {
      width: 1.625rem;
      height: 1.625rem; }
  .nf-flight-result-alternatives {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .nf-flight-result-alternatives:hover .nf-flight-result-alternatives--icon {
      background: #2dace3;
      -webkit-box-shadow: 0 0 0 1px #2dace3;
              box-shadow: 0 0 0 1px #2dace3; }
  .nf-flight-result-alternatives--icon {
    position: relative;
    width: 1rem;
    height: 1rem;
    display: inline-block;
    border-radius: 50%;
    background: #dbdbdb;
    margin-right: 0.5rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    overflow: hidden;
    -webkit-box-shadow: 0 0 0 1px #dbdbdb;
            box-shadow: 0 0 0 1px #dbdbdb;
    -webkit-transition: all ease 150ms;
    transition: all ease 150ms; }
    .nf-flight-result-alternatives--icon:before {
      content: '';
      width: 0.5rem;
      height: 1rem;
      background: #FFFFFF;
      position: absolute;
      top: -0.25rem;
      left: 0.5rem;
      -webkit-transform: skewY(45deg);
              transform: skewY(45deg); }
  .nf-flight-results-header {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2; }
  .nf-flight-result-main {
    -ms-grid-row: 2;
    -ms-grid-column: 1; }
  .nf-flight-result-stub {
    -ms-grid-row: 2;
    -ms-grid-column: 2; } }

@media only screen and (min-width: 993px) {
  .nf-flight-results-list {
    padding: 0;
    margin: 0;
    max-width: none; }
  .nf-flight-result {
    margin-bottom: 1.25rem; }
  .nf-flight-results-header {
    padding: 0 1.25rem; }
  .nf-flight-result-main {
    padding: 1.25rem; }
  .nf-flight-result-stub {
    padding: 1.25rem; }
  .nf-flight-result-segment-carrier {
    padding-right: 5rem;
    width: 4rem; } }

@media only screen and (min-width: 1381px) {
  .nf-flight-result {
    -ms-grid-rows: auto auto;
    -ms-grid-columns: 1fr 17rem;
        grid-template: "header header" auto "main stub" auto / 1fr 17rem; }
  .nf-flight-result {
    margin-bottom: 2rem; }
  .nf-flight-results-header {
    padding: 0 2rem; }
  .nf-flight-result-main {
    padding: 2rem;
    padding-bottom: 1.5rem; }
  .nf-flight-result-stub {
    padding: 2rem;
    padding-bottom: 1.75rem; }
  .nf-flight-result-segment-carrier {
    padding-right: 5rem;
    width: 10.5rem; }
  .nf-flight-results-header {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2; }
  .nf-flight-result-main {
    -ms-grid-row: 2;
    -ms-grid-column: 1; }
  .nf-flight-result-stub {
    -ms-grid-row: 2;
    -ms-grid-column: 2; }
  .nf-flight-result-main {
    -ms-grid-row: 2;
    -ms-grid-column: 1; }
  .nf-flight-result-stub {
    -ms-grid-row: 2;
    -ms-grid-column: 2; } }

@media only screen and (max-width: 600px) {
  .nf-flight-results-header-secondary {
    font-weight: bold !important;
    padding: 1rem 0 0 0 !important; }
  .nf-flight-result-main.border {
    border-right: 1px solid #283E5A; }
  .nf-flight-result-stub.border {
    border-left: 1px solid #283E5A; } }

.nf-flight-results-summary {
  background: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-flow: wrap;
      -ms-flex-flow: wrap;
          flex-flow: wrap; }
  .nf-flight-results-summary.m--monthly .nf-flight-results-summary-arrival {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .nf-flight-results-summary.m--monthly .nf-flight-results-summary-departure:before {
    content: none; }

.nf-flight-results-summary-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: 100%;
  max-width: 82.25rem;
  font-size: 0.75rem;
  position: relative; }

.nf-flight-results-summary-arrows {
  margin: 2px 12px; }

.nf-flight-results-summary-departure {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative; }

.nf-flight-results-summary-date {
  color: #454545;
  font-size: 12px;
  font-weight: 400;
  margin-top: 4px; }
  .nf-flight-results-summary-date svg {
    margin-right: 8px;
    width: 16px;
    height: 16px;
    fill: #283E5A; }

.nf-flight-results-summary-duration {
  color: #454545;
  font-size: 12px;
  font-weight: 400;
  margin-left: 40px;
  margin-right: 16px; }
  .nf-flight-results-summary-duration svg {
    margin-right: 8px;
    fill: #283E5A; }

.nf-flight-results-summary-departure,
.nf-flight-results-summary-arrival,
.nf-flight-results-summary-duration {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0; }

.nf-flight-results-summary-departure,
.nf-flight-results-summary-arrival {
  max-width: 40%; }

.nf-flight-results-summary-arrival,
.nf-flight-results-summary-duration,
.nf-flight-results-summary-pax,
.nf-flight-results-summary-search {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.nf-flight-results-summary-code {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1;
  display: block; }

.nf-flight-results-summary-pax {
  -webkit-align-self: flex-end;
      -ms-flex-item-align: end;
          align-self: flex-end;
  padding-right: 0;
  min-height: 1.5rem;
  color: #454545;
  font-size: 12px;
  font-weight: 400; }
  .nf-flight-results-summary-pax svg {
    width: 16px;
    height: 16px;
    margin-right: 8px;
    fill: #283E5A; }

.nf-flight-results-summary-search {
  position: absolute;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }
  .nf-flight-results-summary-search svg {
    width: 24px;
    height: 24px;
    fill: #1A6788; }
  .nf-flight-results-summary-search button {
    border: 0;
    background: none;
    color: #217FA8;
    font-size: 14px;
    font-weight: 600; }
    .nf-flight-results-summary-search button:hover {
      color: #1A6788; }
    .nf-flight-results-summary-search button:active {
      color: #283E5A; }

@media only screen and (min-width: 601px) {
  .nf-flight-results-summary-departure,
  .nf-flight-results-summary-arrival {
    max-width: none; }
  .nf-flight-results-summary-pax {
    padding-right: 0.5rem; }
  .nf-flight-results-summary-search.m--open:after {
    content: '';
    width: 0;
    height: 0;
    display: block;
    position: absolute;
    left: 50%;
    top: calc(100% + 0.25rem);
    width: 1rem;
    height: 1rem;
    border-top: 1px solid #d5d5d5;
    border-right: 1px solid #d5d5d5;
    -webkit-transform: translateX(-50%) rotate(-45deg);
            transform: translateX(-50%) rotate(-45deg);
    background: #FFFFFF; } }

@media only screen and (min-width: 993px) {
  .nf-flight-results-summary {
    border-bottom: 1px solid #EEEEEE; }
    .nf-flight-results-summary.m--monthly .nf-flight-results-summary-departure:before {
      content: ''; }
  .nf-flight-results-summary-airport {
    color: #454545;
    font-size: 14px;
    font-weight: 400; }
  .nf-flight-results-summary-code {
    display: inline-block;
    color: #283E5A;
    font-size: 14px;
    font-weight: 800; }
    .nf-flight-results-summary-code:before {
      content: '\00A0['; }
    .nf-flight-results-summary-code:after {
      content: ']'; }
  .nf-flight-results-summary-wrap {
    padding: 16px 60px; }
  .nf-flight-results-summary-search {
    right: 60px;
    bottom: 16px; } }

@media only screen and (max-width: 992px) {
  .nf-flight-results-summary-wrap {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    padding: 16px 20px;
    grid-area: header; }
  @media only screen and (min-width: 601px) {
  .nf-flight-result-main {
      -ms-grid-row: 2;
      -ms-grid-column: 1; }
  .nf-flight-result-stub {
      -ms-grid-row: 2;
      -ms-grid-column: 2; }
  .nf-flight-results-summary-wrap {
      -ms-grid-row: 1;
      -ms-grid-column: 1;
      -ms-grid-column-span: 2; } }
  @media only screen and (min-width: 1381px) {
  .nf-flight-results-summary-wrap {
      -ms-grid-row: 1;
      -ms-grid-column: 1;
      -ms-grid-column-span: 2; } }
  .nf-flight-results-summary-search {
    right: 20px;
    bottom: 50%; } }

@media only screen and (max-width: 600px) {
  .nf-flight-results-summary-search {
    right: 16px;
    bottom: 16px; }
  .nf-flight-results-summary-wrap {
    padding: 16px 20px 50px 20px; } }

.nf-flight-results-filters-toggle {
  color: #217FA8;
  fill: #217FA8;
  height: 2.875rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-flight-results-filters-toggle span {
    color: inherit; }
  .nf-flight-results-filters-toggle svg {
    fill: inherit;
    margin-left: 0.5rem; }

.nf-flight-results-price-alert-container {
  padding: 16px;
  grid-area: alert;
  border-radius: 8px;
  border: 1px solid #283E5A;
  background: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  cursor: pointer;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content; }
  .nf-flight-results-price-alert-container svg {
    width: 24px;
    height: 24px;
    fill: #283E5A; }
  .nf-flight-results-price-alert-container .nf-flight-results-price-alert-action {
    margin-left: 8px; }
    .nf-flight-results-price-alert-container .nf-flight-results-price-alert-action h4 {
      color: #217FA8;
      font-size: 16px;
      font-style: normal;
      font-weight: 600;
      line-height: 24px; }
    .nf-flight-results-price-alert-container .nf-flight-results-price-alert-action p {
      color: #676767;
      font-size: 12px;
      font-style: normal;
      font-weight: 400;
      margin: 0;
      line-height: 18px; }

.nf-flight-popup-container {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.3);
  z-index: 999; }

.nf-flight-results-price-alert-popup {
  position: fixed;
  max-width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background: #FFFFFF;
  border: 1px solid #CFCFCF;
  border-top: 0;
  z-index: 9;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: var(--border-radius, 4px);
  background: var(--Greyscale-white, #FFF);
  overflow-y: auto;
  overflow-x: hidden; }
  .nf-flight-results-price-alert-popup .nf-flight-results-price-alert-popup-close {
    cursor: pointer;
    -webkit-box-pack: right;
    -webkit-justify-content: right;
        -ms-flex-pack: right;
            justify-content: right;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 48px; }
  .nf-flight-results-price-alert-popup h4 {
    color: var(--Primary-primary-700, #283E5A);
    font-style: normal;
    font-weight: 800; }
  .nf-flight-results-price-alert-popup h5 {
    color: #393939;
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
    line-height: 18px; }
  .nf-flight-results-price-alert-popup p {
    color: var(--Greyscale-greyscale-500, #676767);
    font-size: var(--Font-Size-Body-M, 16px);
    font-style: normal;
    font-weight: 400; }
  .nf-flight-results-price-alert-popup .nf-flight-popup-leg-summary {
    background: var(--Greyscale-white, #FFF);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
            align-self: stretch; }
    .nf-flight-results-price-alert-popup .nf-flight-popup-leg-summary svg {
      width: 20px;
      height: 20px;
      fill: #283E5A;
      margin-right: 8px; }
    .nf-flight-results-price-alert-popup .nf-flight-popup-leg-summary .nf-flight-popup-leg {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 8px; }
      .nf-flight-results-price-alert-popup .nf-flight-popup-leg-summary .nf-flight-popup-leg .nf-flight-popup-leg-date {
        color: var(--Greyscale-greyscale-600, #454545);
        font-size: 14px;
        font-style: normal;
        font-weight: 400;
        line-height: 21px; }
      .nf-flight-results-price-alert-popup .nf-flight-popup-leg-summary .nf-flight-popup-leg p {
        color: var(--Greyscale-greyscale-600, #454545);
        font-size: var(--Font-Size-Body-M, 16px);
        font-style: normal;
        font-weight: 400;
        line-height: var(--Font-Line-Height-XL, 24px);
        margin: 0; }
      .nf-flight-results-price-alert-popup .nf-flight-popup-leg-summary .nf-flight-popup-leg span {
        color: var(--Primary-primary-700, #283E5A);
        font-size: var(--Font-Size-Body-M, 16px);
        font-style: normal;
        font-weight: 800;
        line-height: var(--Font-Line-Height-XL, 24px);
        margin-left: 8px; }
      .nf-flight-results-price-alert-popup .nf-flight-popup-leg-summary .nf-flight-popup-leg svg {
        margin-right: 8px; }
  .nf-flight-results-price-alert-popup .nf-flight-popup-duration {
    margin-top: 24px; }
    .nf-flight-results-price-alert-popup .nf-flight-popup-duration .nf-flight-popup-chips {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 8px;
      margin-top: 8px;
      margin-bottom: 24px;
      max-width: 100%;
      overflow-x: auto;
      min-width: -webkit-fit-content;
      min-width: -moz-fit-content;
      min-width: fit-content; }
      .nf-flight-results-price-alert-popup .nf-flight-popup-duration .nf-flight-popup-chips .nf-flight-popup-chip {
        padding: 8px 16px;
        border-radius: 20px;
        border: 2px solid var(--Primary-primary-500, #217FA8);
        color: var(--Primary-primary-500, #217FA8);
        text-align: center;
        font-size: 12px;
        font-style: normal;
        font-weight: 400;
        cursor: pointer;
        min-width: -webkit-fit-content;
        min-width: -moz-fit-content;
        min-width: fit-content; }
        .nf-flight-results-price-alert-popup .nf-flight-popup-duration .nf-flight-popup-chips .nf-flight-popup-chip.selected {
          color: var(--Greyscale-white, #FFF);
          background: var(--Primary-primary-500, #217FA8); }
  .nf-flight-results-price-alert-popup .nf-flight-popup-form {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    .nf-flight-results-price-alert-popup .nf-flight-popup-form .nf-form-field-label {
      color: #393939;
      font-size: 12px;
      font-style: normal;
      font-weight: 800;
      line-height: 18px; }
    .nf-flight-results-price-alert-popup .nf-flight-popup-form .nf-form-field-error {
      position: unset; }
  .nf-flight-results-price-alert-popup .nf-flight-popup-submit {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: end;
        -ms-flex-pack: end;
            justify-content: end; }
    .nf-flight-results-price-alert-popup .nf-flight-popup-submit button {
      color: var(--Default-btn-txt, #FFF);
      font-size: 18px;
      font-style: normal;
      font-weight: 800;
      line-height: 27px;
      padding: 16px; }
      .nf-flight-results-price-alert-popup .nf-flight-popup-submit button.loading {
        color: #65b146 !important;
        background-color: #65b146 !important; }
        .nf-flight-results-price-alert-popup .nf-flight-popup-submit button.loading:after {
          content: '';
          position: absolute;
          width: 38px;
          height: 38px;
          left: 50%;
          top: 50%;
          -webkit-transform: translate(-50%, -50%);
                  transform: translate(-50%, -50%);
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='38' height='38' viewBox='0 0 38 38'%3E%3Cdefs%3E%3ClinearGradient x1='8.042%25' y1='0%25' x2='65.682%25' y2='23.865%25' id='a'%3E%3Cstop stop-color='%23fff' stop-opacity='0' offset='0%25'/%3E%3Cstop stop-color='%23fff' stop-opacity='.631' offset='63.146%25'/%3E%3Cstop stop-color='%23fff' offset='100%25'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(1 1)'%3E%3Cpath d='M36 18c0-9.94-8.06-18-18-18' id='Oval-2' stroke='url(%23a)' stroke-width='2'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 18 18' to='360 18 18' dur='0.9s' repeatCount='indefinite'/%3E%3C/path%3E%3Ccircle fill='%23fff' cx='36' cy='18' r='1'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 18 18' to='360 18 18' dur='0.9s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); }
    .nf-flight-results-price-alert-popup .nf-flight-popup-submit button:disabled,
    .nf-flight-results-price-alert-popup .nf-flight-popup-submit button[disabled],
    .nf-flight-results-price-alert-popup .nf-flight-popup-submit button[disabled]:hover {
      line-height: var(--Font-Line-Height-XL, 22px);
      background: var(--Disabled-btn-background-disabled, #F1F1F1); }

.nf-toast-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 407px;
  padding: 12px 20px 12px 12px;
  gap: 16px;
  position: fixed;
  left: 70px;
  border-radius: 10px;
  bottom: 48px;
  z-index: 9; }
  .nf-toast-container.success {
    border: 1px solid #007D1E;
    background: #E6F2E6; }
    .nf-toast-container.success h5,
    .nf-toast-container.success p {
      color: #007D1E; }
    .nf-toast-container.success svg {
      fill: #007D1E; }
  .nf-toast-container.error {
    border: 1px solid var(--system-error-dark, #A82A30);
    background: var(--system-error-light, #FFF2F2); }
    .nf-toast-container.error h5,
    .nf-toast-container.error p {
      color: var(--system-error-dark, #A82A30); }
    .nf-toast-container.error svg {
      fill: #A82A30; }
  .nf-toast-container .nf-toast-body h5 {
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 21px; }
  .nf-toast-container .nf-toast-body p {
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 21px;
    margin: 0; }
  .nf-toast-container .nf-toast-icon {
    margin: auto 0; }
  .nf-toast-container svg {
    width: 20px;
    height: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 16px;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 0;
        -ms-flex: 1 0 0px;
            flex: 1 0 0; }
  .nf-toast-container .nf-toast-close {
    position: absolute;
    right: 12px;
    cursor: pointer; }

.nf-flight-results-price-toggle {
  background: #FFFFFF;
  padding: 1rem 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.nf-flight-results-filters-selected {
  color: #2dace3;
  display: block;
  font-size: 0.6875rem; }

.nf-flight-results-filters-block {
  position: relative;
  overflow: hidden; }

.nf-flight-results-filters-checkbox {
  display: none; }

.nf-flight-results-filters-label {
  position: relative;
  color: #454545;
  font-size: 12px;
  font-weight: 400;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-tap-highlight-color: transparent; }
  .nf-flight-results-filters-label:before {
    content: '';
    font-size: 0.9rem;
    display: block;
    width: 18px;
    height: 18px;
    text-align: center;
    background: rgba(255, 255, 255, 0.7);
    border: 2px solid #8A8A8A;
    border-radius: 0.1rem;
    margin-right: 0.5rem;
    background-repeat: no-repeat;
    background-position: center center; }

.nf-flight-results-filters-label:hover:before {
  border: 2px solid #676767; }

.nf-flight-results-filters-checkbox:checked + .nf-flight-results-filters-label:before {
  background-color: #1A6788;
  border: none; }

.nf-flight-results-filters-checkbox:checked + .nf-flight-results-filters-label:hover:before {
  background-color: #217FA8; }

.nf-flight-results-filters-checkbox:checked + .nf-flight-results-filters-label:after {
  content: '';
  display: block;
  width: 11px;
  height: 6px;
  border-bottom: 2px solid #FFFFFF;
  border-left: 2px solid #FFFFFF;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: -webkit-transform ease 0.25s;
  transition: -webkit-transform ease 0.25s;
  transition: transform ease 0.25s;
  transition: transform ease 0.25s, -webkit-transform ease 0.25s;
  position: absolute;
  top: 4px;
  left: 3.5px; }

.nf-flight-results-filters-item.m--disabled {
  position: relative;
  color: #454545; }
  .nf-flight-results-filters-item.m--disabled:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }
  .nf-flight-results-filters-item.m--disabled .nf-flight-results-filters-label:before {
    border: 2px solid #ACACAC; }

.nf-flight-results-filters-item:last-of-type {
  margin-bottom: 1.5rem; }

.nf-filters-slider-wrap {
  position: relative;
  height: 3.25rem;
  padding: 0 1rem; }

.nf-filters-slider-rail {
  right: 1rem;
  left: 1rem; }

.nf-filters-slider-rail,
.nf-filters-slider-track {
  position: absolute;
  height: 0.25rem;
  margin-top: 0.5rem;
  border-radius: 3px;
  background-color: #979797; }

.nf-filters-slider-track {
  z-index: 1;
  background-color: #289ED1;
  cursor: pointer; }

.nf-filters-slider-handles {
  position: relative; }

.nf-filters-slider-handle {
  position: absolute;
  top: 0rem;
  margin-top: -0.375rem;
  margin-left: -1rem;
  z-index: 2;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  border: 2px solid #289ED1;
  text-align: center;
  cursor: pointer;
  border-radius: 50%;
  background-color: #FFFFFF;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='17' viewBox='0 0 38 20'%3E%3Ctitle%3EGroup%3C/title%3E%3Cpath xmlns='http://www.w3.org/2000/svg' d='M29.4267 12.8533c-.28-1.0666-1.3867-1.7066-2.4534-1.4133l-7.08 1.8933-9.2-8.5733-2.5733.68L13.64 15l-6.6267 1.7733L4.3867 14.72l-1.9334.52L4.88 19.4533l1.0267 1.7734 2.1333-.5734 7.08-1.8933 5.8-1.5467L28 15.32c1.08-.3067 1.7067-1.4 1.4267-2.4667z' fill='%23a5a5a5'/%3E%3C/svg%3E");
  background-position: 0.125rem 0.1875rem;
  background-repeat: no-repeat; }

.nf-filters-slider-handle-text {
  font-size: 0.75rem;
  position: absolute;
  left: -1rem;
  top: 2.25rem; }
  .nf-filters-slider-handle-text ~ .nf-filters-slider-handle-text {
    left: auto;
    right: -1rem; }

.nf-flight-results-filters-header {
  position: relative;
  padding: 1.125rem 1.75rem 1.125rem 20px;
  text-align: left;
  cursor: pointer;
  color: #283E5A;
  font-family: Roboto;
  font-size: 12px;
  font-weight: 400; }
  .nf-flight-results-filters-header:before {
    content: '';
    width: 0;
    height: 0;
    display: block;
    border-left: 0.625rem solid #676767;
    border-top: 0.375rem solid transparent;
    border-bottom: 0.375rem solid transparent;
    position: absolute;
    left: 0.125rem;
    top: 1.1rem;
    border: solid #1C1B1F;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg); }
  .nf-flight-results-filters-header.m--open:before {
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    top: 1.4rem; }

.nf-flight-results-filters-clear {
  color: #217FA8;
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  position: absolute;
  right: -14px;
  top: 7px;
  cursor: pointer;
  display: block; }
  .nf-flight-results-filters-clear:focus {
    top: 0.45rem !important;
    border-radius: 4px;
    border: 2px solid #217FA8;
    background: var(--Hover-btn-background-hover, rgba(255, 255, 255, 0)); }
  .nf-flight-results-filters-clear.inactive {
    color: #CFCFCF !important;
    cursor: default;
    border: 2px solid transparent; }

@media only screen and (min-width: 993px) {
  .nf-flight-results-price-alert-container {
    width: 272px; } }

@media only screen and (min-width: 1381px) {
  .nf-flight-results-price-alert-container {
    width: 320px; } }

@media only screen and (min-width: 601px) {
  .nf-flight-results-price-alert-popup {
    width: 84%;
    left: 8%;
    top: 15%;
    max-height: 75%;
    padding: 24px;
    overflow-x: hidden; }
    .nf-flight-results-price-alert-popup h4 {
      font-size: 24px; }
    .nf-flight-results-price-alert-popup .nf-flight-popup-leg-summary {
      border-radius: 8px;
      border: 1px solid var(--Greyscale-greyscale-100, #F1F1F1);
      padding: 16px;
      gap: 16px; }
      .nf-flight-results-price-alert-popup .nf-flight-popup-leg-summary .nf-flight-popup-leg-date svg {
        display: block; }
    .nf-flight-results-price-alert-popup .nf-flight-popup-submit {
      margin-top: 16px; }
      .nf-flight-results-price-alert-popup .nf-flight-popup-submit button {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content; } }

@media only screen and (max-width: 992px) {
  .m--filter-above-cookies .nf-flight-results-filters,
  .m--filter-above-cookies .nf-flight-results-filters-actions {
    bottom: 3.75rem; }
  .m--filter-above-cookies .nf-flight-results-filters.m--open {
    padding-bottom: 9.25rem; }
  .nf-flight-results-filters {
    position: fixed;
    color: #454545;
    background: #FFFFFF;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 8;
    max-height: 2.875rem;
    padding: 0;
    -webkit-transition: all ease 300ms;
    transition: all ease 300ms;
    border-top: 2px solid #CFCFCF; }
    .nf-flight-results-filters.m--open {
      top: 0;
      right: 0;
      max-height: none;
      padding-bottom: 5.5rem;
      overflow-y: scroll; }
    .nf-flight-results-filters.m--open &gt; .nf-flight-results-filters-toggle {
      display: none; }
    .nf-flight-results-filters.m--open &gt; .nf-flight-results-filters-actions {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
    .nf-flight-results-filters .nf-flight-result-filters-block {
      display: none; }
    .nf-flight-results-filters.m--open .nf-flight-result-filters-block {
      display: block; }
    .nf-flight-results-filters.m--applied .nf-flight-results-filters-toggle {
      color: #2dace3;
      fill: #2dace3; }
    .nf-flight-results-filters.m--applied .nf-flight-results-filters-text {
      display: none; }
    .nf-flight-results-filters.m--applied .nf-flight-results-filters-text--applied {
      display: block; }
  .nf-flight-results-filters-text--applied {
    display: none; }
  .nf-flight-results-filters-title {
    position: relative;
    background: #FFFFFF;
    font-size: 1.0625rem;
    padding: 0.75rem;
    padding-left: 1.125rem;
    border-bottom: 1px solid #CFCFCF;
    margin: 0;
    line-height: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .nf-flight-results-filters-cross {
    fill: #1C1B1F; }
  .nf-flight-results-filters-wrap:after {
    width: 100%;
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    background: #FFFFFF;
    height: 5rem;
    -webkit-filter: blur(1.5rem);
            filter: blur(1.5rem);
    overflow: hidden; }
  .nf-flight-results-filters-block:after {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    height: 1px;
    background: #FFFFFF; }
  .nf-flight-results-filters-block.m--open {
    background-color: #FFFFFF;
    border-bottom: 1px solid #CFCFCF; }
  .nf-flight-results-filters-header {
    position: relative;
    font-weight: normal;
    text-align: left;
    font-size: 0.8125rem;
    line-height: 1.3;
    padding: 0 1.5rem;
    padding-left: 3.5rem;
    border-bottom: 1px solid #CFCFCF;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 3rem; }
    .nf-flight-results-filters-header.m--open {
      border-bottom: 0;
      margin-bottom: 1rem; }
    .nf-flight-results-filters-header svg {
      position: absolute;
      top: 50%;
      left: 1.875rem;
      -webkit-transform: translate3d(-50%, -50%, 0);
              transform: translate3d(-50%, -50%, 0);
      fill: #CFCFCF;
      display: inline-block; }
    .nf-flight-results-filters-header svg ~ svg {
      -webkit-transform: translateY(-50%) rotate(0);
              transform: translateY(-50%) rotate(0);
      width: 1.75rem;
      height: 1.75rem;
      left: auto;
      right: 0.75rem; }
    .nf-flight-results-filters-header.m--open svg ~ svg {
      fill: #2dace3;
      -webkit-transform: translateY(-50%) rotate(180deg);
              transform: translateY(-50%) rotate(180deg); }
  .nf-flight-results-filters-item {
    padding: 0 1.25rem; }
  .nf-flight-results-filters-actions {
    position: fixed;
    bottom: 0;
    width: 100%;
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    display: none;
    background: #FFFFFF;
    padding: 1.5rem;
    z-index: 2;
    -webkit-backdrop-filter: blur(2px);
            backdrop-filter: blur(2px);
    border-top: 2px solid #CFCFCF; }
  .nf-flight-results-filters-clearall {
    font-size: 1rem;
    color: #FFFFFF;
    background: #50ac4f;
    cursor: pointer;
    padding: 0.5rem 1rem;
    border-radius: 3px;
    min-width: 7rem;
    text-align: center; }
  .nf-flight-results-filters-clearall {
    display: none; }
  .nf-flight-results-filters-clearall-mobile {
    width: -webkit-fill-available;
    padding: 0; }
  .nf-flight-results-filters-clear {
    right: 18px !important; }
    .nf-flight-results-filters-clear:hover {
      color: #CFCFCF;
      background: #FFFFFF; }
  .nf-flight-results-filters-header:before {
    margin-left: 1.5rem; }
  .nf-flight-results-price-alert-container svg {
    display: none; }
  .nf-flight-results-sort-item {
    padding: 8px !important; }
  .nf-flight-results-flexible-dates-item {
    padding: 8px !important; } }

@-webkit-keyframes filters-loading {
  from {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%); }
  to {
    -webkit-transform: translateX(200%);
            transform: translateX(200%); } }

@keyframes filters-loading {
  from {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%); }
  to {
    -webkit-transform: translateX(200%);
            transform: translateX(200%); } }

@media only screen and (min-width: 993px) {
  .nf-flight-results-filters {
    position: relative;
    color: #4a4a4a;
    background: #FFFFFF;
    border-radius: 0.375rem;
    max-height: none;
    -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
            align-self: flex-start;
    z-index: 1;
    padding: 0 1.5rem; }
    .nf-flight-results-filters.m--no-toggle .nf-flight-results-filters-title {
      margin-bottom: 0.5rem; }
    .nf-flight-results-filters.m--disabled {
      overflow: hidden; }
      .nf-flight-results-filters.m--disabled:before {
        content: '';
        width: 50%;
        height: 100%;
        position: absolute;
        display: block;
        background: red;
        background: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, rgba(0, 0, 0, 0.025)), to(transparent));
        background: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.025) 50%, transparent 100%);
        -webkit-animation: filters-loading 1500ms infinite forwards;
                animation: filters-loading 1500ms infinite forwards;
        z-index: 3; }
      .nf-flight-results-filters.m--disabled:after {
        content: '';
        position: absolute;
        display: block;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: rgba(255, 255, 255, 0.5);
        border-radius: 4px;
        z-index: 2; }
  .nf-flight-results-filters-title {
    font-weight: 600;
    font-size: 14px;
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid #EEEEEE;
    margin: 0 -1.5rem 4rem -1.5rem;
    line-height: 1;
    color: #283E5A; }
  .nf-flight-results-filters-cross {
    display: none; }
  .nf-flight-results-filters-block {
    border-bottom: 1px dashed #EEEEEE; }
    .nf-flight-results-filters-block:last-of-type {
      border-bottom: 0; }
  .nf-flight-results-filters-selected {
    display: none; }
  .nf-flight-results-filters-toggle {
    display: none; }
  .nf-flight-results-filters-clearall {
    font-size: 0.75rem;
    color: #217FA8;
    position: absolute;
    top: 1.125rem;
    right: 1.5rem;
    cursor: pointer;
    text-align: right;
    font-size: 14px;
    font-weight: 600; }
    .nf-flight-results-filters-clearall:hover {
      color: #1A6788; }
    .nf-flight-results-filters-clearall:active {
      color: #283E5A; }
    .nf-flight-results-filters-clearall.disabled {
      cursor: default;
      color: #CFCFCF; }
  .nf-flight-results-filters-clearall-mobile {
    display: none; } }

@media only screen and (max-width: 600px) {
  .nf-flight-results-price-alert-container p, .nf-flight-results-price-alert-container svg {
    display: none; }
  .nf-flight-results-price-alert-action h4 {
    font-size: 14px !important; }
  .nf-flight-results-price-alert-popup {
    width: 100%;
    left: 0%;
    top: 5%;
    max-height: 90%;
    padding: 16px; }
    .nf-flight-results-price-alert-popup h4 {
      font-size: 20px; }
    .nf-flight-results-price-alert-popup .nf-flight-popup-leg-summary {
      border-radius: 0px;
      border: 0px;
      padding: 0px;
      gap: 0px; }
      .nf-flight-results-price-alert-popup .nf-flight-popup-leg-summary svg {
        margin-left: 8px;
        margin-right: 8px; }
      .nf-flight-results-price-alert-popup .nf-flight-popup-leg-summary .nf-flight-popup-leg-date svg {
        display: none; }
    .nf-flight-results-price-alert-popup .nf-flight-popup-submit {
      margin-top: 8px; }
      .nf-flight-results-price-alert-popup .nf-flight-popup-submit button {
        width: 100%; } }

.nf-flight-results-highlight {
  position: relative;
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start;
  padding: 0 1rem 1rem;
  /*background:$white;*/ }

.nf-flight-results-sort {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  grid-area: sorting; }
  .nf-flight-results-sort div:first-child {
    border-bottom-left-radius: 0.625rem;
    border-top-left-radius: 0.625rem; }
  .nf-flight-results-sort div:last-child {
    border-bottom-right-radius: 0.625rem;
    border-top-right-radius: 0.625rem; }

.nf-flight-results-sort-item {
  position: relative;
  width: 50%;
  text-align: center;
  padding: 1rem;
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
              -ms-grid-row-align: stretch;
          align-self: stretch;
  cursor: pointer;
  border: 1px solid #283E5A;
  background: #FFFFFF;
  color: var(--Primary-primary-500, #217FA8);
  font-size: 14px;
  font-style: normal;
  font-weight: 800;
  line-height: 21px; }
  .nf-flight-results-sort-item.active {
    background: #283E5A;
    color: #FFFFFF; }
  .nf-flight-results-sort-item.active:after {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 20px solid #283E5A;
    border-left: 25px solid transparent;
    border-right: 25px solid transparent; }

.nf-flight-results-sort-desc,
.nf-flight-results-flexible-dates-desc {
  font-weight: bold;
  font-size: 0.675rem;
  margin-bottom: 0.25rem;
  line-height: 1; }

.nf-flight-results-flexible-dates-price {
  margin: 0;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--Greyscale-greyscale-700, #222);
  font-size: var(--Font-Size-Body-M, 16px);
  font-style: normal;
  font-weight: 800;
  line-height: var(--Font-Line-Height-XL, 24px); }
  .nf-flight-results-flexible-dates-price span {
    color: var(--Greyscale-greyscale-500, #676767);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 18px; }
  .nf-flight-results-flexible-dates-price svg {
    width: 1.125rem;
    height: 1.125rem;
    margin-right: 0.5rem; }

.nf-flight-results-sort-price {
  font-size: 18px;
  font-style: normal;
  font-weight: 800;
  line-height: 27px;
  margin: 0;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.nf-flight-results-sort-separator {
  display: inline; }

.nf-flight-results-sort-duration,
.nf-flight-results-flexible-dates-saving {
  font-size: 0.6875rem; }

.nf-flight-results-sort-duration {
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 18px; }

.nf-flight-results-flexible-dates-saving {
  font-size: 0.75rem;
  font-weight: bold;
  color: #78b543;
  line-height: 1.3; }

.nf-flight-results-flexible-dates-item {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 16px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  cursor: pointer;
  color: #283E5A; }
  .nf-flight-results-flexible-dates-item .nf-flight-results-flexible-dates-item-calendar {
    padding-right: 1rem; }
    .nf-flight-results-flexible-dates-item .nf-flight-results-flexible-dates-item-calendar svg {
      width: 24px;
      height: 24px;
      fill: #283E5A; }
  .nf-flight-results-flexible-dates-item .nf-flight-results-flexible-dates-item-downarrow {
    padding-left: 2rem; }
    .nf-flight-results-flexible-dates-item .nf-flight-results-flexible-dates-item-downarrow svg {
      width: 1.875rem;
      height: 1.875rem; }

.nf-flight-results-flexible-dates-desc {
  font-weight: bold; }

.nf-flight-results-flexible-dates-content {
  background: #1d1d1d;
  position: absolute; }

.nf-flight-results-flexible-dates {
  border-radius: 8px;
  border: 1px solid var(--Primary-primary-700, #283E5A);
  background: var(--Greyscale-white, #FFF);
  grid-area: flexible; }
  .nf-flight-results-flexible-dates .nf-flight-results-flexible-dates-desc {
    color: var(--Default-btn-txt, #217FA8);
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px; }

@media only screen and (min-width: 601px) {
  .nf-flight-results-flexible-dates {
    grid-area: flexible; }
  .nf-flight-results-sort-desc,
  .nf-flight-results-flexible-dates-desc {
    font-size: 1rem; } }

@media only screen and (max-width: 992px) {
  .nf-flight-results-flexible-dates-item-downarrow,
  .nf-flight-results-flexible-dates-item-calendar {
    display: none; } }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-flight-results-highlight {
    background: none;
    padding-top: 1rem;
    display: -ms-grid;
    display: grid;
    grid-gap: 1rem;
    -ms-grid-rows: auto;
    -ms-grid-columns: 1fr 1rem 1fr 1rem 1fr;
        grid-template: "sorting sorting flexible alert" auto / 1fr 1fr 1fr; }
    .nf-flight-results-highlight.m--no-alt {
      -ms-grid-rows: auto;
      -ms-grid-columns: 1fr 1rem 1fr 1rem 1fr;
          grid-template: "sorting sorting sorting alert" auto / 1fr 1fr 1fr; }
  .nf-searchpanel-options {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; }
    .nf-flight-results-highlight.m--no-alt &gt; .nf-searchpanel-options {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5; }
  .nf-flight-results-price-alert-container {
    -ms-grid-row: 1;
    -ms-grid-column: 7; }
    .nf-flight-results-highlight.m--no-alt &gt; .nf-flight-results-price-alert-container {
    -ms-grid-row: 1;
    -ms-grid-column: 7; }
  .nf-flight-results-sort {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; }
    .nf-flight-results-highlight.m--no-alt &gt; .nf-flight-results-sort {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5; }
  .nf-flight-results-flexible-dates {
    -ms-grid-row: 1;
    -ms-grid-column: 5; }
  .nf-flight-results-flexible-dates {
    -ms-grid-row: 1;
    -ms-grid-column: 5; } }

@media only screen and (max-width: 600px) {
  .nf-flight-results-highlight {
    background: none;
    padding-top: 1rem;
    display: -ms-grid;
    display: grid;
    grid-gap: 1rem;
    -ms-grid-rows: auto 1rem auto;
    -ms-grid-columns: 1fr 1rem 1fr 1rem 1fr 1rem 1fr;
        grid-template: "flexible flexible alert alert" auto "sorting sorting sorting sorting" auto / 1fr 1fr 1fr 1fr; }
    .nf-flight-results-highlight.m--no-alt {
      -ms-grid-rows: auto;
      -ms-grid-columns: 1fr 1rem 1fr 1rem 1fr;
          grid-template: "sorting sorting sorting alert" auto / 1fr 1fr 1fr; }
  .nf-searchpanel-options {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 7; }
    .nf-flight-results-highlight.m--no-alt &gt; .nf-searchpanel-options {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5; }
  .nf-flight-results-price-alert-container {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
    -ms-grid-column-span: 3; }
    .nf-flight-results-highlight.m--no-alt &gt; .nf-flight-results-price-alert-container {
    -ms-grid-row: 1;
    -ms-grid-column: 7;
    -ms-grid-column-span: 1; }
  .nf-flight-results-sort {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 7; }
    .nf-flight-results-highlight.m--no-alt &gt; .nf-flight-results-sort {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5; }
  .nf-flight-results-flexible-dates {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; }
  .nf-flight-results-flexible-dates {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; } }

@media only screen and (min-width: 993px) {
  .nf-flight-results-highlight {
    background: none;
    padding-top: 1rem;
    display: -ms-grid;
    display: grid;
    grid-gap: 1rem;
    -ms-grid-rows: auto;
    -ms-grid-columns: 1fr 1rem 1fr 1rem 1fr 1rem 1fr;
        grid-template: "alert sorting sorting flexible" auto / 1fr 1fr 1fr 1fr; }
    .nf-flight-results-highlight.m--no-alt {
      -ms-grid-rows: auto;
      -ms-grid-columns: 1fr 1rem 1fr 1rem 1fr 1rem 1fr;
          grid-template: "alert sorting sorting sorting" auto / 1fr 1fr 1fr 1fr; }
  .nf-flight-results-highlight {
    padding: 0; }
  .nf-searchpanel-options {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3; }
    .nf-flight-results-highlight.m--no-alt &gt; .nf-searchpanel-options {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 5; }
  .nf-flight-results-price-alert-container {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1; }
    .nf-flight-results-highlight.m--no-alt &gt; .nf-flight-results-price-alert-container {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1; }
  .nf-flight-results-sort {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3; }
    .nf-flight-results-highlight.m--no-alt &gt; .nf-flight-results-sort {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 5; }
  .nf-flight-results-flexible-dates {
    -ms-grid-row: 1;
    -ms-grid-column: 7;
    -ms-grid-column-span: 1; }
  .nf-flight-results-flexible-dates {
    -ms-grid-row: 1;
    -ms-grid-column: 7;
    -ms-grid-column-span: 1; } }

@media only screen and (max-width: 600px) {
  .nf-flight-results-sort-price {
    display: block; }
  .nf-flight-results-sort-separator {
    display: none; }
  .nf-flight-results-flexible-dates {
    float: right; }
  .nf-flight-results-flexible-dates-item {
    position: relative;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    cursor: pointer;
    color: #283E5A; }
    .nf-flight-results-flexible-dates-item .nf-flight-results-flexible-dates-desc-summary {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .nf-flight-results-flexible-dates-item .nf-flight-results-flexible-dates-desc-summary .nf-flight-results-flexible-dates-desc {
        margin-bottom: 0; }
      .nf-flight-results-flexible-dates-item .nf-flight-results-flexible-dates-desc-summary .nf-flight-results-flexible-dates-price {
        margin-bottom: 0;
        margin-left: 0.5rem; }
    .nf-flight-results-flexible-dates-item .nf-flight-results-flexible-dates-item-downarrow {
      padding: 0; }
      .nf-flight-results-flexible-dates-item .nf-flight-results-flexible-dates-item-downarrow svg {
        width: 1.875rem;
        height: 1.875rem; }
    .nf-flight-results-flexible-dates-item .nf-flight-results-flexible-dates-desc-summary .nf-flight-results-flexible-dates-desc,
    .nf-flight-results-flexible-dates-item .nf-flight-results-flexible-dates-desc-summary .nf-flight-results-flexible-dates-price {
      font-size: 14px;
      font-weight: 600; }
    .nf-flight-results-flexible-dates-item .nf-flight-results-flexible-dates-desc-summary span {
      color: var(--Default-btn-txt, #217FA8);
      font-size: 14px;
      font-weight: 600; }
      .nf-flight-results-flexible-dates-item .nf-flight-results-flexible-dates-desc-summary span span {
        display: none; } }

.nf-flight-result-routehappy {
  position: relative;
  font-size: 0.75rem;
  margin: 0;
  font-weight: bold;
  color: #65b146;
  line-height: 1.5;
  display: block; }
  .nf-flight-result-routehappy .m--score-1 {
    color: #cd1e20; }
  .nf-flight-result-routehappy .m--score-2 {
    color: #b81e42; }
  .nf-flight-result-routehappy .m--score-3 {
    color: #ef3a43; }
  .nf-flight-result-routehappy .m--score-4 {
    color: #f89e1c; }
  .nf-flight-result-routehappy .m--score-5 {
    color: #78b543; }
  .nf-flight-result-routehappy .m--score-6 {
    color: #4fa900; }
  .nf-flight-result-routehappy .m--score-7 {
    color: #007c44; }
  .nf-flight-result-routehappy .m--score-bg-1 {
    background: #cd1e20; }
  .nf-flight-result-routehappy .m--score-bg-2 {
    background: #b81e42; }
  .nf-flight-result-routehappy .m--score-bg-3 {
    background: #ef3a43; }
  .nf-flight-result-routehappy .m--score-bg-4 {
    background: #f89e1c; }
  .nf-flight-result-routehappy .m--score-bg-5 {
    background: #78b543; }
  .nf-flight-result-routehappy .m--score-bg-6 {
    background: #4fa900; }
  .nf-flight-result-routehappy .m--score-bg-7 {
    background: #007c44; }

.nf-flight-result-routehappy-cta {
  position: relative;
  color: #2dace3;
  text-decoration: underline;
  margin-left: 0.25rem;
  font-size: 0.675rem;
  cursor: pointer;
  display: inline-block;
  font-weight: normal; }
  .nf-flight-result-routehappy-cta .nf-flight-result-routehappy-pointer {
    display: none;
    width: 0;
    height: 0;
    border-bottom-width: 0.5rem;
    border-bottom-style: solid;
    border-bottom-color: inherit;
    border-left: 0.5rem solid transparent;
    border-right: 0.5rem solid transparent;
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
  .nf-flight-result-routehappy-cta.m--show .nf-flight-result-routehappy-pointer {
    display: block; }
  .nf-flight-result-routehappy-cta.m--show + .nf-flight-result-routehappy-popup {
    opacity: 1;
    visibility: visible; }

.nf-flight-result-routehappy-popup {
  position: absolute;
  top: 1.5rem;
  left: -1.5rem;
  width: 100%;
  max-width: 41.25rem;
  border: 1px solid #CFCFCF;
  opacity: 0;
  background: #FFFFFF;
  z-index: 2;
  visibility: hidden;
  font-weight: normal;
  font-size: 0.875rem; }

.nf-flight-result-routehappy-close {
  position: absolute;
  right: 0.25rem;
  top: 0.1875rem;
  cursor: pointer; }
  .nf-flight-result-routehappy-close svg {
    display: block;
    fill: #FFFFFF; }

.nf-flight-result-routehappy-header {
  color: #FFFFFF;
  font-size: 0.875rem;
  padding: 0.5rem 1.75rem;
  text-align: left;
  font-weight: normal; }

.nf-flight-result-routehappy-breakdown {
  color: #4a4a4a;
  padding: 1.5rem 1.75rem; }
  .nf-flight-result-routehappy-breakdown p {
    font-size: 0.8125rem; }

.nf-flight-result-routehappy-title {
  font-weight: bold;
  margin: 0 0 0.5rem; }

.nf-flight-result-routehappy-amenities {
  margin: 0 0 0.25rem; }

.nf-flight-result-routehappy-speed {
  margin: 0 0 0.5rem; }

.nf-flight-result-routehappy-explanation {
  margin: 0; }

.nf-flight-result-routehappy-info {
  color: #4a4a4a;
  font-size: 0.875rem;
  padding: 1.5rem 1.75rem;
  padding-top: 0; }
  .nf-flight-result-routehappy-info svg {
    fill: #2dace3;
    width: 1.25rem;
    height: 1.25rem; }
  .nf-flight-result-routehappy-info thead {
    border-bottom: 0;
    background: #EEEEEE; }
  .nf-flight-result-routehappy-info th:first-of-type {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .nf-flight-result-routehappy-info th:first-of-type svg {
      fill: #4a4a4a;
      margin-right: 0.375rem; }
  .nf-flight-result-routehappy-info td, .nf-flight-result-routehappy-info th {
    padding: 0.375rem;
    font-weight: normal; }
  .nf-flight-result-routehappy-info td + td,
  .nf-flight-result-routehappy-info th + th {
    text-align: center; }
  .nf-flight-result-routehappy-info .m--checked svg {
    fill: #78b543; }
  .nf-flight-result-routehappy-info .m--crossed svg {
    fill: #CFCFCF; }

.nf-flight-result-routehappy-key {
  color: #4a4a4a;
  padding: 1.75rem 2.125rem;
  padding-top: 0; }
  .nf-flight-result-routehappy-key h3 {
    font-size: 0.8125rem;
    margin-bottom: 0.75rem; }
  .nf-flight-result-routehappy-key ul {
    margin: 0; }
  .nf-flight-result-routehappy-key li {
    font-size: 0.8125rem;
    display: inline-block;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-right: 1.75rem; }
  .nf-flight-result-routehappy-key svg {
    width: 1rem;
    height: 1rem;
    margin-right: 0.5rem;
    fill: #2dace3; }

@media only screen and (min-width: 601px) {
  .nf-flight-result-routehappy-popup {
    border-color: inherit;
    border-width: 2px;
    border-style: solid;
    border-radius: 0.1875rem; } }

@media only screen and (max-width: 600px) {
  .nf-flight-result-routehappy-popup {
    left: -1rem;
    right: -1rem;
    width: auto;
    border-top: 0; }
  .nf-flight-result-routehappy-header {
    margin: 0 -1px; }
  .nf-flight-result-routehappy-info {
    padding: 1rem;
    padding-top: 0; }
  .nf-flight-result-routehappy-inbound {
    border-bottom: 1px solid #EEEEEE; } }

.nf-flight-result-itinerary-modal {
  position: relative;
  margin-top: -1rem;
  width: 100%;
  background: #FFFFFF;
  z-index: 3;
  border: 1px solid #cccccc;
  -webkit-box-shadow: 0 0 20rem 0 rgba(51, 51, 51, 0.2);
          box-shadow: 0 0 20rem 0 rgba(51, 51, 51, 0.2);
  overflow: hidden; }
  .nf-flight-result-itinerary-modal h2 {
    color: #FFFFFF;
    background: #2dace3;
    padding: 0.5rem 1.5rem;
    font-size: 1rem;
    text-align: left; }
  .nf-flight-result-itinerary-modal .nf-flight-itinerary-body {
    padding: 0 2rem 2rem 2rem; }

.nf-flight-result-itinerary-modal:after {
  content: '';
  width: 0;
  height: 0;
  display: block;
  border-bottom: 0.75rem solid #2dace3;
  border-left: 0.5rem solid transparent;
  border-right: 0.5rem solid transparent;
  position: absolute;
  bottom: 100%;
  left: 5rem; }

.nf-flight-result-itinerary-close {
  position: absolute;
  right: 0.75rem;
  top: 0.3125rem;
  display: block; }
  .nf-flight-result-itinerary-close svg {
    fill: #FFFFFF; }

.nf-flight-result-itinerary {
  position: relative;
  font-size: 0.75rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%23cccccc' d='M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z'/%3E%3Cpath fill='none' d='M0 0h24v24H0V0z'/%3E%3C/svg%3E");
  background-position: center right -0.375rem;
  background-repeat: no-repeat;
  border-top: 1px solid #EEEEEE;
  padding-top: 0.75rem; }

.nf-flight-result-itinerary-title {
  font-weight: bold;
  margin: 0;
  font-size: 0.75rem;
  line-height: 1.2; }

.nf-flight-result-itinerary-inclusions {
  display: block;
  line-height: 1.5; }
  .nf-flight-result-itinerary-inclusions strong {
    color: #217FA8;
    font-weight: bold; }
    .nf-flight-result-itinerary-inclusions strong:hover {
      color: #1A6788; }
    .nf-flight-result-itinerary-inclusions strong:active {
      color: #283E5A; }
    .nf-flight-result-itinerary-inclusions strong:focus {
      border-radius: 4px;
      border: 2px solid #217FA8;
      background: var(--Hover-btn-background-hover, rgba(255, 255, 255, 0)); }

@media only screen and (min-width: 601px) {
  .nf-flight-result-itinerary {
    padding-top: 1.25rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    background-image: none;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .nf-flight-result-itinerary-title {
    padding-right: 0.25rem;
    cursor: pointer; }
  .nf-flight-result-itinerary-inclusions {
    padding-right: 1.5rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%23cccccc' d='M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z'/%3E%3Cpath fill='none' d='M0 0h24v24H0V0z'/%3E%3C/svg%3E");
    background-position: center right 0;
    background-repeat: no-repeat;
    cursor: pointer; } }

.nf-flight-result-fare-rules {
  position: relative;
  text-align: left;
  font-size: 0.675rem;
  margin: 1rem 0 0 0;
  line-height: 1.5;
  margin-bottom: auto; }

.nf-flight-result-fare-rules-cta {
  position: relative;
  color: #217FA8;
  text-decoration: underline;
  display: inline-block;
  cursor: pointer; }
  .nf-flight-result-fare-rules-cta:hover {
    color: #1A6788; }
  .nf-flight-result-fare-rules-cta:active {
    color: #283E5A; }
  .nf-flight-result-fare-rules-cta:focus {
    border-radius: 4px;
    border: 2px solid #217FA8;
    background: var(--Hover-btn-background-hover, rgba(255, 255, 255, 0)); }
  .nf-flight-result-fare-rules-cta.m--open:before {
    content: '';
    width: 0;
    height: 0;
    border-bottom: 1rem solid #2dace3;
    border-left: 0.5rem solid transparent;
    border-right: 0.5rem solid transparent;
    position: absolute;
    top: 1rem;
    left: 50%;
    margin-left: -0.5rem; }

.nf-flight-result-fare-rules-popup {
  position: absolute;
  right: -1.5rem;
  top: 100%;
  top: calc(100% + 0.86rem);
  width: 25rem;
  background: #FFFFFF;
  border: 1px solid #CFCFCF;
  border-top: 0;
  z-index: 2;
  line-height: 1.5rem; }
  .nf-flight-result-fare-rules-popup h2 {
    color: #FFFFFF !important;
    background: #2dace3;
    text-align: left;
    font-size: 0.9375rem;
    font-weight: bold;
    margin: 0 -1px;
    padding: 0.75rem 1rem; }
  .nf-flight-result-fare-rules-popup h3 {
    color: #2dace3;
    font-weight: bold;
    margin: 1rem;
    margin-bottom: 0;
    font-size: 0.9375rem; }
  .nf-flight-result-fare-rules-popup dl {
    margin: 0;
    padding: 0.875rem 1rem; }
  .nf-flight-result-fare-rules-popup dt, .nf-flight-result-fare-rules-popup dd {
    margin: 0;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 0.8125rem;
    border-top: 2px solid #EEEEEE; }
  .nf-flight-result-fare-rules-popup dt {
    width: 60%;
    font-weight: bold;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .nf-flight-result-fare-rules-popup dd {
    width: 40%;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    word-break: break-word; }

.nf-flight-result-fare-rules-close {
  position: absolute;
  right: 0.375rem;
  top: 0.5rem;
  cursor: pointer; }
  .nf-flight-result-fare-rules-close svg {
    display: block;
    fill: #FFFFFF; }

@media only screen and (max-width: 600px) {
  .nf-flight-result-fare-rules-popup {
    left: -1rem;
    right: -1rem;
    width: auto; } }

.nf-pagination {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-flow: wrap;
      -ms-flex-flow: wrap;
          flex-flow: wrap;
  padding: 0.5rem 0;
  text-align: center; }

.nf-pagination-item {
  color: #2dace3;
  font-size: 0.9375rem;
  padding: 0 1.5rem;
  border-right: 1px solid #CFCFCF;
  line-height: 1;
  cursor: pointer;
  margin: 0.5rem 0; }
  .nf-pagination-item.active {
    font-weight: bold; }

.nf-pagination-item:last-of-type {
  border-right: 0; }

.nf-flight-results-list-warning {
  color: #F5A623;
  fill: #F5A623;
  border-width: 2px;
  border-style: solid;
  border-color: inherit;
  background: #fff2dd;
  font-size: 0.8375rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.5rem;
  border-radius: 0.25rem; }
  .nf-flight-results-list-warning svg {
    fill: inherit;
    margin-right: 0.5rem; }

.nf-flexible-dates {
  position: absolute;
  right: 0;
  top: 100%;
  z-index: 8;
  color: #000000;
  background: #FFFFFF;
  border-radius: 0.25rem;
  padding: 16px 16px;
  border: 1px solid var(--Greyscale-greyscale-100, #F1F1F1);
  margin-top: 4px; }
  .nf-flexible-dates .react-toggle-wrapper {
    padding: 0;
    margin: 0;
    margin-top: 24px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: none; }
    .nf-flexible-dates .react-toggle-wrapper .react-toggle-perperson {
      color: #676767; }
    .nf-flexible-dates .react-toggle-wrapper .react-toggle-track {
      width: 34px;
      height: 18px; }
    .nf-flexible-dates .react-toggle-wrapper .react-toggle-thumb {
      width: 18px;
      height: 18px; }

.nf-flexible-dates-header {
  position: relative;
  padding: 0 2rem;
  margin: 0 -1.75rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-flexible-dates-header h2 {
    font-family: var(--Font-Family-Body, Roboto);
    color: var(--Greyscale-greyscale-700, #222);
    font-size: 18px;
    font-weight: 800;
    line-height: 27px;
    text-align: left;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .nf-flexible-dates-header h2 span {
      font-size: 0.75rem;
      margin-left: 0.5rem; }

.nf-flexible-dates-close {
  fill: #000000;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  cursor: pointer; }

.nf-flexible-dates-journey {
  display: none; }

.nf-flexible-dates-info {
  padding: 24px 0px 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.nf-flexible-dates-price {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold; }
  .nf-flexible-dates-price svg {
    width: 1.125rem;
    height: 1.125rem;
    margin-right: 0.75rem;
    fill: #FFFFFF; }

.nf-flexible-dates-saving {
  color: #50ac4f;
  font-size: 0.8125rem;
  font-weight: bold; }

.nf-flexible-dates-key {
  font-size: 0.8125rem;
  text-align: left; }

.nf-flexible-dates-cheapest,
.nf-flexible-dates-selected {
  position: relative;
  font-size: 0.8125rem;
  margin: 0.125rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .nf-flexible-dates-cheapest:before,
  .nf-flexible-dates-selected:before {
    content: '';
    width: 0.9375rem;
    height: 0.75rem;
    display: block;
    margin-right: 0.75rem;
    background: #BDDCB1; }
  .nf-flexible-dates-cheapest .nf-flexible-dates-cheapest-action,
  .nf-flexible-dates-selected .nf-flexible-dates-cheapest-action {
    color: #217FA8;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer; }
    .nf-flexible-dates-cheapest .nf-flexible-dates-cheapest-action svg,
    .nf-flexible-dates-selected .nf-flexible-dates-cheapest-action svg {
      fill: #217FA8;
      width: 16px;
      height: 16px; }

.nf-flexible-dates-selected:before {
  background: #217FA8; }

.nf-flexible-dates-flickity {
  width: -webkit-min-content;
  width: -moz-min-content;
  width: min-content; }
  .nf-flexible-dates-flickity th {
    color: #676767;
    text-align: center;
    font-size: 12px;
    font-weight: 400;
    line-height: 18px; }
  .nf-flexible-dates-flickity th, .nf-flexible-dates-flickity td {
    padding: 0; }

.nf-flexible-dates-item {
  position: relative;
  color: transparent;
  background: #EEE;
  width: 44px;
  height: 44px;
  padding: 4px 2px;
  text-decoration: none !important;
  font-size: 0.8125rem;
  border-radius: 0.25rem;
  display: block;
  margin: 4px 2px;
  cursor: pointer; }
  .nf-flexible-dates-item.m--cheapest {
    background: #BDDCB1; }
    .nf-flexible-dates-item.m--cheapest .nf-flexible-dates-item-date {
      color: #356123; }
    .nf-flexible-dates-item.m--cheapest .nf-flexible-dates-item-price {
      color: #356123; }
  .nf-flexible-dates-item.m--selected {
    background: #217FA8; }
    .nf-flexible-dates-item.m--selected .nf-flexible-dates-item-date {
      color: #FFFFFF; }
    .nf-flexible-dates-item.m--selected .nf-flexible-dates-item-price {
      color: #FFFFFF; }

.nf-flexible-dates-item-date,
.nf-flexible-dates-item-price {
  color: #454545;
  display: block;
  white-space: nowrap;
  line-height: 1; }

.nf-flexible-dates-item-price {
  text-align: center;
  font-size: 12px;
  font-weight: 400;
  line-height: 18px; }
  .nf-flexible-dates-item-price svg {
    width: 1rem;
    height: 1rem;
    fill: #454545; }

.nf-flexible-dates-item-date {
  font-weight: normal;
  text-align: center;
  font-size: 12px;
  font-weight: 800;
  line-height: 18px; }

@media only screen and (max-width: 600px) {
  .nf-flexible-dates {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 4; }
  .nf-flexible-dates-header {
    border-bottom: 0;
    padding: 0 2rem; }
  .nf-flexible-dates-journey {
    display: block;
    margin-top: 1.5rem;
    text-align: center; }
  .nf-flexible-dates-journey-info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
    width: 16rem; }
  .nf-flexible-dates-flickity {
    width: 100%; } }

.nf-flight-results-notification {
  background: #FFFFFF;
  padding: 0 1rem 1rem; }

.nf-flight-results-notification-content {
  cursor: pointer;
  -webkit-tap-highlight-color: transparent; }
  .nf-flight-results-notification-content.m--close .nf-flight-results-notification-body {
    display: none; }
  .nf-flight-results-notification-content.m--close .nf-flight-results-notification-header {
    border-radius: 0.1875rem; }

.nf-flight-results-notification-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #FFFFFF;
  background: #2dace3;
  padding: 0.375rem 1rem;
  border-top-left-radius: 0.1875rem;
  border-top-right-radius: 0.1875rem; }
  .nf-flight-results-notification-header svg {
    fill: #FFFFFF;
    width: 1.5rem;
    height: 1.5rem;
    display: block;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0; }
  .nf-flight-results-notification-header h3 {
    font-size: 0.9375rem;
    line-height: 1.5; }

.nf-flight-results-notification-body {
  display: block;
  font-size: 0.8125rem;
  padding: 1rem;
  border: 1px solid #d5d5d5;
  border-top: 0;
  border-bottom-left-radius: 0.1875rem;
  border-bottom-right-radius: 0.1875rem; }

@media only screen and (min-width: 601px) {
  .nf-flight-results-notification {
    background: #EEEEEE;
    padding: 1rem 1rem 0; }
  .nf-flight-results-notification-body {
    background: #FFFFFF; } }

@media only screen and (min-width: 993px) {
  .nf-flight-results-notification {
    padding: 0; }
  .nf-flight-results-notification-body {
    padding: 1rem; } }

.nf-flight-itinerary .nf-flight-itinerary-leg {
  position: relative;
  background: #FFFFFF;
  margin-top: 24px; }
  .nf-flight-itinerary .nf-flight-itinerary-leg + .nf-flight-itinerary-leg .nf-flight-itinerary-leg--localtext {
    top: 2.5rem; }

.nf-flight-itinerary .nf-flight-itinerary-leg h3 {
  font-weight: 800;
  margin-bottom: 0.5rem;
  font-size: 14px;
  color: #283E5A; }

.nf-flight-itinerary .nf-flight-itinerary-leg--brandtitle {
  font-size: 0.8125rem;
  color: #9c9c9c;
  font-weight: normal;
  margin-left: 0.75rem; }

.nf-flight-itinerary .nf-flight-itinerary-leg--localtext {
  color: #9c9c9c;
  font-size: 0.875rem;
  position: absolute;
  top: 0;
  right: 0;
  line-height: 1.4; }

.nf-flight-itinerary .nf-flight-itinerary-segment {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.nf-flight-itinerary .nf-flight-itinerary-segment--wrap {
  clear: both;
  border-radius: 4px;
  border: 1px solid var(--Greyscale-greyscale-100, #F1F1F1);
  background: #FFFFFF;
  padding: 8px 16px; }

.nf-flight-itinerary .nf-flight-itinerary-segment--cabinclass {
  font-size: 0.8125rem;
  color: #9c9c9c;
  font-weight: normal;
  margin-left: 0.75rem; }

.nf-flight-itinerary .nf-flight-itinerary-segment .operated-by {
  color: #CFCFCF;
  font-size: 0.8125rem;
  display: block;
  clear: both;
  padding-top: 0.5rem;
  text-align: center; }

.nf-flight-itinerary .nf-flight-itinerary-overview-leg--wrap {
  display: inline-block; }

.nf-flight-itinerary .nf-flight-itinerary-segment--details {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%; }

.nf-flight-itinerary .nf-flight-itinerary-collapsible {
  cursor: pointer; }

.nf-flight-itinerary .nf-flight-itinerary-expanded-summary {
  display: none;
  border-top: 1px solid #f1f1f1;
  border-bottom: 1px solid #f1f1f1;
  padding-top: 0px;
  margin-top: 16px;
  margin-bottom: 12px;
  padding-bottom: 8px; }

.nf-flight-itinerary .nf-flight-itinerary-expanded-summary.collapsed {
  display: block;
  border-top: 1px solid #f1f1f1;
  border-bottom: 1px solid #f1f1f1;
  padding-top: 0px;
  margin-top: 16px;
  margin-bottom: 12px;
  padding-bottom: 8px; }

.nf-flight-itinerary .nf-flight-itinerary-leg-nights {
  border: none;
  width: 100%;
  height: 2px;
  margin: 26px 0 10px 0;
  background: repeating-linear-gradient(90deg, #ACACAC 0px, #ACACAC 4px, transparent 4px, transparent 12px); }
  .nf-flight-itinerary .nf-flight-itinerary-leg-nights span {
    color: #454545;
    font-size: 12px;
    font-weight: 800;
    position: relative;
    top: -12px;
    background: #FFFFFF;
    padding: 0px 10px; }
    .nf-flight-itinerary .nf-flight-itinerary-leg-nights span span {
      position: relative;
      top: 0;
      padding: 0; }

.nf-flight-itinerary .nf-flight-itinerary-segment--stops {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.nf-flight-itinerary .nf-flight-itinerary-segment--depart,
.nf-flight-itinerary .nf-flight-itinerary-segment--stops,
.nf-flight-itinerary .nf-flight-itinerary-segment--arrival {
  text-align: left;
  font-size: 0.875rem; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--depart &gt; span,
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops &gt; span,
  .nf-flight-itinerary .nf-flight-itinerary-segment--arrival &gt; span {
    display: block; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--depart .time,
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .time,
  .nf-flight-itinerary .nf-flight-itinerary-segment--arrival .time {
    font-weight: bold; }

.nf-flight-itinerary .nf-flight-itinerary-segment--depart,
.nf-flight-itinerary .nf-flight-itinerary-segment--arrival {
  font-size: 0.75rem;
  line-height: 1.4;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.nf-flight-itinerary .nf-flight-itinerary-segment--arrival {
  text-align: right; }

.nf-flight-itinerary .nf-flight-itinerary-segment--departdate,
.nf-flight-itinerary .nf-flight-itinerary-segment--arrivaldate {
  text-transform: uppercase; }

.nf-flight-itinerary .nf-flight-itinerary-segment--departtime,
.nf-flight-itinerary .nf-flight-itinerary-segment--arrivaltime {
  white-space: nowrap;
  font-size: 16px;
  font-weight: 800;
  color: #0B3C80; }

.nf-flight-itinerary .nf-flight-itinerary-segment--departcode,
.nf-flight-itinerary .nf-flight-itinerary-segment--arrivalcode {
  display: inline-block;
  margin-right: 0.25rem;
  font-size: 12px;
  font-weight: 400;
  color: #454545; }

.nf-flight-itinerary .nf-flight-itinerary-segment--departcode.airport-mismatch,
.nf-flight-itinerary .nf-flight-itinerary-segment--arrivalcode.airport-mismatch {
  background: #f8e71e; }

.nf-flight-itinerary .nf-flight-itinerary-segment--stops {
  text-align: center; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .duration {
    white-space: nowrap;
    font-size: 12px;
    font-weight: 400;
    color: #676767; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .transport-type {
    position: relative;
    height: 0.0625rem;
    margin: 0.25rem 0;
    border-top: 2px dotted #ACACAC; }
    .nf-flight-itinerary .nf-flight-itinerary-segment--stops .transport-type svg {
      fill: #676767;
      background: #FFFFFF;
      position: absolute;
      top: 50%;
      left: 0%;
      -webkit-transform: translateX(-50%) translateY(-50%) scale(1.5);
              transform: translateX(-50%) translateY(-50%) scale(1.5);
      padding: 0.25rem 0;
      font-size: 1.125rem; }
    .nf-flight-itinerary .nf-flight-itinerary-segment--stops .transport-type.plane svg {
      -webkit-transform: translateX(-50%) translateY(-50%) rotate(90deg) scale(1.5);
              transform: translateX(-50%) translateY(-50%) rotate(90deg) scale(1.5); }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .transport-end {
    position: absolute;
    left: 100%; }
    .nf-flight-itinerary .nf-flight-itinerary-segment--stops .transport-end svg {
      -webkit-transform: translateX(-50%) translateY(-50%) scale(1.5) !important;
              transform: translateX(-50%) translateY(-50%) scale(1.5) !important; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .flight-number {
    color: #676767;
    font-size: 12px;
    font-weight: 600; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .itineary-expand {
    color: #1A6788; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .operated-by {
    color: #CFCFCF; }

.nf-flight-itinerary .nf-flight-itinerary-segment--baggage {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.8125rem;
  margin-top: 1rem; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--baggage svg {
    font-size: 1rem;
    margin-right: 0.125rem; }

.nf-flight-itinerary .nf-flight-itinerary-leg--airlineimg {
  display: inline-block;
  width: 40px; }

.nf-flight-itinerary .nf-flight-itinerary-leg--airlinesvg svg {
  max-width: 40px;
  display: inline-block;
  width: 42px;
  margin-right: 40px; }

.nf-flight-itinerary .nf-flight-stopover {
  padding: 0.5rem;
  border-radius: 4px;
  background: #EFF6EC;
  margin: 16px 0; }
  .nf-flight-itinerary .nf-flight-stopover p {
    display: inline;
    color: #283E5A;
    font-size: 12px;
    font-weight: 400; }

.nf-flight-itinerary .nf-flight-itinerary-collapsible-airline-info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 16px 0; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-airline-info span {
    color: var(--Semantic-Elements-Text-heading_primary, #03263B);
    font-size: 12px;
    font-weight: 400; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-airline-info .nf-flight-itinerary-collapsible-journey-type {
    border-radius: 4px;
    background: var(--Greyscale-greyscale-100, #F1F1F1);
    color: #283E5A;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 10px; }

.nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-airline {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-airline span {
    color: #676767;
    font-size: 12px;
    font-weight: 400; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-airline svg,
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-airline img {
    width: 45px;
    height: 30px; }

.nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-journey {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-journey svg {
      width: 13px;
      height: 31px;
      fill: #F1F1F1;
      margin: 2px 0; }
    .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-journey .nf-flight-itinerary-collapsible-path {
      background: #F1F1F1;
      width: 2px;
      height: 100%;
      margin: 5px; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-left: 8px; }
    .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-departure {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
      .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-departure time {
        color: var(--Semantic-Elements-Text-heading_secondary, #0B3C80);
        font-size: var(--Font-Size-Body-Body-XS, 12px);
        font-weight: 800; }
      .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-departure p {
        color: #454545;
        font-size: 12px;
        font-weight: 400;
        margin: 0;
        margin-left: 4px; }
    .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-arrival {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
      .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-arrival time {
        color: var(--Semantic-Elements-Text-heading_secondary, #0B3C80);
        font-size: var(--Font-Size-Body-Body-XS, 12px);
        font-weight: 800; }
      .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-arrival p {
        color: #454545;
        font-size: 12px;
        font-weight: 400;
        margin: 0;
        margin-left: 4px; }
    .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-duration {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
      .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-duration svg {
        width: 16px;
        height: 16px;
        margin-right: 4px;
        margin-top: 12px;
        margin-bottom: 12px; }
      .nf-flight-itinerary .nf-flight-itinerary-collapsible-container .nf-flight-itinerary-collapsible-stop .nf-flight-itinerary-collapsible-stop-details .nf-flight-itinerary-collapsible-duration span {
        color: #454545;
        font-size: 12px;
        font-weight: 400; }

.nf-flight-itinerary-summary {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 1.5rem; }
  .nf-flight-itinerary-summary:after {
    content: '';
    display: block;
    width: 0.0625rem;
    position: absolute;
    top: 1rem;
    bottom: 0;
    left: 50%;
    background: #EEEEEE; }
  .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg {
    position: relative;
    width: 346px;
    /* Need to check this value */
    margin: 0 1rem;
    text-align: left;
    background: #FFFFFF;
    /* Needed to hide vertical grey seperator on smaller screen sizes */
    z-index: 1;
    /* Needed to hide grey vertical seperator on smaller screen sizes */ }
    .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg h4 {
      color: #2dace3;
      font-weight: bold;
      border-bottom: 0.0625rem solid #EEEEEE;
      line-height: 1.75rem;
      padding-top: 1rem;
      margin-bottom: 1rem;
      text-align: left; }
    .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .airline {
      height: 4.75rem;
      line-height: 4.5rem;
      display: inline-block;
      width: 5.625rem;
      margin-right: 0.75rem; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .airline img {
        vertical-align: middle;
        width: 100%; }
    .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .depart,
    .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .arrival {
      color: #EEEEEE;
      background: #283E5A;
      text-align: center;
      padding: 0.5rem;
      width: 4.75rem;
      display: inline-block;
      vertical-align: middle;
      margin-right: 0.5rem; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .depart span,
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .arrival span {
        display: block;
        line-height: 1.25rem;
        white-space: nowrap; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .depart span:nth-child(1),
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .arrival span:nth-child(1) {
        font-size: 0.8125rem;
        text-transform: uppercase; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .depart span:nth-child(2),
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .arrival span:nth-child(2) {
        font-size: 1.125rem;
        font-weight: bold;
        letter-spacing: 0.0625rem;
        color: #FFFFFF; }
    .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .arrival {
      margin-right: 0; }
    .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops {
      text-align: center;
      width: 4.75rem;
      display: inline-block;
      vertical-align: middle;
      margin-right: 0.5rem; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops span {
        display: block;
        line-height: 1.25rem;
        font-size: 0.875rem;
        margin: 0.25rem 0; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops .transport-type {
        position: relative;
        height: 0.0625rem;
        background: #2dace3;
        margin: 0.9375rem 0.35rem; }
        .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops .transport-type i {
          color: #2dace3;
          background: #FFFFFF;
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translateX(-50%) translateY(-50%);
                  transform: translateX(-50%) translateY(-50%); }
        .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops .transport-type.plane i {
          -webkit-transform: translateX(-50%) translateY(-50%) rotate(90deg);
                  transform: translateX(-50%) translateY(-50%) rotate(90deg); }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops .direct,
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops .indirect {
        font-size: 0.8125rem;
        font-weight: bold;
        margin-bottom: 0;
        color: #78b543; }
      .nf-flight-itinerary-summary .nf-flight-itinerary-summary-leg .stops .indirect {
        color: #e40046; }
  .nf-flight-itinerary-summary .return .nf-flight-itinerary-summary-leg:after {
    content: none; }

.nf-flight-itinerary-segment--baggage + .nf-flight-itinerary-attributes {
  margin-top: 1.25rem; }

.nf-flight-itinerary-attributes {
  font-size: 0.8125rem;
  color: #9c9c9c;
  border-top: 0.0625rem solid #EEEEEE;
  padding-top: 1rem;
  text-align: left;
  clear: both;
  margin-top: 2rem; }
  .nf-flight-itinerary-attributes .nf-flight-itinerary-attributes--item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    line-height: 1;
    padding-right: 0.5rem;
    margin-bottom: 0.75rem; }
    .nf-flight-itinerary-attributes .nf-flight-itinerary-attributes--item svg {
      fill: #2dace3;
      margin-right: 0.5rem;
      font-size: 1.125rem; }

@media only screen and (min-width: 993px) {
  .nf-flight-itinerary-leg--airlineimg {
    margin-right: 40px; }
  .nf-flight-itinerary-segment--depart {
    padding-right: 10%;
    -webkit-flex-basis: 16%;
        -ms-flex-preferred-size: 16%;
            flex-basis: 16%; }
  .nf-flight-itinerary-segment--arrival {
    padding-left: 10%;
    -webkit-flex-basis: 16%;
        -ms-flex-preferred-size: 16%;
            flex-basis: 16%; }
  .nf-flight-itinerary-collapsible {
    margin-left: 40px; } }

@media only screen and (max-width: 992px) {
  .nf-flight-itinerary .nf-flight-itinerary-leg--brandtitle {
    display: block;
    margin-left: 0;
    margin-top: 0.5rem;
    font-size: 0.75rem; }
  .nf-flight-itinerary .nf-flight-itinerary-leg--localtext {
    font-size: 0.75rem; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--cabinclass {
    display: block;
    margin-left: 0;
    font-size: 0.75rem; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--depart {
    padding-right: 4%;
    -webkit-flex-basis: 28%;
        -ms-flex-preferred-size: 28%;
            flex-basis: 28%; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--arrival {
    padding-left: 4%;
    -webkit-flex-basis: 28%;
        -ms-flex-preferred-size: 28%;
            flex-basis: 28%; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--departtime,
  .nf-flight-itinerary .nf-flight-itinerary-segment--arrivaltime {
    font-size: 1rem; }
  .nf-flight-itinerary .nf-flight-itinerary-collapsible {
    margin-left: 8px; }
  .nf-flight-itinerary .nf-flight-itinerary-segment--stops .transport-type {
    margin: 1rem 0; }
  .nf-flight-itinerary .nf-flight-itinerary-leg--airlineimg {
    margin-right: 8px; } }

@media only screen and (max-width: 600px) {
  .nf-flight-itinerary .nf-flight-itinerary-segment--departtime,
  .nf-flight-itinerary .nf-flight-itinerary-segment--arrivaltime {
    font-size: 0.875rem; }
  .nf-flight-itinerary-segment--depart {
    padding-right: 0% !important; }
  .nf-flight-itinerary-segment--arrival {
    padding-left: 0% !important; } }

.nf-flight-results-list-alternatives {
  position: relative;
  margin-top: -1rem;
  z-index: 4; }
  .nf-flight-results-list-alternatives:after {
    content: '';
    width: 0;
    height: 0;
    display: block;
    border-bottom: 0.75rem solid #2dace3;
    border-left: 0.5rem solid transparent;
    border-right: 0.5rem solid transparent;
    position: absolute;
    bottom: 100%;
    left: 5rem; }
  .nf-flight-results-list-alternatives h2 {
    color: #FFFFFF;
    background: #2dace3;
    padding: 0.5rem 1.5rem;
    font-size: 0.9375rem;
    text-align: left; }
  .nf-flight-results-list-alternatives .nf-flight-result {
    margin-bottom: 0.125rem; }
  .nf-flight-results-list-alternatives .nf-flight-result:last-of-type {
    margin-bottom: 1.5rem; }

.nf-flight-results-list-alternatives-close {
  position: absolute;
  right: 0.75rem;
  top: 0.3125rem;
  display: block; }
  .nf-flight-results-list-alternatives-close svg {
    fill: #FFFFFF; }

@media only screen and (min-width: 601px) {
  .nf-flight-results-list-alternatives:after {
    left: auto;
    right: 9rem; } }

@media only screen and (min-width: 993px) {
  .nf-flight-results-list-alternatives {
    margin-top: -1.25rem; } }

@media only screen and (min-width: 1381px) {
  .nf-flight-results-list-alternatives {
    margin-top: -2rem; } }

.nf-flight-results-banner-ad,
.nf-flight-details-banner-ad {
  overflow: hidden;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .nf-flight-results-banner-ad a,
  .nf-flight-details-banner-ad a {
    display: block; }
  .nf-flight-results-banner-ad img,
  .nf-flight-details-banner-ad img {
    width: 100%;
    max-width: 40rem;
    border-radius: 0.1875rem;
    display: block; }
  .nf-flight-results-banner-ad.m--list,
  .nf-flight-details-banner-ad.m--list {
    margin-bottom: 1rem;
    margin-top: 1rem; }

.nf-flight-details-banner-ad {
  margin-bottom: 0.5rem;
  margin-top: 0.5rem; }

.nf-landscape-banner img {
  max-width: 60.5rem; }

@media only screen and (min-width: 993px) {
  .nf-flight-results-banner-ad.m--list {
    margin-bottom: 1.25rem; } }

@media only screen and (min-width: 1381px) {
  .nf-flight-results-banner-ad.m--list {
    margin-bottom: 2rem; } }

.nf-journey-waiting {
  text-align: center;
  color: #FFFFFF;
  background: #289ED1;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  height: 100%;
  width: 100%;
  z-index: 5;
  padding: 0;
  overflow-y: scroll; }
  .nf-journey-waiting:before {
    content: '';
    display: inline-block;
    width: 100%;
    height: 0.3125rem;
    position: absolute;
    top: 0;
    left: 0;
    background: #2dace3; }
  .nf-journey-waiting:after {
    content: '';
    position: fixed;
    bottom: 0;
    width: 100%;
    height: 2.5rem;
    left: 0;
    background: -webkit-gradient(linear, left bottom, left top, from(#289ED1), to(transparent));
    background: linear-gradient(to top, #289ED1, transparent);
    display: block;
    z-index: 1; }
  .nf-journey-waiting .nf-journey-waiting-info {
    z-index: 1;
    position: relative;
    max-width: 27rem;
    margin: 1.5rem auto 0;
    padding: 0 1rem;
    padding-bottom: 2.5rem; }
    .nf-journey-waiting .nf-journey-waiting-info h2 {
      color: #FFFFFF; }
  .nf-journey-waiting h2 {
    text-align: center;
    margin-bottom: 1.5rem;
    font-family: adobe-handwriting-frank;
    font-display: auto;
    font-style: normal;
    font-weight: 400;
    font-stretch: normal;
    font-size: 1.75rem;
    color: #FFFFFF; }
  .nf-journey-waiting .nf-journey-waiting-message {
    font-size: 0.9375rem;
    line-height: 1.5;
    width: 17rem;
    margin: 0 auto;
    margin-bottom: 1.5rem; }
  .nf-journey-waiting .nf-journey-waiting-item {
    margin-bottom: 0.5rem;
    margin-top: 4rem;
    font-size: 0.875rem; }
    .nf-journey-waiting .nf-journey-waiting-item span {
      text-transform: uppercase;
      font-size: 0.8125rem; }
    .nf-journey-waiting .nf-journey-waiting-item strong {
      text-transform: uppercase;
      font-weight: normal; }
    .nf-journey-waiting .nf-journey-waiting-item + .nf-journey-waiting-item {
      margin-top: 0; }

@keyframes pulse {
  0% {
    left: 0; }
  100% {
    left: 100%; } }
  .nf-journey-waiting .nf-journey-waiting-progress {
    width: 17rem;
    border: 0.5rem solid #FFFFFF;
    background: #FFFFFF;
    border-radius: 1rem;
    height: 1.75rem;
    position: relative;
    overflow: hidden;
    margin: 1.5rem auto; }
    .nf-journey-waiting .nf-journey-waiting-progress span {
      position: absolute;
      left: 0;
      top: 0;
      height: 0.75rem;
      display: block;
      background: #2dace3;
      border-radius: 0.75rem;
      -webkit-transition: all linear 400ms;
      transition: all linear 400ms;
      z-index: 1; }
    .nf-journey-waiting .nf-journey-waiting-progress:before {
      content: '';
      display: block;
      width: 1rem;
      height: 100%;
      position: absolute;
      top: 0;
      -webkit-transform: skew(30deg);
              transform: skew(30deg);
      -webkit-animation: pulse ease 2s infinite;
              animation: pulse ease 2s infinite;
      background: rgba(238, 238, 238, 0.3);
      border-left: 0.125rem solid rgba(238, 238, 238, 0.1);
      z-index: 2; }
    .nf-journey-waiting .nf-journey-waiting-progress:after {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      right: 0;
      bottom: 0;
      background: #EEEEEE; }
  .nf-journey-waiting .loading-wrap {
    position: relative;
    max-width: 100%;
    height: 13.5rem;
    overflow: hidden; }
    .nf-journey-waiting .loading-wrap img.nf-logo-img,
    .nf-journey-waiting .loading-wrap div.nf-logo-img svg {
      width: 240px;
      height: 60px;
      position: absolute;
      top: 9rem;
      left: 50%;
      -webkit-transform: translate3d(-50%, -50%, 0);
              transform: translate3d(-50%, -50%, 0);
      z-index: 1; }
    .nf-journey-waiting .loading-wrap img.nf-logo-secondary-img,
    .nf-journey-waiting .loading-wrap div.nf-logo-secondary-img svg {
      height: 20px;
      position: absolute;
      top: 12rem;
      left: 50%;
      -webkit-transform: translate3d(-50%, -50%, 0);
              transform: translate3d(-50%, -50%, 0);
      z-index: 1; }
      .nf-journey-waiting .loading-wrap img.nf-logo-secondary-img.nf-powered-by,
      .nf-journey-waiting .loading-wrap div.nf-logo-secondary-img svg.nf-powered-by {
        width: 153px;
        height: 19px; }
  .nf-journey-waiting .loading-svg,
  .nf-journey-waiting .loading-products {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
            transform: translate3d(-50%, -50%, 0); }
  .nf-journey-waiting .loading-mask {
    background: #289ED1;
    width: 380px;
    height: 280px;
    position: absolute;
    top: 7.5rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
    .nf-journey-waiting .loading-mask:before, .nf-journey-waiting .loading-mask:after {
      content: '';
      width: 0;
      height: 0;
      display: inline-block;
      border-left: 6rem solid #289ED1;
      border-top: 2rem solid transparent;
      position: absolute;
      left: 3.5rem;
      bottom: 100%; }
    .nf-journey-waiting .loading-mask:after {
      left: auto;
      right: 3.5rem;
      border-left: 0;
      border-right: 6rem solid #289ED1; }
  .nf-journey-waiting #logo {
    fill: white; }

@-webkit-keyframes rotate {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0) rotate(0);
            transform: translate3d(-50%, 0, 0) rotate(0); }
  25% {
    -webkit-transform: translate3d(-50%, 0, 0) rotate(90deg);
            transform: translate3d(-50%, 0, 0) rotate(90deg); }
  50% {
    -webkit-transform: translate3d(-50%, 0, 0) rotate(180deg);
            transform: translate3d(-50%, 0, 0) rotate(180deg); }
  75% {
    -webkit-transform: translate3d(-50%, 0, 0) rotate(270deg);
            transform: translate3d(-50%, 0, 0) rotate(270deg); }
  100% {
    -webkit-transform: translate3d(-50%, 0, 0) rotate(360deg);
            transform: translate3d(-50%, 0, 0) rotate(360deg); } }

@keyframes rotate {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0) rotate(0);
            transform: translate3d(-50%, 0, 0) rotate(0); }
  25% {
    -webkit-transform: translate3d(-50%, 0, 0) rotate(90deg);
            transform: translate3d(-50%, 0, 0) rotate(90deg); }
  50% {
    -webkit-transform: translate3d(-50%, 0, 0) rotate(180deg);
            transform: translate3d(-50%, 0, 0) rotate(180deg); }
  75% {
    -webkit-transform: translate3d(-50%, 0, 0) rotate(270deg);
            transform: translate3d(-50%, 0, 0) rotate(270deg); }
  100% {
    -webkit-transform: translate3d(-50%, 0, 0) rotate(360deg);
            transform: translate3d(-50%, 0, 0) rotate(360deg); } }
  .nf-journey-waiting .loading-products {
    position: absolute;
    top: 4.5rem;
    left: 50%;
    -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
    width: 18.75rem;
    height: 18.75rem;
    border-radius: 50%;
    -webkit-animation: rotate 8s infinite;
            animation: rotate 8s infinite; }
    .nf-journey-waiting .loading-products div svg,
    .nf-journey-waiting .loading-products svg {
      position: absolute;
      top: 4.5rem;
      left: 50%;
      -webkit-transform: translate3d(-50%, -50%, 0);
              transform: translate3d(-50%, -50%, 0);
      width: 3rem;
      height: 3rem;
      -webkit-transform-origin: center center;
              transform-origin: center center;
      background: #289ED1;
      fill: #FFFFFF;
      padding: 0.5rem; }
    .nf-journey-waiting .loading-products div:nth-child(2) svg,
    .nf-journey-waiting .loading-products svg:nth-child(2) {
      top: 50%;
      left: 100%;
      -webkit-transform: translate3d(-50%, -50%, 0) rotate(90deg);
              transform: translate3d(-50%, -50%, 0) rotate(90deg); }
    .nf-journey-waiting .loading-products div:nth-child(3) svg,
    .nf-journey-waiting .loading-products svg:nth-child(3) {
      top: 100%;
      -webkit-transform: translate3d(-50%, -50%, 0) rotate(180deg);
              transform: translate3d(-50%, -50%, 0) rotate(180deg); }
    .nf-journey-waiting .loading-products div:nth-child(4) svg,
    .nf-journey-waiting .loading-products svg:nth-child(4) {
      left: 0;
      top: 50%;
      -webkit-transform: translate3d(-50%, -50%, 0) rotate(-90deg);
              transform: translate3d(-50%, -50%, 0) rotate(-90deg); }
    .nf-journey-waiting .loading-products div:first-child svg.plane-icon,
    .nf-journey-waiting .loading-products svg.plane-icon:first-child {
      -webkit-transform: translate3d(-50%, -50%, 0) rotate(90deg);
              transform: translate3d(-50%, -50%, 0) rotate(90deg); }
    .nf-journey-waiting .loading-products div:nth-child(2) svg.plane-icon,
    .nf-journey-waiting .loading-products svg.plane-icon:nth-child(2) {
      -webkit-transform: translate3d(-50%, -50%, 0) rotate(180deg);
              transform: translate3d(-50%, -50%, 0) rotate(180deg); }
    .nf-journey-waiting .loading-products div:nth-child(3) svg.plane-icon,
    .nf-journey-waiting .loading-products svg.plane-icon:nth-child(3) {
      -webkit-transform: translate3d(-50%, -50%, 0) rotate(270deg);
              transform: translate3d(-50%, -50%, 0) rotate(270deg); }
    .nf-journey-waiting .loading-products div:nth-child(4) svg.plane-icon,
    .nf-journey-waiting .loading-products svg.plane-icon:nth-child(4) {
      -webkit-transform: translate3d(-50%, -50%, 0) rotate(0);
              transform: translate3d(-50%, -50%, 0) rotate(0); }
  .nf-journey-waiting .m--loading + .nf-journey-waiting-item {
    margin-top: 2rem; }

.nf-flight-results-google-adverts {
  width: 100%;
  min-width: 9rem;
  grid-area: ppc;
  overflow: hidden; }

.no-cssgrid.no-cssgridlegacy .nf-flight-results-highlight {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 1rem; }
  .no-cssgrid.no-cssgridlegacy .nf-flight-results-highlight.m--no-alt .nf-flight-results-sort {
    width: 100%; }

.no-cssgrid.no-cssgridlegacy .nf-flight-results-sort {
  width: calc(66% - 1rem);
  margin-right: auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.no-cssgrid.no-cssgridlegacy .nf-flight-results-sort-item {
  width: calc(50% - 1px); }

.no-cssgrid.no-cssgridlegacy .nf-flight-results-flexible-dates {
  width: 33%;
  display: inline-block; }

@media only screen and (min-width: 601px) {
  .no-cssgrid.no-cssgridlegacy .nf-flight-result {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
  .no-cssgrid.no-cssgridlegacy .react-toggle-wrapper {
    padding: 1rem 0; }
  .no-cssgrid.no-cssgridlegacy .nf-flight-results-highlight {
    padding-bottom: 0; }
  .no-cssgrid.no-cssgridlegacy .nf-flight-results-header {
    width: 100%;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .no-cssgrid.no-cssgridlegacy .nf-flight-results-header:after {
      right: 15rem; }
  .no-cssgrid.no-cssgridlegacy .nf-flight-result-main {
    width: calc(100% - 16rem); }
    .no-cssgrid.no-cssgridlegacy .nf-flight-result-main:after {
      background-position-x: 0;
      background-position-y: 0; }
  .no-cssgrid.no-cssgridlegacy .nf-flight-result-stub {
    width: 15rem; } }

@media only screen and (min-width: 993px) {
  .no-cssgrid.no-cssgridlegacy .nf-flight-results-wrap {
    position: relative;
    width: 100%;
    max-width: 81.5rem;
    margin: 0 auto;
    padding-top: 4rem;
    padding-left: 19rem;
    padding-right: 1rem; }
    .no-cssgrid.no-cssgridlegacy .nf-flight-results-wrap.m--anywhere .nf-flight-results-list {
      margin-top: 1rem; }
  .no-cssgrid.no-cssgridlegacy .react-toggle-wrapper {
    position: absolute;
    top: 5.5rem;
    left: 1.5rem; }
  .no-cssgrid.no-cssgridlegacy .nf-flight-results-highlight {
    padding: 1rem 0; }
  .no-cssgrid.no-cssgridlegacy .nf-flight-results-filters {
    width: 17rem;
    position: absolute;
    left: 1rem;
    top: 5rem; }
  .no-cssgrid.no-cssgridlegacy .nf-flight-results-summary {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%; }
  .no-cssgrid.no-cssgridlegacy .nf-flight-results-header:after {
    right: 16rem; }
  .no-cssgrid.no-cssgridlegacy .nf-flight-result-main {
    width: calc(100% - 17rem); }
  .no-cssgrid.no-cssgridlegacy .nf-flight-result-stub {
    width: 16rem; } }

@media only screen and (min-width: 1381px) {
  .no-cssgrid.no-cssgridlegacy .nf-flight-results-wrap {
    padding-left: 22rem;
    padding-right: 0; }
  .no-cssgrid.no-cssgridlegacy .nf-flight-results-filters {
    width: 20rem;
    left: 0; }
  .no-cssgrid.no-cssgridlegacy .nf-flight-results-header:after {
    right: 17rem; }
  .no-cssgrid.no-cssgridlegacy .nf-flight-result-main {
    width: calc(100% - 18rem); }
  .no-cssgrid.no-cssgridlegacy .nf-flight-result-stub {
    width: 17rem; } }

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
    -webkit-transform: translateY(3rem);
            transform: translateY(3rem); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes fadeIn {
  0% {
    opacity: 0;
    -webkit-transform: translateY(3rem);
            transform: translateY(3rem); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

.nf-flight-results-search {
  height: 0;
  overflow: hidden; }
  .nf-flight-results-search.m--displayed {
    width: 100%;
    height: auto;
    border-top: 1px solid #d5d5d5;
    overflow: visible; }
  .nf-flight-results-search .nf-flight-search {
    width: 100%;
    max-width: 84.25rem;
    margin: 0 auto;
    position: relative;
    margin-bottom: 1.5rem; }
  .nf-flight-results-search .nf-ng-search--radio {
    margin: 1.5rem 0 1rem;
    padding: 0;
    border-top: 0; }
  .nf-flight-results-search .nf-ng-search--radio label {
    color: #4a4a4a; }
  .nf-flight-results-search .nf-ng-search--radio label span {
    background: #FFFFFF;
    -webkit-box-shadow: 0 0 0 2px #adadad;
            box-shadow: 0 0 0 2px #adadad; }
  .nf-flight-results-search input.react-autosuggest__input,
  .nf-flight-results-search .DateRangePickerInput,
  .nf-flight-results-search .SingleDatePickerInput,
  .nf-flight-results-search .nf-search-input--passengers input.mat-input-element {
    border: 1px solid #d5d5d5; }
  .nf-flight-results-search .DateRangePickerInput,
  .nf-flight-results-search .SingleDatePickerInput {
    border-radius: 4px; }
  .nf-flight-results-search .nf-search-input--passengers input.mat-input-element {
    border-bottom: 1px solid #d5d5d5 !important; }
  .nf-flight-results-search .nf-search-input--second .react-autosuggest__input {
    border-left: 0; }
  .nf-flight-results-search .nf-search-input--first i.nf-search-input--close,
  .nf-flight-results-search .nf-search-input--second i.nf-search-input--close {
    top: 2px;
    height: calc(100% - 4px); }
  .nf-flight-results-search .nf-search-popup--class .nf-form-element {
    height: auto; }

@media only screen and (max-width: 600px) {
  .nf-flight-results-search {
    position: relative; }
    .nf-flight-results-search.m--displayed {
      background: #EEEEEE;
      border-bottom: 1px solid #d5d5d5;
      margin-bottom: 1rem; }
      .nf-flight-results-search.m--displayed:before {
        content: '';
        width: 1rem;
        height: 1rem;
        background: #FFFFFF;
        border-left: 1px solid #d5d5d5;
        border-bottom: 1px solid #d5d5d5;
        display: block;
        position: absolute;
        left: 50%;
        top: 0;
        -webkit-transform: translateX(-50%) translateY(-0.5rem) rotate(-45deg);
                transform: translateX(-50%) translateY(-0.5rem) rotate(-45deg); }
    .nf-flight-results-search .nf-search-input--first .react-autosuggest__input {
      border-bottom: 0; }
    .nf-flight-results-search .nf-search-input--second .react-autosuggest__input {
      border-top: 0;
      border-left: 1px solid #d5d5d5; }
    .nf-flight-results-search .nf-flight-search.m--fixed-departure .nf-search-input--second .react-autosuggest__input {
      border-top: 1px solid #d5d5d5; }
    .nf-flight-results-search .nf-flight-search.m--fixed-departure .nf-search-input--first.nf-search-input-multi .react-autosuggest__input {
      border-bottom: 1px solid #d5d5d5; } }

.nf-flight-results-search .nf-flight-search.m--fixed-departure .nf-search-input--second .react-autosuggest__input {
  border-left: 1px solid #d5d5d5; }

.nf-flight-results-search .nf-flight-search.m--fixed-departure .nf-search-input--first.nf-search-input-multi .react-autosuggest__input {
  border-right: 1px solid #d5d5d5; }

body.m--open {
  overflow: hidden; }

.nf-flight-results {
  background: #EEEEEE;
  color: #4a4a4a; }
  .nf-flight-results a {
    text-decoration: underline; }

.nf-flight-results-wrap &gt; .nf-error-msgbox {
  margin-top: 2rem;
  font-size: 1rem; }
  .nf-flight-results-wrap &gt; .nf-error-msgbox svg {
    width: 1.5rem;
    height: 1.5rem; }

@media only screen and (min-width: 601px) {
  body.m--open {
    overflow: initial; } }

@media only screen and (min-width: 993px) {
  .nf-flight-results-wrap {
    display: -ms-grid;
    display: grid;
    grid-gap: 1.25rem;
    -ms-grid-rows: auto 1.25rem auto 1.25rem auto 1.25rem 1fr 1.25rem auto;
    -ms-grid-columns: 1fr 1.25rem 17rem 1.25rem minmax(0, 60.5rem) 1.25rem 1fr;
        grid-template: "summary summary summary summary" auto ". notification notification ." auto "alert sorting sorting ." auto ". filters results ." 1fr ". . ppc ." auto/1fr 17rem minmax(0, 60.5rem) 1fr;
    padding-bottom: 1.25rem; }
    .nf-flight-results-wrap &gt; .nf-error-msgbox {
      grid-area: summary;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .nf-flight-results-wrap.m--anywhere {
      -ms-grid-rows: auto 1.25rem 1fr 1.25rem auto;
      -ms-grid-columns: 1fr 1.25rem 17rem 1.25rem minmax(0, 63.5rem) 1.25rem 1fr;
          grid-template: "summary summary summary summary" auto ". filters results ." 1fr ". . ppc ." auto/1fr 17rem minmax(0, 63.5rem) 1fr; }
  .nf-flight-results-summary {
    grid-area: summary;
    display: -ms-grid;
    display: grid;
        grid-template-areas: "header"; }
  .nf-flight-results-filters {
    grid-area: filters; }
    .nf-flight-results-filters .nf-flight-results-empty-div {
      border-top: 5px solid #ebebeb;
      margin: 0 -1.5rem 1rem -1.5rem; }
    .nf-flight-results-filters .nf-flight-results-paypal-static-content {
      padding: 0.313rem;
      font-size: 0.625rem;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      margin-bottom: 1rem;
      text-align: center; }
      .nf-flight-results-filters .nf-flight-results-paypal-static-content .nf-paypal-static-content-icon {
        display: block; }
        .nf-flight-results-filters .nf-flight-results-paypal-static-content .nf-paypal-static-content-icon svg {
          width: 80;
          height: 20; }
      .nf-flight-results-filters .nf-flight-results-paypal-static-content .nf-paypal-static-content-description {
        display: block; }
        .nf-flight-results-filters .nf-flight-results-paypal-static-content .nf-paypal-static-content-description .nf-paypal-static-content-description-line-1 {
          margin-bottom: 0.125rem; }
  .nf-flight-results-notification {
    grid-area: notification; }
    .nf-flight-results-notification + .nf-flight-results-highlight {
      margin-top: 0; }
  .nf-flight-results-highlight {
    grid-area: sorting;
    margin-top: -1.25rem; }
  .nf-flight-results-list {
    grid-area: results; }
  .react-toggle-wrapper {
    -ms-grid-row: 7;
    -ms-grid-column: 3; }
    .nf-flight-results-wrap.m--anywhere &gt; .react-toggle-wrapper {
    -ms-grid-row: 3;
    -ms-grid-column: 3; }
  .react-toggle-wrapper {
    -ms-grid-row: 7;
    -ms-grid-column: 3; }
    .nf-flight-results-wrap.m--anywhere &gt; .react-toggle-wrapper {
    -ms-grid-row: 3;
    -ms-grid-column: 3; }
  .nf-flight-results-wrap &gt; .nf-searchpanel-options {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3; }
  .nf-flight-results-summary &gt; .nf-flight-results-header {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1; }
  .nf-flight-results-summary &gt; .nf-flight-results-summary-wrap {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1; }
  .nf-flight-results-wrap &gt; .nf-flight-results-price-alert-container {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1; }
  .nf-flight-results-wrap &gt; .nf-flight-results-sort {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3; }
  .nf-flight-results-google-adverts {
    -ms-grid-row: 9;
    -ms-grid-column: 5; }
    .nf-flight-results-wrap.m--anywhere &gt; .nf-flight-results-google-adverts {
    -ms-grid-row: 5;
    -ms-grid-column: 5; } }

@media only screen and (min-width: 993px) {
  .nf-flight-results-wrap &gt; .nf-error-msgbox {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 7; }
    .nf-flight-results-wrap.m--anywhere &gt; .nf-error-msgbox {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 7; }
  .nf-flight-results-summary {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 7; }
    .nf-flight-results-wrap.m--anywhere &gt; .nf-flight-results-summary {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 7; }
  .nf-flight-results-filters {
    -ms-grid-row: 7;
    -ms-grid-column: 3; }
    .nf-flight-results-wrap.m--anywhere &gt; .nf-flight-results-filters {
    -ms-grid-row: 3;
    -ms-grid-column: 3; }
  .nf-flight-results-notification {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3; }
  .nf-flight-results-highlight {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3; }
    .nf-flight-results-highlight.m--no-alt &gt; .nf-flight-results-highlight {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 5; }
  .nf-flight-results-wrap &gt; .nf-flight-results-highlight {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3; }
  .nf-flight-results-list {
    -ms-grid-row: 7;
    -ms-grid-column: 5; }
    .nf-flight-results-wrap.m--anywhere &gt; .nf-flight-results-list {
    -ms-grid-row: 3;
    -ms-grid-column: 5; } }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-flight-results-highlight {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; }
    .nf-flight-results-highlight.m--no-alt &gt; .nf-flight-results-highlight {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5; } }

@media only screen and (max-width: 600px) {
  .nf-flight-results-highlight {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 7; }
    .nf-flight-results-highlight.m--no-alt &gt; .nf-flight-results-highlight {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5; } }

@media only screen and (min-width: 1381px) {
  .nf-flight-results-wrap {
    grid-gap: 2rem;
    -ms-grid-rows: auto 2rem auto 2rem auto 2rem 1fr 2rem auto;
    -ms-grid-columns: minmax(0, 1fr) 2rem 20rem 2rem minmax(0, 60.5rem) 2rem minmax(12rem, 1fr);
        grid-template: "summary summary summary summary" auto ". notification notification advert" auto ". sorting sorting advert" auto ". filters results advert" 1fr ". . ppc advert" auto/minmax(0, 1fr) 20rem minmax(0, 60.5rem) minmax(12rem, 1fr);
    padding-bottom: 2rem; }
  .nf-flight-results-highlight {
    margin-top: -2rem; }
  .nf-flight-results-wrap &gt; .react-toggle-wrapper {
    -ms-grid-row: 7;
    -ms-grid-column: 3; }
  .nf-flight-results-wrap &gt; .react-toggle-wrapper {
    -ms-grid-row: 7;
    -ms-grid-column: 3; }
  .nf-flight-results-wrap &gt; .nf-searchpanel-options {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3; }
  .nf-vertical-ad-wrapper {
    -ms-grid-row: 3;
    -ms-grid-row-span: 7;
    -ms-grid-column: 7; }
  .nf-flight-results-wrap &gt; .nf-flight-results-sort {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3; }
  .nf-flight-results-wrap &gt; .nf-flight-results-google-adverts {
    -ms-grid-row: 9;
    -ms-grid-column: 5; }
  .nf-flight-results-wrap &gt; .nf-error-msgbox {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 7; }
  .nf-flight-results-wrap &gt; .nf-flight-results-summary {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 7; }
  .nf-flight-results-wrap &gt; .nf-flight-results-filters {
    -ms-grid-row: 7;
    -ms-grid-column: 3; }
  .nf-flight-results-wrap &gt; .nf-flight-results-notification {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3; }
  .nf-flight-results-wrap &gt; .nf-flight-results-highlight {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3; }
  .nf-flight-results-wrap &gt; .nf-flight-results-list {
    -ms-grid-row: 7;
    -ms-grid-column: 5; } }

@media only screen and (max-width: 992px) {
  .nf-flight-results-paypal-static-content {
    display: none; } }

.nf-flight-result-fare-rules {
  position: relative;
  text-align: left;
  font-size: 0.675rem;
  margin: 1rem 0 0 0;
  line-height: 1.5;
  margin-bottom: auto; }

.nf-flight-result-fare-rules-cta {
  position: relative;
  color: #217FA8;
  text-decoration: underline;
  display: inline-block;
  cursor: pointer; }
  .nf-flight-result-fare-rules-cta:hover {
    color: #1A6788; }
  .nf-flight-result-fare-rules-cta:active {
    color: #283E5A; }
  .nf-flight-result-fare-rules-cta:focus {
    border-radius: 4px;
    border: 2px solid #217FA8;
    background: var(--Hover-btn-background-hover, rgba(255, 255, 255, 0)); }
  .nf-flight-result-fare-rules-cta.m--open:before {
    content: '';
    width: 0;
    height: 0;
    border-bottom: 1rem solid #2dace3;
    border-left: 0.5rem solid transparent;
    border-right: 0.5rem solid transparent;
    position: absolute;
    top: 1rem;
    left: 50%;
    margin-left: -0.5rem; }

.nf-flight-result-fare-rules-popup {
  position: absolute;
  right: -1.5rem;
  top: 100%;
  top: calc(100% + 0.86rem);
  width: 25rem;
  background: #FFFFFF;
  border: 1px solid #CFCFCF;
  border-top: 0;
  z-index: 2;
  line-height: 1.5rem; }
  .nf-flight-result-fare-rules-popup h2 {
    color: #FFFFFF !important;
    background: #2dace3;
    text-align: left;
    font-size: 0.9375rem;
    font-weight: bold;
    margin: 0 -1px;
    padding: 0.75rem 1rem; }
  .nf-flight-result-fare-rules-popup h3 {
    color: #2dace3;
    font-weight: bold;
    margin: 1rem;
    margin-bottom: 0;
    font-size: 0.9375rem; }
  .nf-flight-result-fare-rules-popup dl {
    margin: 0;
    padding: 0.875rem 1rem; }
  .nf-flight-result-fare-rules-popup dt, .nf-flight-result-fare-rules-popup dd {
    margin: 0;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 0.8125rem;
    border-top: 2px solid #EEEEEE; }
  .nf-flight-result-fare-rules-popup dt {
    width: 60%;
    font-weight: bold;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .nf-flight-result-fare-rules-popup dd {
    width: 40%;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    word-break: break-word; }

.nf-flight-result-fare-rules-close {
  position: absolute;
  right: 0.375rem;
  top: 0.5rem;
  cursor: pointer; }
  .nf-flight-result-fare-rules-close svg {
    display: block;
    fill: #FFFFFF; }

@media only screen and (max-width: 600px) {
  .nf-flight-result-fare-rules-popup {
    left: -1rem;
    right: -1rem;
    width: auto; } }

.nf-flight-details-segments-wrap {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
  padding: 2rem 0; }
  .nf-flight-details-segments-wrap:after {
    content: none;
    height: 1px;
    position: absolute;
    left: 1rem;
    right: 1rem;
    top: 50%;
    display: block;
    background: #CFCFCF; }
  .nf-flight-details-segments-wrap.return:after {
    content: ''; }
  .nf-flight-details-segments-wrap .nf-flight-result-segment {
    border: 0;
    margin: 0;
    padding: 0 1rem;
    position: relative;
    width: 100%;
    padding-bottom: 1rem;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    max-width: 480px; }
    .nf-flight-details-segments-wrap .nf-flight-result-segment + .nf-flight-result-segment {
      padding-top: 1rem;
      padding-bottom: 0; }
  .nf-flight-details-segments-wrap .nf-flight-result-segment-itinerary {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .nf-flight-details-segments-wrap .nf-flight-result-segment-carrier {
    width: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0.75rem 0;
    margin-right: auto; }
  .nf-flight-details-segments-wrap .nf-flight-result-segment-logo {
    margin-right: 1rem; }
  .nf-flight-details-segments-wrap .nf-flight-result-segment-operated-by {
    margin-left: 0.5rem; }

.nf-flight-details-warning-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 50vh; }
  .nf-flight-details-warning-container .warning-message {
    text-align: center;
    padding: 20px;
    border: 1px solid #f89e1e;
    border-radius: 5px;
    background: #fddeb2;
    max-width: 80%;
    margin: auto; }
    .nf-flight-details-warning-container .warning-message .home-link {
      display: inline-block;
      margin-top: 15px;
      padding: 10px 20px;
      background-color: #478330;
      color: #FFFFFF;
      text-decoration: none;
      border-radius: 5px;
      -webkit-transition: background-color 0.3s ease;
      transition: background-color 0.3s ease; }

.details-container {
  background-color: #F1F1F1; }

.nf-flight-details h2 {
  color: #217FA8;
  font-size: 22px; }

.nf-flight-details .nf-flight-details-container {
  margin-bottom: 56px; }

.nf-flight-details .nf-flight-itinerary {
  padding: 24px;
  border-radius: 4px;
  background: #FFFFFF; }
  .nf-flight-details .nf-flight-itinerary .nf-flight-result-fare-rules-cta {
    position: relative;
    display: inline-block;
    cursor: pointer;
    color: #217FA8;
    font-size: 14px;
    font-weight: 600; }

.nf-flight-details .nf-flight-result-routehappy {
  position: absolute;
  top: -1.5rem;
  left: 1rem; }

.nf-flight-details .nf-flight-result-routehappy-header {
  margin: 0;
  font-size: 0.875rem; }

.nf-flight-details .nf-flight-result-routehappy-popup {
  width: 100vw;
  min-width: auto; }

.nf-flight-details .nf-flight-details-summary-container {
  border-radius: 4px;
  background: #FFFFFF; }
  .nf-flight-details .nf-flight-details-summary-container h3 {
    color: #283E5A;
    font-size: 16px;
    font-weight: 800;
    line-height: 24px; }
  .nf-flight-details .nf-flight-details-summary-container h4 {
    color: #393939;
    font-size: 16px;
    font-weight: 600; }
  .nf-flight-details .nf-flight-details-summary-container p {
    color: #000000;
    font-size: 11px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: 0.11px;
    margin: 0; }
  .nf-flight-details .nf-flight-details-summary-container .nf-flight-details-summary-title {
    border-bottom: var(--item-number, 1px) solid #EBEBEB;
    padding: 16px 12px; }
  .nf-flight-details .nf-flight-details-summary-container .nf-flight-details-summary-product-price {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 12px 16px 12px 16px; }
    .nf-flight-details .nf-flight-details-summary-container .nf-flight-details-summary-product-price svg {
      width: 20px;
      fill: #283E5A; }
    .nf-flight-details .nf-flight-details-summary-container .nf-flight-details-summary-product-price .nf-flight-details-summary-price svg {
      fill: #283E5A;
      cursor: pointer; }
  .nf-flight-details .nf-flight-details-summary-container .nf-flight-details-summary-items {
    padding: 0 16px;
    margin-bottom: 12px;
    margin-top: 12px; }
    .nf-flight-details .nf-flight-details-summary-container .nf-flight-details-summary-items.collapsed {
      display: none; }
    .nf-flight-details .nf-flight-details-summary-container .nf-flight-details-summary-items .nf-flight-details-summary-item {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
      .nf-flight-details .nf-flight-details-summary-container .nf-flight-details-summary-items .nf-flight-details-summary-item svg {
        width: 16px;
        height: 16px;
        margin-right: 8px;
        fill: #283E5A; }
      .nf-flight-details .nf-flight-details-summary-container .nf-flight-details-summary-items .nf-flight-details-summary-item p {
        color: #283E5A;
        font-size: 12px;
        font-weight: 400;
        line-height: 18px; }
      .nf-flight-details .nf-flight-details-summary-container .nf-flight-details-summary-items .nf-flight-details-summary-item.nf-flight-details-summary-baggage-item {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        justify-self: flex-start; }
  .nf-flight-details .nf-flight-details-summary-container .nf-flight-details-summary-total {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 16px 16px;
    border-top: 1px solid #EBEBEB; }

.nf-flight-details .nf-flight-details-summary-info {
  padding: 0 16px;
  color: #000000;
  font-size: 11px;
  font-weight: 400;
  line-height: 18px;
  letter-spacing: 0.11px; }

.nf-flight-details .nf-flight-details-usp-container {
  border-radius: 4px;
  background: #FFFFFF;
  margin-top: 16px;
  padding: 16px 16px 0px 16px; }
  .nf-flight-details .nf-flight-details-usp-container p {
    color: #283E5A;
    text-align: center;
    font-size: 14px;
    font-weight: 800;
    margin: 0;
    padding-bottom: 16px; }
  .nf-flight-details .nf-flight-details-usp-container .nf-flight-usp-images img {
    max-width: 100px;
    max-height: 40px; }

.nf-flight-details .nf-flight-details-footer-container {
  left: 0;
  z-index: 2;
  position: fixed;
  background: #FFFFFF;
  bottom: 0;
  width: 100%;
  padding: 0px 60px;
  border-top: 2px solid #CFCFCF;
  right: 0; }
  .nf-flight-details .nf-flight-details-footer-container .nf-flight-details-footer-info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .nf-flight-details .nf-flight-details-footer-container .nf-flight-details-footer-info .nf-rh-flight-details-pax-continue {
      font-size: 16px;
      font-weight: 800;
      min-width: 320px; }
    .nf-flight-details .nf-flight-details-footer-container .nf-flight-details-footer-info svg {
      fill: #5AA63C;
      margin-right: 16px; }
    .nf-flight-details .nf-flight-details-footer-container .nf-flight-details-footer-info p {
      color: #454545;
      font-size: 14px;
      font-weight: 400; }

.nf-rh-flight-details-pax-continue {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.nf-rh-flight-details-pax {
  font-weight: bold;
  font-size: 0.875rem;
  margin-bottom: 1rem; }
  .nf-rh-flight-details-pax span + span {
    font-size: 1.375rem;
    line-height: 1.4;
    margin-left: 0.5rem; }

@media only screen and (max-width: 992px) {
  .nf-flight-details-container {
    margin-left: 24px; }
  .nf-flight-details-summary-container {
    margin-right: 12px;
    margin-left: 12px; }
  .nf-flight-details-usp-container {
    margin-right: 12px;
    margin-left: 12px;
    margin-bottom: 40px; }
  .nf-flight-details-summary-flights svg {
    margin-right: 0; }
  .nf-flight-details-summary-price svg {
    margin-left: 0; }
  .nf-rh-flight-details-pax-continue {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 16px; }
  .nf-flight-details-footer-container {
    padding: 6px 12px !important; }
    .nf-flight-details-footer-container .nf-rh-flight-details-pax-continue {
      padding: 0; } }

@media only screen and (min-width: 601px) {
  .nf-flight-details .nf-flight-result-routehappy-popup {
    width: auto;
    min-width: 36rem; }
  .nf-rh-flight-details-pax {
    margin-bottom: 0;
    margin-left: auto;
    margin-right: 2rem;
    text-align: right;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .nf-modal-wrapper.brand-attributes .nf-modal-dialog {
    vertical-align: top; } }

@media only screen and (min-width: 993px) {
  .nf-flight-details-container {
    margin-left: 60px; }
  .nf-flight-details-summary-container {
    margin-right: 60px;
    margin-left: 40px; }
  .nf-flight-details-usp-container {
    margin-right: 60px;
    margin-left: 40px; }
  .nf-flight-details-summary-flights svg {
    margin-right: 8px; }
  .nf-flight-details-summary-price svg {
    margin-left: 8px; }
  .nf-flight-details-segments-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    /* STR: Fix for DDR - edge case on some devices but made airline logo too small*/
    /*.nf-flight-result-segment-carrier {
            max-width: 7.5rem;
        }*/ }
    .nf-flight-details-segments-wrap:after {
      width: 1px;
      height: auto;
      top: 1rem;
      bottom: 2rem;
      left: 50%;
      right: auto; }
    .nf-flight-details-segments-wrap .nf-flight-result-segment {
      padding: 0 1rem;
      width: 50%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
      .nf-flight-details-segments-wrap .nf-flight-result-segment + .nf-flight-result-segment {
        border-top: 0;
        padding: 0 1rem; }
    .nf-flight-details-segments-wrap .nf-flight-result-segment-itinerary {
      max-width: 420px; }
    .nf-flight-details-segments-wrap .nf-flight-result-segment-logo {
      margin-right: 0; }
    .nf-flight-details-segments-wrap .nf-flight-result-segment-arrival.m--extradays {
      margin-right: 2rem; }
  .nf-rh-flight-details-pax-continue {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 16px; } }

@media only screen and (max-width: 600px) {
  .nf-flight-itinerary {
    padding: 12px !important; }
  .nf-flight-itinerary-segment--wrap {
    padding: 8px 4px !important; }
  .nf-flight-details-container {
    margin-left: 12px;
    margin-right: 12px;
    margin-bottom: 16px; }
    .nf-flight-details-container .nf-flight-details-extras-wrap {
      margin-bottom: 16px; }
  #react-booking-extras .nf-flight-details-footer-container p {
    margin: 0; }
  #react-booking-extras .nf-flight-details-footer-container .nf-flight-details-footer-info {
    display: none; }
  .nf-flight-details-footer-container {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: column !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important; }
    .nf-flight-details-footer-container .nf-rh-flight-details-pax-continue {
      padding: 0; }
    .nf-flight-details-footer-container .valign-wrapper {
      display: block;
      text-align: center; }
      .nf-flight-details-footer-container .valign-wrapper p {
        margin: 5px 0px; }
    .nf-flight-details-footer-container .nf-flight-details-footer-info {
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; } }

span.badge {
  min-width: 3rem;
  padding: 0 6px;
  margin-left: 14px;
  text-align: center;
  font-size: 1rem;
  line-height: 22px;
  height: 22px;
  color: #747474;
  float: right;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  span.badge.new {
    font-weight: 300;
    font-size: 0.8rem;
    color: #FFFFFF;
    background-color: #478330;
    border-radius: 2px; }
  span.badge.new:after {
    content: " new"; }
  span.badge[data-badge-caption]::after {
    content: " " attr(data-badge-caption); }

nav ul a span.badge {
  display: inline-block;
  float: none;
  margin-left: 4px;
  line-height: 22px;
  height: 22px;
  -webkit-font-smoothing: auto; }

.collection-item span.badge {
  margin-top: calc(0.75rem - 11px); }

.collapsible span.badge {
  margin-left: auto; }

.side-nav span.badge {
  margin-top: calc(24px - 11px); }

.nf-loading-wrapper {
  width: 100%;
  height: 27rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.nf-loading-text {
  color: #2cace3;
  font-size: 0.9375rem;
  display: block;
  margin-bottom: 1.5rem; }

.nf-loading {
  width: 21rem;
  max-width: 80%;
  height: 0.375rem;
  background: #EEEEEE;
  position: relative; }
  .nf-loading span {
    position: absolute;
    height: 100%;
    background: #2cace3;
    -webkit-animation: common-loading 2000ms infinite;
            animation: common-loading 2000ms infinite; }

@-webkit-keyframes common-loading {
  0% {
    left: 0;
    right: 100%; }
  25% {
    left: 0;
    right: 0; }
  50% {
    left: 100%;
    right: 0; }
  75% {
    left: 0;
    right: 0; }
  100% {
    left: 0;
    right: 100%; } }

@keyframes common-loading {
  0% {
    left: 0;
    right: 100%; }
  25% {
    left: 0;
    right: 0; }
  50% {
    left: 100%;
    right: 0; }
  75% {
    left: 0;
    right: 0; }
  100% {
    left: 0;
    right: 100%; } }

body.booking-cmb .navbar-fixed nav {
  border-bottom: none;
  background-color: #2dace3; }

.nf-check-my-booking {
  padding-left: 0rem;
  padding-right: 0rem;
  min-height: 25rem;
  /*choose booking start*/ }
  .nf-check-my-booking .nf-cmb-loading-section .nf-loading-wrapper {
    height: 27rem; }
  .nf-check-my-booking .nf-cmb-error {
    height: 27rem; }
    .nf-check-my-booking .nf-cmb-error .nf-cmb-section-header {
      padding-bottom: 1.5rem; }
    .nf-check-my-booking .nf-cmb-error .nf-cmb-section-body {
      margin-top: 2rem; }
  .nf-check-my-booking .nf-cmb-border-horizontal-dotted {
    content: "";
    display: block;
    height: 1rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' viewBox='0 0 75 75'%3E%3Cpath d='M0 0v75h75V0H0zm37.5 57C26.2 57 17 47.8 17 36.5S26.2 16 37.5 16 58 25.2 58 36.5 48.8 57 37.5 57z' fill='%23fff'/%3E%3C/svg%3E");
    background-color: #EEEEEE;
    margin-top: 1.5rem;
    margin-bottom: .5rem; }
  .nf-check-my-booking .nf-cmb-insurance-modal {
    font-size: 0.875rem; }
    .nf-check-my-booking .nf-cmb-insurance-modal h2 {
      text-align: left;
      font-size: 1.125rem;
      margin-bottom: 1rem; }
    .nf-check-my-booking .nf-cmb-insurance-modal ul {
      margin: 1rem 0; }
      .nf-check-my-booking .nf-cmb-insurance-modal ul ul {
        background: #EEEEEE;
        padding: 1rem; }
        .nf-check-my-booking .nf-cmb-insurance-modal ul ul li {
          list-style-type: circle; }
      .nf-check-my-booking .nf-cmb-insurance-modal ul li {
        list-style-type: disc;
        list-style-position: inside; }
  .nf-check-my-booking .choose-booking {
    /*choose booking end*/ }
    .nf-check-my-booking .choose-booking &gt; .choose-booking-login {
      width: 100%; }
    .nf-check-my-booking .choose-booking &gt; .choose-booking-image {
      display: none; }
    .nf-check-my-booking .choose-booking .choose-booking-login {
      background-color: #FFFFFF;
      padding: 1.25rem;
      border-radius: 0.4rem 0rem 0rem 0.4rem; }
    .nf-check-my-booking .choose-booking .choose-booking-image img {
      border-radius: 0rem 0.4rem 0.4rem 0rem; }
    .nf-check-my-booking .choose-booking .title {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      font-family: azo-sans-uber;
      font-display: auto;
      font-style: normal;
      font-weight: 400;
      font-stretch: normal;
      font-size: 2.25rem;
      color: #289ED1; }
      .nf-check-my-booking .choose-booking .title &gt; .title-text {
        margin: 8px 0; }
      .nf-check-my-booking .choose-booking .title svg {
        width: 42px;
        height: 36px;
        fill: #217FA8;
        margin-right: 5px; }
    .nf-check-my-booking .choose-booking .search-info {
      margin-bottom: 2rem; }
      .nf-check-my-booking .choose-booking .search-info strong {
        margin-top: .75rem; }
    .nf-check-my-booking .choose-booking .nf-booking-failure {
      padding: 0;
      display: inline-block;
      width: 100%; }
      .nf-check-my-booking .choose-booking .nf-booking-failure .nf-error-msgbox {
        padding: 0.5rem;
        margin: 0 0 1rem 0; }
        .nf-check-my-booking .choose-booking .nf-booking-failure .nf-error-msgbox svg {
          margin-right: 0.5rem; }
    .nf-check-my-booking .choose-booking .form {
      display: inline-block;
      width: 100%; }
    .nf-check-my-booking .choose-booking .nf-form-field-label {
      font-size: 1rem; }
    .nf-check-my-booking .choose-booking .nf-reference-number-wrapper {
      padding-top: 0rem;
      display: inline-block;
      width: 100%; }
      .nf-check-my-booking .choose-booking .nf-reference-number-wrapper .nf-reference-number {
        margin: 0 4px; }
      .nf-check-my-booking .choose-booking .nf-reference-number-wrapper .nf-button {
        position: relative;
        bottom: 1.5rem; }
      .nf-check-my-booking .choose-booking .nf-reference-number-wrapper .nf-form-field-label {
        font-size: 1rem;
        padding-bottom: 2.5rem; }
    .nf-check-my-booking .choose-booking .nf-reference-text {
      font-size: 0.75rem;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin-bottom: 8px; }
      .nf-check-my-booking .choose-booking .nf-reference-text svg {
        width: 18px;
        height: 18px;
        fill: #217FA8;
        margin-right: 5px; }
        .nf-check-my-booking .choose-booking .nf-reference-text svg .nf-reference-text {
          position: relative;
          bottom: 7rem;
          font-size: 0.75rem; }
  .nf-check-my-booking .nf-view-csr .nf-cmb-primary .nf-cmb-section {
    margin-bottom: 0; }
    .nf-check-my-booking .nf-view-csr .nf-cmb-primary .nf-cmb-section .nf-cmb-section-content-wrapper {
      margin-bottom: 0rem; }
  .nf-check-my-booking .nf-view-csr .back-link {
    cursor: pointer;
    font-size: 16px;
    color: gray;
    float: right; }
  .nf-check-my-booking .nf-view-csr .view-csr .csr-header {
    background: #283E5A;
    color: #FFFFFF;
    padding: 0.75rem 0;
    font-size: 1.25rem;
    line-height: 1.5; }
    .nf-check-my-booking .nf-view-csr .view-csr .csr-header svg {
      width: 40px;
      height: 40px;
      fill: #FFFFFF; }
    .nf-check-my-booking .nf-view-csr .view-csr .csr-header .icon {
      padding-left: 1rem; }
    .nf-check-my-booking .nf-view-csr .view-csr .csr-header .subject, .nf-check-my-booking .nf-view-csr .view-csr .csr-header .status {
      padding: 0.25rem 0; }
    .nf-check-my-booking .nf-view-csr .view-csr .csr-header .subject, .nf-check-my-booking .nf-view-csr .view-csr .csr-header .status .value {
      font-weight: bold; }
    .nf-check-my-booking .nf-view-csr .view-csr .csr-header .status {
      padding-right: 1rem; }
  .nf-check-my-booking .nf-view-csr .view-csr .user-log-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .nf-check-my-booking .nf-view-csr .view-csr .agent-log-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .nf-check-my-booking .nf-view-csr .view-csr .chat-log {
    padding: 2rem 0; }
    .nf-check-my-booking .nf-view-csr .view-csr .chat-log .log {
      border-radius: 10px;
      padding: 0.75rem 0;
      margin: 1rem 0;
      position: relative; }
      .nf-check-my-booking .nf-view-csr .view-csr .chat-log .log .person, .nf-check-my-booking .nf-view-csr .view-csr .chat-log .log .date {
        font-size: 0.75rem; }
      .nf-check-my-booking .nf-view-csr .view-csr .chat-log .log .message {
        font-weight: bold;
        font-size: 1.125rem;
        margin-top: 0.5rem; }
    .nf-check-my-booking .nf-view-csr .view-csr .chat-log .user-log, .nf-check-my-booking .nf-view-csr .view-csr .chat-log .answer {
      background: #3eb71e;
      color: #FFFFFF; }
    .nf-check-my-booking .nf-view-csr .view-csr .chat-log .company-log, .nf-check-my-booking .nf-view-csr .view-csr .chat-log .question {
      background: #e8e6e7; }
    .nf-check-my-booking .nf-view-csr .view-csr .chat-log .user-log:after, .nf-check-my-booking .nf-view-csr .view-csr .chat-log .answer:after, .nf-check-my-booking .nf-view-csr .view-csr .chat-log .company-log:before, .nf-check-my-booking .nf-view-csr .view-csr .chat-log .question:before {
      content: "";
      display: block;
      position: absolute;
      width: 0;
      height: 0;
      border-top: .625rem solid transparent;
      border-bottom: .625rem solid transparent;
      top: 1.25rem; }
    .nf-check-my-booking .nf-view-csr .view-csr .chat-log .user-log:after, .nf-check-my-booking .nf-view-csr .view-csr .chat-log .answer:after {
      border-left: 0.625rem solid #3eb71e;
      right: -8px; }
    .nf-check-my-booking .nf-view-csr .view-csr .chat-log .company-log:before, .nf-check-my-booking .nf-view-csr .view-csr .chat-log .question:before {
      border-right: 0.625rem solid #e8e6e7;
      left: -8px; }
    .nf-check-my-booking .nf-view-csr .view-csr .chat-log .icon {
      float: left; }
      .nf-check-my-booking .nf-view-csr .view-csr .chat-log .icon.agent {
        padding: 1rem 1rem 0 0; }
      .nf-check-my-booking .nf-view-csr .view-csr .chat-log .icon.user {
        padding: 0.875rem 0 0 1.5rem; }
      .nf-check-my-booking .nf-view-csr .view-csr .chat-log .icon svg {
        fill: #d8d8d8;
        width: 60px;
        height: 60px; }
  .nf-check-my-booking .nf-view-csr .view-csr .chat-log + .form {
    padding-top: 2rem;
    border-top: 2px solid #EEEEEE; }
  .nf-check-my-booking .nf-view-csr .view-csr .form {
    padding: 2rem 0rem; }
    .nf-check-my-booking .nf-view-csr .view-csr .form .form-input .nf-form-field {
      margin-bottom: 0; }
    .nf-check-my-booking .nf-view-csr .view-csr .form .form-input .nf-view-csr-text-area {
      height: 200px;
      background: #EEEEEE; }
    .nf-check-my-booking .nf-view-csr .view-csr .form .info-text {
      font-size: 0.75rem;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin: 1.5rem 0 0.5rem 0; }
      .nf-check-my-booking .nf-view-csr .view-csr .form .info-text svg {
        width: 18px;
        height: 18px;
        fill: #217FA8;
        margin-right: 5px; }
  .nf-check-my-booking #react-check-my-booking {
    position: relative; }
  .nf-check-my-booking .nf-cmb-section {
    background: #FFFFFF;
    border-radius: 0.25rem;
    margin-bottom: 1.5rem;
    -webkit-box-shadow: 0 0 0.0625rem rgba(207, 207, 207, 0.12), 0 0 0.125rem rgba(207, 207, 207, 0.12), 0 0 0.5rem rgba(207, 207, 207, 0.12);
            box-shadow: 0 0 0.0625rem rgba(207, 207, 207, 0.12), 0 0 0.125rem rgba(207, 207, 207, 0.12), 0 0 0.5rem rgba(207, 207, 207, 0.12); }
    .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper {
      margin: 0rem 2rem 2rem 2rem; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .cmb-sub-header, .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .section-text {
        font-size: 0.9rem; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-header {
        position: relative;
        padding-top: 1.5rem;
        padding-bottom: 1rem;
        background: #FFFFFF; }
        .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-header h2 {
          color: #2dace3;
          font-size: 2rem;
          text-align: left;
          line-height: 1.3;
          padding: 0.2rem 0rem; }
        .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-header .sub-title {
          font-size: 17px;
          font-weight: normal; }
        .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-header .collapsable-icon {
          float: right; }
          .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-header .collapsable-icon svg {
            width: 40px;
            height: 40px;
            fill: #ACACAC; }
          .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-header .collapsable-icon.collapsed svg {
            fill: #2dace3; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-body {
        position: relative;
        padding-bottom: 2rem;
        background: #FFFFFF; }
        .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-body .title-text {
          font-weight: bold;
          margin: 0;
          font-size: 1rem;
          line-height: 1.1; }
        .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-customer {
          padding-bottom: 0.5rem; }
          .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-customer svg {
            fill: #d8d8d8;
            width: 55px;
            height: 50px;
            position: absolute;
            left: -8px; }
          .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-customer h4 {
            color: #2dace3;
            line-height: 1.3;
            padding: 0.25rem 0 0 0; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-logout {
        cursor: pointer;
        font-size: 16px;
        color: gray;
        float: right;
        margin-top: 10px; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-booking-extras-header-desc .nf-booking-extras-header-primary {
        font-size: 2rem; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-booking-extras-header-desc .nf-booking-extras-header-secondary {
        font-family: "Roboto", Arial, sans-serif;
        font-weight: normal;
        font-size: 0.9rem; }
    .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content {
      overflow: hidden; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .header-main:after {
        content: "";
        display: table;
        clear: both; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .header-main:before {
        content: "";
        display: table;
        clear: both; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .header-main .header-main-icon {
        float: left;
        width: 54px; }
        .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .header-main .header-main-icon svg {
          fill: #dbdbdb;
          width: 54px;
          height: 45px; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .header-main .header-main-content {
        overflow: hidden;
        margin-left: 10px; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .header-content {
        color: #2dace3;
        font-weight: bold; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content a {
        cursor: pointer;
        font-size: 16px; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .nf-cmb-welcome-notification {
        border: 1px solid #dbdbdb;
        padding-top: 20px;
        padding-bottom: 20px;
        border-radius: 5px;
        margin-top: 12px; }
        .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .nf-cmb-welcome-notification .notification-item {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          padding-right: 10px;
          margin-left: 20px;
          padding-bottom: 10px;
          padding-top: 5px; }
          .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .nf-cmb-welcome-notification .notification-item .icon {
            fill: #f89e1c; }
          .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .nf-cmb-welcome-notification .notification-item .text {
            color: #f89e1c;
            margin-top: -5px;
            margin-left: 12px; }
        .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .nf-cmb-welcome-notification .notification-list li {
          list-style: none;
          margin-bottom: 1rem; }
        .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .nf-cmb-welcome-notification .notification-list li:last-child {
          margin-bottom: 0rem; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .nf-cmb-welcome-leadicon {
        margin-left: -10px; }
        .nf-check-my-booking .nf-cmb-section .nf-cmb-welcome-content .nf-cmb-welcome-leadicon svg {
          fill: #dbdbdb;
          width: 55px;
          height: 50px; }
    .nf-check-my-booking .nf-cmb-section .alert-nofitication {
      border: 1px solid #FEB53F;
      padding: 10px 30px;
      background: #FDFCEA;
      border-radius: 5px; }
      .nf-check-my-booking .nf-cmb-section .alert-nofitication.csr {
        border: 1px solid #217FA8;
        background: #EAF7FC; }
      .nf-check-my-booking .nf-cmb-section .alert-nofitication p {
        margin: 2px; }
    .nf-check-my-booking .nf-cmb-section .cmb-button-default {
      text-decoration: none !important;
      font-weight: bold;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      font-size: 0.85rem;
      color: #FFFFFF;
      width: 100%; }
    .nf-check-my-booking .nf-cmb-section .nf-cmb-visa-button {
      width: 25%; }
    .nf-check-my-booking .nf-cmb-section .nf-cmb-csr {
      padding-top: 1rem; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-csr .nf-cmb-csr-button {
        width: 25%;
        font-weight: bold; }
    .nf-check-my-booking .nf-cmb-section.nf-cmb-reviews .nf-cmb-review-item {
      float: left;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      border-radius: 0.25rem;
      margin: 0.5rem 0;
      margin-right: 1rem;
      padding: 1rem;
      width: 100%;
      height: 90px;
      -webkit-box-shadow: 0 0 0.0625rem rgba(69, 69, 69, 0.12), 0 0 0.125rem rgba(69, 69, 69, 0.12), 0 0 0.5rem rgba(69, 69, 69, 0.12);
              box-shadow: 0 0 0.0625rem rgba(69, 69, 69, 0.12), 0 0 0.125rem rgba(69, 69, 69, 0.12), 0 0 0.5rem rgba(69, 69, 69, 0.12); }
      .nf-check-my-booking .nf-cmb-section.nf-cmb-reviews .nf-cmb-review-item .nf-cmb-review-image {
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        display: block;
        background: #FFFFFF; }
        .nf-check-my-booking .nf-cmb-section.nf-cmb-reviews .nf-cmb-review-item .nf-cmb-review-image img {
          width: 145px;
          height: 35px; }
      .nf-check-my-booking .nf-cmb-section.nf-cmb-reviews .nf-cmb-review-item .nf-cmb-document-link a {
        font-size: 0.95rem; }
    .nf-check-my-booking .nf-cmb-section .nf-cmb-details-view {
      padding-top: 1rem; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-details-view .header {
        color: #2dace3;
        border-bottom: 2px solid #EEEEEE;
        padding: 0.75rem 0; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-details-view .content .content-item {
        border-bottom: 2px solid #EEEEEE;
        padding: 0.75rem 0; }
        .nf-check-my-booking .nf-cmb-section .nf-cmb-details-view .content .content-item .item-key {
          font-weight: bold; }
        .nf-check-my-booking .nf-cmb-section .nf-cmb-details-view .content .content-item .item-value {
          text-align: right; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-details-view .content .content-item:last-child {
        border-bottom: none; }
      .nf-check-my-booking .nf-cmb-section .nf-cmb-details-view.hotel-section {
        border-bottom: 2px solid #EEEEEE; }
    .nf-check-my-booking .nf-cmb-section .nf-notification-msgbox {
      margin: 0rem; }
    .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-badge {
      display: inline-block;
      min-width: 1rem;
      font-size: 16px;
      background: #40762b;
      color: #FFFFFF;
      width: 30px;
      height: 30px;
      text-align: center;
      line-height: 31px;
      border-radius: 50%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      padding: 0px 6px;
      margin-left: 18px; }
    .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-section .csr {
      padding: 0.75rem 0 0.5rem 0;
      margin-bottom: 0.625rem;
      border: 1px solid #217FA8; }
      .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-section .csr:last-child {
        margin-bottom: 0; }
      .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-section .csr.completed {
        background-color: #EEEEEE;
        color: #ACACAC;
        border: none; }
      .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-section .csr.inprogress .csr-id {
        font-weight: bold; }
      .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-section .csr a {
        color: #217FA8;
        font-size: 0.875rem;
        cursor: pointer; }
      .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-section .csr .csr-status {
        text-align: right; }
        .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-section .csr .csr-status .status {
          font-weight: bold;
          color: #ACACAC; }
        .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-section .csr .csr-status .completed {
          color: #ACACAC; }
        .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-section .csr .csr-status .awaitingcustomerresponse, .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-section .csr .csr-status awaitingcustomeracknowledgement {
          color: #e55200; }
        .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-section .csr .csr-status .inprogress {
          color: #40762b; }
    .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-section .csr + .raise-service-request {
      padding-top: 2rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.collapsable .nf-cmb-section-header .collapsable-icon {
    float: right; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.collapsed .nf-cmb-section-header:after {
    content: none !important; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.collapsed .nf-cmb-section-body:before {
    content: none; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-header.no-body:after {
    display: none; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-hotels-section .nf-cmb-hotels-balancedue {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 12px 20px 12px 12px;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 16px;
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
            align-self: stretch;
    border-radius: 10px;
    border: 1px solid #9E4C12;
    background: #FFF3EA;
    margin: 16px 0px; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-hotels-section .nf-cmb-hotels-balancedue .icon-div {
      -webkit-align-self: center;
          -ms-flex-item-align: center;
                  -ms-grid-row-align: center;
              align-self: center; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-hotels-section .nf-cmb-hotels-balancedue .content {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
                  -ms-grid-row-align: stretch;
              align-self: stretch;
      color: #9E4C12;
      font-family: Roboto;
      font-size: 14px;
      font-style: normal;
      font-weight: 400;
      line-height: 21px; }
      .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-hotels-section .nf-cmb-hotels-balancedue .content p {
        font-family: Roboto;
        font-size: 14px;
        font-style: normal;
        margin: 0; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-hotels-section .hotel-section, .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-hotels-section .room-section {
    padding-right: 1.5rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-hotels-section .hotel-section {
    border-bottom: none; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-hotels-section .hotel-section .content .row:last-child {
      border-bottom: 2px solid #EEEEEE; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-hotels-section .room-details-section img {
    width: 100%;
    padding-top: 30px; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-hotels-section .nf-cmb-hotels-details-map {
    font-size: 0.6875rem;
    padding-top: 1rem;
    margin-top: 1rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-hotels-section .nf-cmb-hotels-details-map-wrap {
    position: relative;
    width: 100%;
    min-height: 12.5rem;
    margin: 0.5rem 0; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-hotels-section .nf-cmb-hotels-details-map-content {
    position: absolute;
    width: 100%;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-hotels-section .nf-cmb-hotels-details-map-content .nf-cmb-hotels-map {
      background-image: url(https://maps.gstatic.com/mapfiles/api-3/images/spotlight-poi2.png);
      position: absolute;
      left: 0px;
      top: 0px;
      width: 27px;
      height: 43px;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none;
      border: 0px;
      padding: 0px;
      margin: 0px;
      max-width: none;
      opacity: 1; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-insurnace .insurance-section .content .row:last-child {
    border-bottom: 2px solid #EEEEEE; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-insurnace .inusrance-policy-section {
    padding-top: 20px; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-transfer-section .transfer-details.return {
    margin-top: 32px; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-transfer-section .transfer-details.outward .row:last-child {
    border-bottom: 2px solid #EEEEEE; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-service-pack-list-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 8px; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-service-pack-list-container .service-pack-title {
      color: #1A6788;
      font-family: azo-sans-uber;
      font-size: 20px;
      font-style: normal;
      font-weight: 400;
      line-height: 36px;
      letter-spacing: 0.2px; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-service-pack-list-container .nf-cmb-service-pack-horizontal-list {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-align-content: flex-start;
          -ms-flex-line-pack: start;
              align-content: flex-start;
      gap: 16px;
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
              align-self: stretch;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-body .nf-cmb-service-pack-list-container .nf-cmb-service-pack-horizontal-list li {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        gap: 8px;
        color: #333;
        font-family: Roboto;
        font-size: 15px;
        font-style: normal;
        font-weight: 400;
        line-height: 24px;
        letter-spacing: 0.15px; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-document-item {
    float: left;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    border-radius: 0.25rem;
    margin: 0.5rem 0;
    margin-right: 1rem;
    padding: 1rem;
    width: 100%;
    -webkit-box-shadow: 0 0 0.0625rem rgba(69, 69, 69, 0.12), 0 0 0.125rem rgba(69, 69, 69, 0.12), 0 0 0.5rem rgba(69, 69, 69, 0.12);
            box-shadow: 0 0 0.0625rem rgba(69, 69, 69, 0.12), 0 0 0.125rem rgba(69, 69, 69, 0.12), 0 0 0.5rem rgba(69, 69, 69, 0.12);
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    min-height: 90px; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-document-item .nf-cmb-document-icon {
      padding: 0 0.5rem 0 0;
      -webkit-box-flex: 1;
      -webkit-flex-grow: 1;
          -ms-flex-positive: 1;
              flex-grow: 1; }
      .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-document-item .nf-cmb-document-icon svg {
        fill: #217FA8;
        width: 36px;
        height: 36px; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-document-item .nf-cmb-document-info {
      -webkit-box-flex: 6;
      -webkit-flex-grow: 6;
          -ms-flex-positive: 6;
              flex-grow: 6;
      padding: 0 0.5rem; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-document-item .nf-cmb-document-heading {
      float: left;
      position: relative;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-document-item .nf-cmb-document-heading h3 {
        display: inline-block;
        margin: 0; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-document-item .nf-cmb-document-link {
      padding-top: 0.2rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-back-link {
    cursor: pointer;
    font-size: 16px;
    color: gray;
    float: right; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form {
    height: 550px; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-inputs .nf-csr-categories, .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-inputs .nf-csr-subject {
      width: 33%; }
      .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-inputs .nf-csr-categories .nf-form-field-label, .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-inputs .nf-csr-subject .nf-form-field-label {
        font-weight: normal;
        font-size: 0.85rem; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-inputs .nf-csr-description .nf-form-field-label {
      font-weight: normal;
      font-size: 0.85rem; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-inputs .nf-csr-description .nf-csr-textarea {
      height: 200px; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-buttons .nf-csr-clear-btn {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      float: left; }
      .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-buttons .nf-csr-clear-btn .btn-clear {
        color: gray;
        background-color: #FFFFFF;
        border: 1px solid gray; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-buttons .nf-csr-submit-btn {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      float: right; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-buttons .btn-csr {
      width: 150px; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-success-header h2 {
    text-align: center; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-success-description {
    text-align: center; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-success-description a {
      cursor: pointer;
      font-size: 1rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis .apis-notifications .nf-success-msgbox {
    margin: 0rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis form .apis-passenger-name, .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis form apis-passenger-dob {
    font-size: 0.9375rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis form .apis-passenger-header {
    padding-top: 1rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis form .apis-passenger .nf-form-field {
    margin-bottom: 2rem; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis form .apis-passenger .nf-form-field .nf-form-field-label {
      font-size: 0.9375rem;
      font-weight: normal; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis form .apis-passenger .col:first-child {
    padding-left: 0rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis form .apis-passenger .col:last-child {
    padding-right: 0rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis form .apis-passenger .apis-passenger-section {
    padding-bottom: 1rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.visa-info-section .nf-cmb-section-body .nf-cmb-visa-information {
    padding-bottom: 2rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-airport-parking .nf-cmb-section-content-wrapper .nf-cmb-section-body {
    padding-top: 0rem; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-airport-parking .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-airport-parking-section &gt; div:first-child {
      border-bottom: 2px solid #EEEEEE; }
  .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras {
    background: none;
    -webkit-box-shadow: none;
            box-shadow: none; }
    .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper {
      background: none;
      margin: 0rem; }
      .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-header {
        background: no-repeat;
        padding-bottom: 1rem; }
        .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-header h2 {
          color: #283E5A; }
      .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body {
        background: none; }
        .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel {
          padding-bottom: 1rem; }
          .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item {
            background: #FFFFFF;
            width: 430px;
            height: 282px;
            position: relative;
            float: left;
            border-radius: 0.35rem;
            margin: 2px auto;
            margin-right: 1rem;
            -webkit-box-shadow: 0 0 0.0625rem rgba(69, 69, 69, 0.12), 0 0 0.125rem rgba(69, 69, 69, 0.12), 0 0 0.5rem rgba(69, 69, 69, 0.12);
                    box-shadow: 0 0 0.0625rem rgba(69, 69, 69, 0.12), 0 0 0.125rem rgba(69, 69, 69, 0.12), 0 0 0.5rem rgba(69, 69, 69, 0.12); }
            .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-corner {
              right: 0;
              position: absolute;
              border-top: 120px solid #FFFFFF;
              border-left: 120px solid transparent; }
            .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-corner-text {
              position: absolute;
              top: 18px;
              width: 70px;
              height: 50px;
              right: 3px;
              text-align: center;
              font-size: 14px;
              -webkit-transform: rotate(45deg);
                      transform: rotate(45deg);
              color: #FFFFFF;
              font-weight: bold;
              overflow: hidden;
              word-break: break-word;
              display: -ms-inline-grid;
              display: inline-grid;
              -webkit-box-align: center;
              -webkit-align-items: center;
                  -ms-flex-align: center;
                      align-items: center;
              max-height: 2.5rem; }
            .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-item-content-wrapper {
              padding: 1.5rem 1.5rem 0rem 1.5rem;
              height: 100%;
              position: relative;
              text-align: center; }
              .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-item-content-wrapper .nf-cmb-carousel-item-header h4 {
                font-weight: bold;
                padding-bottom: 5px; }
              .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-item-content-wrapper .nf-cmb-carousel-item-content {
                height: 110px; }
                .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-item-content-wrapper .nf-cmb-carousel-item-content .cmb-carousel-content-image {
                  display: -webkit-inline-box;
                  display: -webkit-inline-flex;
                  display: -ms-inline-flexbox;
                  display: inline-flex;
                  -webkit-box-align: center;
                  -webkit-align-items: center;
                      -ms-flex-align: center;
                          align-items: center;
                  height: 100%; }
                  .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-item-content-wrapper .nf-cmb-carousel-item-content .cmb-carousel-content-image img {
                    max-width: 280px;
                    max-height: 100px; }
              .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-item-content-wrapper .cmb-carousel-content-footer {
                width: 100%;
                position: absolute;
                padding: 0rem 1.5rem 1.5rem 1.5rem;
                bottom: 0;
                left: 0; }
                .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-item-content-wrapper .cmb-carousel-content-footer .cmb-carousel-content-text {
                  position: relative;
                  height: 37px;
                  margin-bottom: 1rem;
                  line-height: 1rem; }
                  .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-item-content-wrapper .cmb-carousel-content-footer .cmb-carousel-content-text span {
                    position: absolute;
                    bottom: 0;
                    right: 0;
                    width: 100%; }
                .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-item-content-wrapper .cmb-carousel-content-footer .cmb-carousel-button a {
                  width: 100%;
                  font-weight: bold;
                  color: #FFFFFF;
                  text-decoration: none;
                  font-size: 0.875rem; }
          .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item:first-child {
            margin-left: 2px; }
          .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item:last-child {
            margin-right: 0rem; }
  .nf-check-my-booking .panel-wrapper {
    position: relative; }
    .nf-check-my-booking .panel-wrapper &gt; .panel-link {
      position: absolute;
      margin-top: -65px; }
  .nf-check-my-booking .nf-cmb-flight-details {
    padding: 2rem 0 1rem 0; }
    .nf-check-my-booking .nf-cmb-flight-details .nf-cmb-flight-result-itinerary {
      font-size: 0.75rem;
      border-top: 1px solid #EEEEEE; }
      .nf-check-my-booking .nf-cmb-flight-details .nf-cmb-flight-result-itinerary .nf-flight-itinerary .nf-flight-itinerary-leg + .nf-flight-itinerary-leg {
        padding-top: 3.5rem; }
        .nf-check-my-booking .nf-cmb-flight-details .nf-cmb-flight-result-itinerary .nf-flight-itinerary .nf-flight-itinerary-leg + .nf-flight-itinerary-leg .nf-flight-itinerary-leg--localtext {
          top: 3.5rem; }
        .nf-check-my-booking .nf-cmb-flight-details .nf-cmb-flight-result-itinerary .nf-flight-itinerary .nf-flight-itinerary-leg + .nf-flight-itinerary-leg:after {
          left: 0;
          right: 0; }
    .nf-check-my-booking .nf-cmb-flight-details .links {
      padding-top: 2rem; }
      .nf-check-my-booking .nf-cmb-flight-details .links .baggage, .nf-check-my-booking .nf-cmb-flight-details .links .meals, .nf-check-my-booking .nf-cmb-flight-details .links .legroom {
        text-align: center; }
      .nf-check-my-booking .nf-cmb-flight-details .links .baggage {
        text-align: right; }
      .nf-check-my-booking .nf-cmb-flight-details .links .meals {
        text-align: center; }
      .nf-check-my-booking .nf-cmb-flight-details .links .legroom {
        text-align: left; }
  .nf-check-my-booking .nf-extras-hotel-tab {
    display: none; }

@media only screen and (max-width: 600px) {
  .nf-check-my-booking .choose-booking .form {
    width: 100%; }
  .nf-check-my-booking .choose-booking .nf-reference-number-wrapper .nf-form-field-label {
    padding-bottom: 0; }
  .nf-check-my-booking .choose-booking .nf-reference-number-wrapper .nf-button {
    bottom: 0; }
  .nf-check-my-booking .nf-view-csr .view-csr .csr-header {
    font-size: 1rem; }
    .nf-check-my-booking .nf-view-csr .view-csr .csr-header .icon {
      padding-left: 0.5rem; }
      .nf-check-my-booking .nf-view-csr .view-csr .csr-header .icon svg {
        float: none; }
    .nf-check-my-booking .nf-view-csr .view-csr .csr-header .subject {
      margin: 0 0.5rem; }
    .nf-check-my-booking .nf-view-csr .view-csr .csr-header .subject, .nf-check-my-booking .nf-view-csr .view-csr .csr-header .status {
      font-size: 0.875rem;
      padding: 0; }
    .nf-check-my-booking .nf-view-csr .view-csr .csr-header .status {
      padding-right: 0rem; }
  .nf-check-my-booking .nf-view-csr .view-csr .chat-log {
    padding: 1rem 0; }
    .nf-check-my-booking .nf-view-csr .view-csr .chat-log .log .message {
      font-size: 1rem; }
    .nf-check-my-booking .nf-view-csr .view-csr .chat-log .icon.agent {
      padding-right: 0.75rem; }
    .nf-check-my-booking .nf-view-csr .view-csr .chat-log .icon.user {
      padding-left: 1.25rem; }
  .nf-check-my-booking .nf-view-csr .view-csr .form {
    padding: 2rem 0.5rem; }
  .nf-check-my-booking .nf-cmb-flight-details .links .baggage, .nf-check-my-booking .nf-cmb-flight-details .links .meals, .nf-check-my-booking .nf-cmb-flight-details .links .legroom {
    text-align: left; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-content-wrapper {
    margin: 0rem 1rem 1rem 1rem; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-welcome-content .nf-cmb-welcome-leadicon {
      margin-left: -7px; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-header h2 {
      font-size: 1.5rem; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-section-content-wrapper .nf-booking-extras-header-desc .nf-booking-extras-header-primary {
      font-size: 1.5rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-visa-button {
    width: 100%; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-csr .nf-cmb-csr-button {
    width: 100%; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-csr-section .csr-badge {
    top: 22px !important;
    right: 0px; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-csr-section .csr-section .csr .csr-name {
    margin-bottom: 0.5rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section .nf-cmb-document-item {
    min-height: 40px; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-inputs .nf-csr-categories, .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-inputs .nf-csr-subject {
    width: 100%; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-inputs .nf-csr-categories .nf-form-field-label, .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-inputs .nf-csr-subject .nf-form-field-label {
      white-space: normal; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-inputs .nf-csr-description .nf-form-field-label {
    white-space: normal; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-inputs .nf-csr-description .nf-csr-textarea {
    height: 150px; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-raise-csr .nf-cmb-csr-form .nf-csr-request-buttons .btn-csr {
    width: 125px; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis .nf-cmb-section-body .apis-passenger-header .apis-passenger-dob {
    padding-left: 0rem;
    padding-right: 0rem; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis .nf-cmb-section-body .apis-passenger-header .apis-passenger-dob .apis-passenger-dob-text {
      margin-top: -1rem; }
  .nf-check-my-booking .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis .nf-cmb-section-body .apis-passenger .row .col {
    padding-left: 0rem;
    padding-right: 0rem; }
  .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item {
    width: 319px; }
    .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-corner {
      border-top: 100px solid #FFFFFF;
      border-left: 100px solid transparent; }
    .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-corner-text {
      font-size: 12px;
      height: 37px;
      top: 16px;
      right: -1px; }
    .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-item-content-wrapper {
      padding: 1rem 1rem 0rem 1rem; }
      .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-extras-carousel .nf-cmb-carousel-item .cmb-carousel-item-content-wrapper .cmb-carousel-content-footer {
        padding: 0rem 1rem 1rem 1rem; }
  .nf-check-my-booking .nf-cmb-secondary .nf-cmb-section.nf-cmb-extras .nf-cmb-section-content-wrapper .nf-cmb-section-header h2 {
    font-size: 1.5rem; }
  .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-header {
    padding: 1rem 0; }
    .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-header h4 {
      line-height: 1.4; }
  .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-body {
    padding: 0rem 0rem 1rem 0rem; }
    .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-customer {
      padding: 0rem; }
    .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-body .csr-section .csr a {
      font-size: 0.9375rem; }
    .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-hotels-section .room-details-section img {
      padding-top: 20px; }
  .nf-check-my-booking .nf-cmb-section.nf-cmb-reviews .nf-cmb-review-item .nf-cmb-review-image img {
    width: 125px;
    height: 25px; } }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .nf-cmb-primary .nf-cmb-section .nf-cmb-welcome-notification {
    padding-top: 15px;
    padding-bottom: 15px; }
  .nf-cmb-primary .nf-cmb-section .alert-nofitication {
    padding: 10px 15px; }
  .nf-cmb-primary .nf-cmb-section .nf-cmb-document-item .nf-cmb-document-heading h3 {
    font-size: 0.85rem; }
  .nf-cmb-primary .nf-cmb-section .nf-cmb-document-item .nf-cmb-document-link a {
    font-size: 0.75rem; }
  .nf-cmb-primary .nf-cmb-section.nf-cmb-reviews .nf-cmb-review-image {
    width: 125px;
    height: 25px; }
  .nf-cmb-primary .nf-cmb-section .nf-cmb-hotels-section .hotel-section, .nf-cmb-primary .nf-cmb-section .nf-cmb-hotels-section .room-section {
    padding-right: 15px; }
  .nf-cmb-primary .nf-cmb-section .nf-cmb-hotels-section .room-details-section img {
    padding-top: 65px; }
  .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis .nf-cmb-section-body .apis-passenger .apis-expiry-date-field {
    padding-right: 0rem; }
  .nf-cmb-primary .nf-cmb-section.nf-cmb-flight-apis .nf-cmb-section-body .apis-passenger .apis-nationality-field {
    padding-left: 0rem; }
  .nf-check-my-booking .choose-booking .form {
    width: 100%; }
  .nf-check-my-booking .nf-view-csr .view-csr .csr-header .subject {
    padding: 0 0.5rem 0 2rem; }
  .nf-check-my-booking .nf-view-csr .view-csr .chat-log {
    padding: 1rem 0; }
  .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-header {
    padding: 1rem 0; }
    .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-header h4 {
      line-height: 1.4; }
  .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-body {
    padding: 0rem 0rem 1rem 0rem; }
    .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-customer {
      padding: 0rem; }
    .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-body .csr-section .csr a {
      font-size: 0.9375rem; }
    .nf-check-my-booking .nf-cmb-section .nf-cmb-section-content-wrapper .nf-cmb-section-body .nf-cmb-hotels-section .room-details-section img {
      padding-top: 20px; }
  .nf-check-my-booking .nf-cmb-section.nf-cmb-reviews .nf-cmb-review-item .nf-cmb-review-image img {
    width: 125px;
    height: 25px; } }

@media only screen and (min-width: 601px) {
  .nf-check-my-booking .choose-booking &gt; .choose-booking-login {
    float: left;
    width: 60%; }
  .nf-check-my-booking .choose-booking &gt; .choose-booking-image {
    float: left;
    width: 40%; }
  .nf-check-my-booking .choose-booking .choose-booking-login {
    padding: 2.5rem; }
  .nf-check-my-booking .choose-booking .form {
    width: 70%; }
  .nf-check-my-booking .choose-booking .nf-reference-number-wrapper {
    padding-top: .5rem; }
    .nf-check-my-booking .choose-booking .nf-reference-number-wrapper .nf-reference-number {
      float: left;
      width: 60%;
      position: relative; }
    .nf-check-my-booking .choose-booking .nf-reference-number-wrapper .nf-reference-number {
      margin: 0; }
    .nf-check-my-booking .choose-booking .nf-reference-number-wrapper .nf-button {
      display: inline-block;
      float: right;
      width: 39%;
      position: relative;
      top: 3.25rem; }
    .nf-check-my-booking .choose-booking .nf-reference-number-wrapper .nf-form-field-label {
      font-size: 1rem;
      padding-bottom: 1.5rem; }
  .nf-check-my-booking .choose-booking .nf-reference-text {
    bottom: 3rem;
    margin-bottom: 0;
    width: 450px;
    position: absolute; } }

@media only screen and (min-width: 993px) {
  .nf-check-my-booking {
    min-height: 630px; }
    .nf-check-my-booking .nf-cmb-primary .nf-cmb-section {
      -webkit-box-shadow: none;
              box-shadow: none; }
    .nf-check-my-booking .choose-booking {
      display: inline-block;
      width: 100%; }
      .nf-check-my-booking .choose-booking &gt; .choose-booking-login, .nf-check-my-booking .choose-booking &gt; .choose-booking-image img {
        height: 490px; }
      .nf-check-my-booking .choose-booking &gt; .choose-booking-login {
        float: left;
        width: 60%; }
      .nf-check-my-booking .choose-booking &gt; .choose-booking-image {
        float: left;
        width: 40%;
        display: block; }
        .nf-check-my-booking .choose-booking &gt; .choose-booking-image img {
          width: 100%; }
      .nf-check-my-booking .choose-booking .form, .nf-check-my-booking .choose-booking .nf-booking-failure {
        width: 70%; }
      .nf-check-my-booking .choose-booking .nf-booking-failure {
        padding-bottom: 0.5rem; }
      .nf-check-my-booking .choose-booking .nf-reference-text {
        width: 510px; }
      .nf-check-my-booking .choose-booking .nf-reference-number .nf-form-field-label {
        padding-bottom: 0; }
      .nf-check-my-booking .choose-booking .nf-reference-number input {
        margin-top: 1.75rem; }
      .nf-check-my-booking .choose-booking .nf-button {
        top: 3.25rem; }
    .nf-check-my-booking .choose-booking.has-error &gt; choose-booking-login {
      height: 540px; }
    .nf-check-my-booking .choose-booking.has-error &gt; .choose-booking-image img {
      height: 540px; } }

@media only screen and (max-width: 1380px) {
  .nf-check-my-booking .nf-cmb-section-content-wrapper {
    margin: 0rem 1rem 1rem 1rem; }
  .nf-check-my-booking .choose-booking &gt; .choose-booking-login {
    width: 100%; }
  .nf-check-my-booking .choose-booking &gt; .choose-booking-image {
    display: none; }
  .nf-check-my-booking .nf-cmb-section.nf-csr-section .csr-badge {
    top: 20px;
    right: 0px; } }

@media only screen and (min-width: 1381px) {
  .nf-cmb-primary .nf-cmb-section .nf-cmb-logout {
    right: 16%; } }

.nf-cmb-cross-sell-hotels--tabs {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  overflow-x: auto; }

.nf-cmb-cross-sell-hotels--tabs li {
  font-size: .875rem;
  color: #FFFFFF;
  background: #2dace3;
  padding: .5rem 1rem;
  margin-right: 1px;
  margin-bottom: 1px;
  cursor: pointer;
  font-weight: bold;
  white-space: nowrap; }

.nf-cmb-cross-sell-hotels--tabs li:first-of-type {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px; }

.nf-cmb-cross-sell-hotels--tabs li:last-of-type {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px; }

.nf-cmb-cross-sell-hotels--tabs li.m--selected, .nf-cmb-cross-sell-hotels--tabs li.m--selected:hover, .nf-cmb-cross-sell-hotels--tabs li.m--selected:focus {
  color: #2dace3;
  background: #EAF7FC; }

.nf-cmb-cross-sell-secondary-banner {
  width: 19rem;
  height: 10.625rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 0.5rem 0;
  margin-right: 1rem;
  padding-top: 0;
  border-radius: 0.25rem;
  background: #FFFFFF;
  -webkit-box-shadow: 0 0 0.0625rem rgba(69, 69, 69, 0.12), 0 0 0.125rem rgba(69, 69, 69, 0.12), 0 0 0.5rem rgba(69, 69, 69, 0.12);
          box-shadow: 0 0 0.0625rem rgba(69, 69, 69, 0.12), 0 0 0.125rem rgba(69, 69, 69, 0.12), 0 0 0.5rem rgba(69, 69, 69, 0.12); }
  .nf-cmb-cross-sell-secondary-banner img {
    margin-top: 0.3rem; }

@media only screen and (min-width: 601px) {
  .nf-cmb-cross-sell-hotels--tabs {
    overflow-x: visible;
    -webkit-flex-flow: wrap;
    -ms-flex-flow: wrap;
    flex-flow: wrap; } }

@media only screen and (min-width: 1381px) {
  .nf-home .nf-carousel:after {
    content: ''; } }

@media only screen and (min-width: 993px) {
  .nf-sub-image--full {
    padding-bottom: 26%; } }

@media only screen and (max-width: 992px) {
  header nav {
    background: #2dace3; }
  .nf-multi .nf-parallax.parallax-container {
    height: 760px; }
  .nf-home .nf-parallax.parallax-container {
    height: 540px; }
  .nf-home.nf-multi .nf-parallax.parallax-container {
    height: 660px; }
  /*Holidays Page*/
  .nf-parallax.parallax-container.m--contains-ad {
    height: 660px; }
  /* USPs */
  .nf-sub-image-wrap {
    margin-bottom: 0; }
  .nf-home-logo--large {
    display: none; }
  .nf-nav-links {
    display: none; }
  .nf-other-links {
    display: inline-block;
    right: 0rem; }
    .nf-other-links .nf-opening-hours i {
      height: 56px;
      line-height: 56px; }
  /* Carousels */
  .nf-trending-primary .nf-carousel,
  .nf-popular-cities-primary .nf-carousel,
  .nf-top-airlines .nf-carousel,
  .nf-popular-countries-primary .nf-carousel,
  .nf-carousel-blocks--large .nf-carousel {
    height: 260px; }
  /* Intro header amendments */
  .nf-intro-panel h1 {
    font-size: 2.5rem;
    margin: 2rem 0 0.5rem 0; }
  .nf-intro-panel h2 {
    font-size: 1.75rem; }
    .nf-intro-panel h2 i {
      font-size: 20px; }
  .nf-flight-details-extras h3 span {
    float: none;
    display: block;
    margin-top: 0.125rem; } }

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .d-c-wrapper {
    padding-left: 0; } }

@media only screen and (min-width: 601px) {
  .nf-flight-details-baggage-options,
  .nf-flight-details-seat-plan-select,
  .nf-flight-details-seat-plan-selected {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
  .nf-flight-details-seat-plan-select {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .nf-flight-details-extras &gt; .row &gt; .col + .col {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .nf-flight-details-extras gm-flight-details-seat-plan {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 100%; } }

@media only screen and (max-width: 600px) {
  .nf-flight-deals-carousel:after {
    content: 'flickity';
    display: none;
    /* hide :after */ }
  .nf-country-name {
    display: block; }
  .nf-flight-deal .nf-flight-deal-price {
    height: auto;
    line-height: initial; }
  /* Intro Copy &amp; Image */
  .nf-sub-image-wrap {
    margin-bottom: 0; }
  .nf-home-banner--advert {
    bottom: 9.5rem; }
    .nf-home-banner--advert a {
      -webkit-transform: none;
              transform: none;
      display: block; }
    .nf-home-banner--advert img {
      display: block;
      width: 100%;
      height: auto; }
  /*  .nf-home-banner--advert img {
        display: block;
        width: 100%;
        height: auto;
    }*/
  /*Landscape Banner Ad*/
  .nf-home-landscape-banner--advert {
    overflow: hidden;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: #EEEEEE;
    padding-top: 1rem; }
    .nf-home-landscape-banner--advert img {
      width: 100%;
      max-width: 60rem;
      display: block; }
  /* Change the z-index of the header when the datepicker overlay is open to prevent layering issues and prevent body scroll */
  .nf-popup-open .navbar-fixed nav {
    z-index: 1; }
  .nf-popup-open {
    overflow: hidden; }
  .nf-home .nf-parallax.parallax-container {
    height: 800px; }
  .nf-home.nf-multi .nf-parallax.parallax-container {
    height: 980px; }
  /* Carousels */
  .nf-trending-primary .nf-carousel,
  .nf-trending-secondary .nf-carousel,
  .nf-popular-cities-primary .nf-carousel,
  .nf-home-popular--cards .nf-carousel,
  .nf-top-airlines .nf-carousel,
  .nf-popular-countries-primary .nf-carousel {
    height: 204px; }
  .nf-trending-secondary .nf-carousel,
  .nf-home-popular--cards .nf-carousel {
    height: 290px; }
  .nf-top-airlines + .nf-home-popular--cards .nf-carousel {
    height: 110px; }
  /* Destination Page Intro Amendments */
  .nf-intro-panel {
    padding: 0; }
  .nf-intro-panel h1 {
    font-size: 1.5rem;
    margin: 1.25rem 0 0.5rem 0; }
  .nf-intro-panel h2 {
    font-size: 1.125rem;
    margin: 0; }
    .nf-intro-panel h2 i {
      font-size: 14px; }
  section h2 {
    font-size: 1.5rem; }
  section .nf-sub-header {
    font-size: 1.25rem; }
  .nf-home h1 {
    font-size: 1.5rem; }
    .nf-home h1 + .nf-sub-header {
      font-size: 1.25rem; }
  .nf-parallax.parallax-container {
    height: 830px; }
  .nf-parallax.parallax-container.m--contains-ad {
    height: 850px; }
  .nf-multi .nf-parallax.parallax-container {
    height: 1050px; }
  .nf-multi .nf-parallax.parallax-container.m--contains-ad {
    height: 1080px; }
  /* Airline Page */
  .nf-popup-open .nf-datepicker .selector {
    top: 0; }
  /* Hotels, Holidays &amp; Cars Category Pages */
  .nf-carousel-blocks--large &gt; .nf-carousel {
    margin-bottom: 3rem; }
  /*Holidays Page header ad (JV Banner)*/
  .nf-banner--advert {
    bottom: 8.5rem; }
  .nf-banner--advert a {
    -webkit-transform: none;
            transform: none;
    display: block; }
  .nf-banner--advert img {
    display: block;
    width: 100%;
    height: auto; }
  /* Airline Custom HTML */
  .no-border {
    border: 0 !important; }
  /* Holiday Details Page */
  .nf-flight-details-included-hotel {
    border-bottom-color: #CFCFCF;
    font-size: 0.875rem; }
    .nf-flight-details-included-hotel .nf-flight-details-included-hotel--title {
      margin: 0.75rem 0 0.5rem;
      position: relative;
      overflow: hidden;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      font-size: 1.125rem; }
      .nf-flight-details-included-hotel .nf-flight-details-included-hotel--title &gt; span {
        font-size: 1rem; }
    .nf-flight-details-included-hotel .nf-flight-details-included-hotel--rating {
      white-space: nowrap; }
      .nf-flight-details-included-hotel .nf-flight-details-included-hotel--rating i {
        font-size: 1.25rem; }
    .nf-flight-details-included-hotel .nf-flight-details-included-hotel--details {
      width: calc(100% - 5.625rem); }
      .nf-flight-details-included-hotel .nf-flight-details-included-hotel--details .row {
        margin-bottom: 0; } }

/*# sourceMappingURL=main.css.map */

</pre></body></html>